Re: [PATCH] Add Intel ACPI IGD OpRegion support

Matthew Garrett
2008-08-06T06:34:47Z

On Tue, Aug 05, 2008 at 11:32:48PM -0300, Henrique de Moraes Holschuh wrote:
> On Wed, 06 Aug 2008, Matthew Garrett wrote:
> > The 750ms delay is from thinkpad-acpi. I sent a patch to Henrique which
> > makes it go away, but I'm not entirely sure what the ACPI method
> > concerned is supposed to be doing. The opregion code won't currently run
> > until X is started because the drm layer requires X to be the foreground
> > vt before handling IRQs.
>
> Well, for what is it worth, thinkpad-acpi has a knob (brightness_mode) which
> can be used. Set it to CMOS mode (see docs). From what I recall, it should
> do what your patch does.

It doesn't seem to, no. I should have been clearer - the delay is in the
DSDT (not thinkpad-acpi itself), but there's a Thinkpad-specific ACPI
call that seems to be needed in order to delay it. Here's the patch
again.

diff --git a/drivers/misc/thinkpad_acpi.c b/drivers/misc/thinkpad_acpi.c
index b596929..bbc45c8 100644
--- a/drivers/misc/thinkpad_acpi.c
+++ b/drivers/misc/thinkpad_acpi.c
@@ -899,6 +899,9 @@ static int __init tpacpi_check_std_acpi_brightness_support(void)

if (ACPI_SUCCESS(status) && bcl_levels > 2) {
tp_features.bright_acpimode = 1;
+ /* Set ACPI mode */
+ if (!acpi_evalf(hkey_handle, NULL, "PWMS", "vd", 0))
+ printk(TPACPI_INFO "Failed to claim backlight\n");
return (bcl_levels - 2);
}

--
Matthew Garrett | mjg59@srcf.ucam.org