Date: Wed, 13 Feb 2008 18:56:45 +0200 From: Andriy Gapon <avg@icyb.net.ua> To: Nate Lawson <nate@root.org> Cc: freebsd-acpi@freebsd.org Subject: Re: cx_lowest and CPU usage Message-ID: <47B3214D.2050507@icyb.net.ua> In-Reply-To: <47B0BF20.6020906@icyb.net.ua> References: <479F0ED4.9030709@icyb.net.ua> <479F62D9.6080703@root.org> <47A34360.2030105@icyb.net.ua> <47B0BF20.6020906@icyb.net.ua>
index | next in thread | previous in thread | raw e-mail
on 11/02/2008 23:33 Andriy Gapon said the following:
>
> Hmm, it seems that the quirk is only honored if you actually try to use
> C3 state, but it doesn't exclude the state from the available states.
> This is OK, but seems to be a little bit non-user-friendly.
>
It seems that the following code in acpi_cpu_generic_cx_probe() should
have a check for the quirk (for C3 to not be present in the available
states):
/* Validate and allocate resources for C3 (P_LVL3). */
if (AcpiGbl_FADT->Plvl3Lat <= 1000) {
gas.Address = sc->cpu_p_blk + 5;
acpi_bus_alloc_gas(sc->cpu_dev, &cx_ptr->res_type, &sc->cpu_rid, &gas,
&cx_ptr->p_lvlx, RF_SHAREABLE);
if (cx_ptr->p_lvlx != NULL) {
sc->cpu_rid++;
cx_ptr->type = ACPI_STATE_C3;
cx_ptr->trans_lat = AcpiGbl_FADT->Plvl3Lat;
cx_ptr++;
sc->cpu_cx_count++;
}
}
I will test this hypothesis tonight.
It is definite that my system goes through this routine, because DSDT
doesn't have _CST defined.
--
Andriy Gapon
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47B3214D.2050507>
