Date: Tue, 20 Mar 2007 12:26:28 +0800 From: "Rong-en Fan" <grafan@gmail.com> To: "Nate Lawson" <nate@root.org> Cc: acpi@freebsd.org, Alexandre Sunny Kovalenko <alex.kovalenko@verizon.net>, freebsd-mobile@freebsd.org Subject: Re: ThinkPad x60 and FN keys Message-ID: <6eb82e0703192126y41dd2c49n8522f58cacccdfa9@mail.gmail.com> In-Reply-To: <45FF31C2.1040107@root.org> References: <6eb82e0703161009w15787d99p51510299fa0e1e45@mail.gmail.com> <1174078831.829.11.camel@RabbitsDen> <6eb82e0703170100v572a0794q334dc34bec992685@mail.gmail.com> <20070317170959.f48f5bf6.taku@tackymt.homeip.net> <6eb82e0703170210t3d4be248w64b7cf9981880bbe@mail.gmail.com> <20070319025520.69486e29.taku@tackymt.homeip.net> <6eb82e0703181159vcd095f9k4d65a8b3231c1bf@mail.gmail.com> <45FF31C2.1040107@root.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 3/20/07, Nate Lawson <nate@root.org> wrote: > Rong-en Fan wrote: > > On 3/19/07, Taku YAMAMOTO <taku@tackymt.homeip.net> wrote: > >> On Sat, 17 Mar 2007 17:10:38 +0800 > >> Fine. > >> It's expected that brightness hotkeys aren't functional with > >> acpi_video on > >> recent ThinkPads because their BIOS stop handling of the brightness and > >> rely on OS once acpi_video gets involved. > >> > >> The acpi_video module should of cource be enhanced to handle these > >> brightness events defined in ACPI 3.0 spec. If I would have some spare > >> time... > > > > Thank you. In the mean time, could we get the patch committed? > > (I'm CC'ing Nate Lawson) > > > > BTW, if I understand you correctly, when acpi_video is loaded, fn+home/end > > will generate some events to acpi_video, but our acpi_video does not handle > > these events so the brightness are not adjusted? Is that right? > > > > Regards, > > Rong-En Fan > > > > == > > > > --- acpi_ec.c-1.69 Tue Feb 27 09:14:20 2007 > > +++ sys/dev/acpica/acpi_ec.c Tue Feb 27 14:39:52 2007 > > @@ -825,6 +825,11 @@ EcGpeHandler(void *Context) > > CTR1(KTR_ACPI, "ec event was IBE/OBF, status %#x", EcStatus); > > sc->ec_csrvalue = EcStatus; > > wakeup(&sc->ec_csrvalue); > > + if (!sc->ec_sci_pend) { > > + Status = AcpiEnableGpe(sc->ec_gpehandle, sc->ec_gpebit, ACPI_ISR); > > + if (ACPI_FAILURE(Status)) > > + printf("EcGpeHandler: AcpiEnableEvent failed\n"); > > + } > > } else if (!sc->ec_sci_pend) { > > /* SCI bit set and no pending query handler, so schedule one. */ > > CTR0(KTR_ACPI, "ec queueing gpe handler"); > > Crap, that is a bug. In the path where the event was an SCI, we now no > longer re-enable the GPE. Thanks for pointing this out. > > I've committed a fix in rev 1.71. See if it helps. Yes. It works. Thank you! Regards, Rong-En Fan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6eb82e0703192126y41dd2c49n8522f58cacccdfa9>