Date: Mon, 28 Jun 2004 13:44:47 -0700 (PDT) From: Nate Lawson <nate@root.org> To: Andrew Thompson <andy@fud.org.nz> Cc: freebsd-acpi@freebsd.org Subject: Re: AE_NO_HARDWARE_RESPONSE problems Message-ID: <20040628124854.X27408@root.org> In-Reply-To: <20040628004724.GA4071@fire.masaclaw.co.nz> References: <20040628004724.GA4071@fire.masaclaw.co.nz>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 28 Jun 2004, Andrew Thompson wrote:
> On my HP Omnibook 6000 I get the following right after boot
>
> acpi_ec0: EcRead: Failed waiting for EC to send data.
> ACPI-0502: *** Error: Handler for [EmbeddedControl] returned AE_NO_HARDWARE_RESPONSE
> ACPI-1303: *** Error: Method execution failed [\\_SB_.PCI0.ISA0.EC0_._Q20] (Node 0xc1350220), AE_NO_HARDWARE_RESPONSE
> acpi_ec0: evaluation of GPE query method _Q20 failed - AE_NO_HARDWARE_RESPONSE
>
> etc... I changed the loop on line 829 of acpi_ec.c from 1000 to 10000 and
> everything seems to be working fine. Is this a valid fix or will it cause
> problems elsewhere? One issue I can see is holding Giant for this length of
> time.
>
> --- /sys/dev/acpica/acpi_ec.c Mon Jun 14 10:52:30 2004
> +++ /sys/dev/acpica/acpi_ec.c Wed Jun 23 13:00:12 2004
> @@ -826,7 +826,7 @@
> * command. First, wait up to 1 ms in chunks of sc->ec_polldelay
> * microseconds.
> */
> - for (i = 0; i < 1000 / sc->ec_polldelay; i++) {
> + for (i = 0; i < 10000 / sc->ec_polldelay; i++) {
> EcStatus = EC_GET_CSR(sc);
> if (EVENT_READY(Event, EcStatus)) {
> Status = AE_OK;
Try the code I just committed instead.
-Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040628124854.X27408>
