[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bsd-nomads:16339] Re: apmd on 5.0-DP1



In message <20020603.180513.59465004.taoka@infonets.hiroshima-u.ac.jp>, Satoshi
 TAOKA さんいわく:
>
>田岡です。
>
>最近、FIVA 206VL に 5.0-DP1 を入れたのですが、apmd が動作してくれませ
>ん。これは /dev/apmctl がないからなのですが、どうやって作れば良いので
>しょう?

static struct cdevsw usouso_cdevsw = {
	(略)
};

device_t usouso_probe(device_t dev)
{
	return 0;

}
device_t usouso_attach(device_t dev)
{
        make_dev(&usouso_cdevsw, 0, 0, 5, 0664, "apmctl");
	return 0;
}

以下略なドライバを書く:-)

#devfsで作られていなければ作る方法はありません。

>/dev は devfs になっていて、MAKEDEV を使わなくなっていることまでは調べ
>ましたが、それから先が分かりません。
>
># 最初、devfsには、驚かされました。

多分、ローダーがACPIデータ構造体を検知して、acpiドライバを勝手にロードして、
acpiドライバがapmを無効にしていると思います。そうならそこで作られている
/dev/apmはacpiドライバがエミュレートしている偽物なので
どうしてもapmdを使いたければunset acpi_loadをローダから実行し、apmを
ローダからロードしてやると良いです。

>
>やりたいことは、レジュームから復帰したときに、
>
>killall -HUP moused

こっちは何かオプション付ければ大丈夫だった筈。

>route add default 192.168.0.1
>
>を実行したいのです。

この当たりのイベント通知メカニズムがまだFreeBSDのACPIドライバには
無いという問題があります。

渡辺尊紀