* What is the proper way to address the problem of backlight with two video cards?
@ 2017-04-18 12:26 Dmitry Frank
0 siblings, 0 replies; only message in thread
From: Dmitry Frank @ 2017-04-18 12:26 UTC (permalink / raw)
To: Zhang Rui; +Cc: Rafael J. Wysocki, Len Brown, linux-acpi
On my laptop Thinkpad T520, I have the following problem: when I suspend it
and then resume back, the backlight brightness always gets reset to the
maximum value, independently of the value I had before suspending it.
I tracked this issue down to the following:
Thinkpad T520 has two video cards: Intel i915 and Nvidia GF119M.
Attributes (as in struct acpi_video_device_attrib) for Intel are: 0x80010400
(LCD, bios_can_detect: 1)
Attributes for Nvidia are: 0x110. So, there's no device_id_scheme bit, and
thus acpi_video_bus_get_one_device() falls back to the legacy ID detection,
and sets it as LCD.
The main problem is that executing _BCM on either of those two cards affects
the laptop's LCD panel in the same way. They appear to the kernel as two
separate cards (and they are indeed).
When I adjust the brightness, only that of Intel card is recorded. But during
the resume, acpi_video_resume() calls acpi_video_device_lcd_set_level() for
both cards, and Nvidia happens to be the second one, so its brightness "wins".
Fwiw, I do not use proprietary nvidia drivers.
At this point I'm unsure of what's the right way to solve that. Since Nvidia
Optimus allows two cards to work simultaneously (for different applications),
it does not make sense to check which card is "active", since both of them can
be active. But, is there some way to check that two video adapters control the
same physical LCD panel? So far I failed to find one: these acpi_video_device-s
don't share anything, e.g. each of them has its own struct
acpi_video_device_brightness and struct backlight_device.
If anyone has some idea, please share.
Thanks!
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-04-18 12:31 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-18 12:26 What is the proper way to address the problem of backlight with two video cards? Dmitry Frank
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox