http://bugzilla.kernel.org/show_bug.cgi?id=13577





--- Comment #2 from Zhang Rui <rui.zh...@intel.com>  2009-06-24 01:54:24 ---
(In reply to comment #0)
> When the DSDT detects Windows Vista (which Linux seems to pretend to be), it
> disables the WMI method and also disables direct control using the hardware
> keys, instead expecting software to react to those keypresses and control it
> using the ACPI Video device.
> 
what if you boot with acpi_osi="!Windows 2006"?

> 
> The ACPI Video Interface is broken. There are three devices supported: OVGA,
> PEGP.EVGA, and PEGP.NVGA. As far as I can tell, OVGA is supposed to be an
> integrated graphics controller that doesn't exist. EVGA and NVGA are very
> similar and I don't know which one corresponds to my laptop or how the driver
> is supposed to tell between them, but clearly one of them is the correct one
> and corresponds to the modular MXM card on the laptop.
> 
> OVGA would work except that it corresponds to a nonexistent PCI device, so
> acpi_get_physical_pci_device kills it. Hacking this out makes things work (the
> brightness setting is via the EC anyway, and works the same for all three
> devices), but that doesn't sound like a good idea.
> 
> EVGA and NVGA fail to register as video devices because they lack the _DOS
> method that ACPI specifies as required for backlight functionality. They do
> have _DOD, which isn't enough for display output switching support, but at
> least identifies them as video devices. They fail the acpi_is_video_device
> because that only checks for backlight support if one of the other three
> features is fully present. They also fail acpi_video_bus_check because that
> again wants one of the three features.
> 
> At this point I'm unsure of what the best way to fix this is. My guess would 
> be
> to make acpi_is_video_device check for brightness controls even if only _DOD 
> is
> present, and also make acpi_video_bus_check consider just _DOD good enough to
> pass a device. Then the other issue left would be the duplicated device (the
> backlight control is really messed up when it tries to do the same thing to 
> two
> different devices). Applying those two hacks and and manually unbinding one of
> the devices from the driver via sysfs makes things work for me.

hah, then this is apperantly a BIOS problem to me because _DOS is mandatory
according to the ACPI spec. But anyway, we should make it work in Linux.
what about this proposal?
1. acpi_is_video_device returns TRUE if only _DOD in found.
2. print a warning message if there is no _DOS method.
3. don't touch _DOS in ACPI video driver if it's not available.
patch will be attached later.

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.

------------------------------------------------------------------------------
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to