Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Feb 1999 14:02:06 -0700
From:      Warner Losh <imp@village.org>
To:        Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org>
Cc:        Valentin Shopov <valsho@yahoo.com>, mobile@FreeBSD.ORG, Nate Williams <nate@mt.sri.com>
Subject:   Re: apm & current 
Message-ID:  <199902142102.OAA32088@harmony.village.org>
In-Reply-To: Your message of "Mon, 15 Feb 1999 01:43:35 %2B0900." <199902141646.BAA21353@tasogare.imasy.or.jp> 
References:  <199902141646.BAA21353@tasogare.imasy.or.jp>  <19990213153958.2977.rocketmail@send1e.yahoomail.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <199902141646.BAA21353@tasogare.imasy.or.jp> Mitsuru IWASAKI writes:
: I already noticed that this problem happens on some old laptops which has 
: apm v1.1 or 1.0 (Sotec WinBookPro DX4/100, DEC HiNote Ultra II, etc.).
: -current/-stable apm(8) try to call APM v1.2 BIOS functions 
: (e.g. APM_RESUMETIMER) without version checking.
: Some of the old APM BIOSes, however, can make kernel panic when recieved 
: unkown APM BIOS functions.
: In /sys/i386/apm/apm.c, apm_get_info() has the same problem 
: (APM_GETCAPABILITIES), therefore xbatt also will cause the same trouble.
: 
: So, now I'm going to commit version checking code just before 
: calling apm_bios_call() in /sys/i386/apm/apm.c into PAO3 CVS repository.

These patches look basically good.  I'll integrate them when I have a
chance.

: Adding to this, I noticed many other problems in apm code, such as
: - Fixed segment description for APM.  The limit granularity should be 
:   specified in bytes, not pages.

This looks good.

: - Try to limit the number of apm_bios_call() executing to only one 
:   at the same time, watching busy state made by previous call and 
:   waiting if necessary.

I wonder how this can happen, but it couldn't hurt.

: - Made apm_suspend() and apm_standby() be invoked by apm_timeout() in order to 
:   obtain stablities.

What stabilities are these?  I'm curious.

: - Added adjustment for segment size limits informed by APM BIOS.  Following 
:   patch for apm_init.S and make in /sys/i386/apm/apm_init/ to generate 
:   apm_init.inc are required if VM86 isn't enabled in your kernel.

These look good to me.

I'll also have to take a look at the PAO3 CVS tree...

Warner

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-mobile" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199902142102.OAA32088>