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

[plamo:09267] Re: APM on PC9821Nr13D10



----+----1----+----2----+----3----+----4----+----5----+----6----+----7
こんばんは。2週間ほど前にこちらで質問させて頂いた柘植と申します。
進展がありましたので御報告させて頂きます。

> どうやら素のままではサポートされていない様子です。そこで、
> CONFIG_APM=y として、(下位の項目はいくつかの組合せを試してみました)
> カーネルの再構築を試みましたら、make の際に下記のエラーメッセージが
> 表示されて、うまくいきませんでした。
(中略)
> arch/i386/kernel/kernel.o: In function `apm_power_off':
> arch/i386/kernel/kernel.o(.text+0x280): undefined reference to `machine_real_restart'
> make: *** [vmlinux] エラー 1

linux/98 MLのメンバーのかたに教えて頂いて、このエラーは、多分、
Real mode用のコードが PC/AT 互換機用のままであるのに、
CONFIG_APM_REAL_MODE_POWER_OFF=y
が設定されていた(私が自分で設定したんですけど)ために起こったの
ではないかということがわかりました。

そこで、linux/98 kernel 2.2.16 のソースを、
CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
CONFIG_APM_DO_ENABLE=y
CONFIG_APM_CPU_IDLE=y
CONFIG_APM_DISPLAY_BLANK=y
# CONFIG_APM_IGNORE_SUSPEND_BOUNCE is not set
# CONFIG_APM_RTC_IS_GMT is not set
# CONFIG_APM_ALLOW_INTS is not set
# CONFIG_APM_REAL_MODE_POWER_OFF is not set     <=====!!!
という設定でmakeしましたら、エラーは出ませんでした。

次にこのカーネルで起動してみましたら、特にカーネルオプションを渡さず
ともshutdown -h nowで電源まで切れるようになりました。
また、apm -sでサスペンドはできますが、レジューム時にresume failureに
なります。

ちなみに、今はこんな風になっています。
% apm -v
APM BIOS 1.17 (kernel driver 1.13)
AC on-line, battery status high: 97%
% cat /proc/apm
1.13 1.17 0x07 0x01 0x00 0x01 97% -1 ?

そしてカーネル2.2.14のときは、
# dmesg | grep apm
apm: BIOS version 1.18 Flags 0x07 (Driver version 1.9)
apm: get_event: Interface not engaged
# cat /proc/apm
1.9 1.18 0x07 0xff 0xff 0xff -1% -1 ?
でした。
-- 
柘植昭秀(Tsuge Akihide) buchs@ruby.plala.or.jp

References
[plamo:09311] PC9821Nr13D10 de Plamo-2.1, yoneda

[検索ページ] [メール一覧]
Plamo ML 公開システム