apm problem
Nate Lawson
nate at root.org
Wed Jun 23 21:01:04 GMT 2004
On Fri, 23 Jun 2000, Liam J. Foy wrote:
> On Wed, 23 Jun 2004 12:40:40 -0700 (PDT)
> We decided to go with -1. The apm.c patch currently will not apply due to
> the re-structure of apm. The following patch will:
>
> http://liamfoy.kerneled.org/apm.diff
Ok, good. That should help Warner.
> After more digging, apm -l should return 255(stated in man page and acpi spec).
> The following patch will make it work:
>
> --- /usr/src/sys/dev/acpica/acpi_cmbat.c Tue Jun 22 16:40:35 2004
> +++ /hd2/acpi_cmbat.c Tue Jun 22 17:02:18 2004
> @@ -449,7 +449,7 @@
> static int bat_units = 0;
> static struct acpi_cmbat_softc **bat = NULL;
>
> - cap = min = -1;
> + cap = min = 255;
> batt_stat = ACPI_BATT_STAT_NOT_PRESENT;
> error = 0;
>
> @@ -545,7 +545,7 @@
>
> /* Battery life */
> if (valid_units == 0) {
> - cap = -1;
> + cap = 255;
> batt_stat = ACPI_BATT_STAT_NOT_PRESENT;
> } else {
> cap = total_cap / valid_units;
> @@ -649,7 +649,7 @@
> }
>
> if (!sc->present) {
> - battinfo->cap = -1;
> + battinfo->cap = 255;
> battinfo->min = -1;
> battinfo->state = ACPI_BATT_STAT_NOT_PRESENT;
> } else {
I disagree with this. Capacity and time remaining are both quantities
represented by ints that we calculate. The man page should be updated if
it's incorrect.
-Nate
More information about the freebsd-acpi
mailing list