On 6/23/2024 3:51, Thomas Weißschuh wrote:
The value of "min_input_signal" returned from ATIF on a Framework AMD 13
is "12". This leads to a fairly bright minimum display backlight.
Add a generic quirk infrastructure for backlight configuration to
override the settings provided by the firmware.
Also add amdgpu as a user of that infrastructure and a quirk for the
Framework 13 matte panel.
Most likely this will also work for the glossy panel, but I can't test
that.
One solution would be a fixed firmware version, but given that the
problem exists since the release of the hardware, it has been known for
a month that the hardware can go lower and there was no acknowledgment
from Framework in any way, I'd like to explore this alternative
way forward.
Notes:
* Should the quirk infrastructure be part of drm_edid.c?
* The current allocation of struct drm_edid in amdgpu is bad.
But it is done the same way in other parts of amdgpu.
I do have patches migrating amdgpu to proper usage of struct drm_edid [0]
Mario:
I intentionally left out the consideration of the firmware version.
The quirk will stay correct even if the firmware starts reporting
correct values.
If there are strong opinions it would be easy to add, though.
Based on amdgpu/drm-next.
[0] https://lore.kernel.org/lkml/20240616-amdgpu-edid-bios-v1-1-2874f212b365@xxxxxxxxxxxxxx/
Thomas,
Are you doing any testing of this lower backlight value specifically
with panel power savings enabled? If not can you please check that?
Specifically write the maximum value of "4" to the sysfs file:
/sys/class/drm/card0-eDP-1/amdgpu/panel_power_savings
Thanks,
---
Changes in v2:
- Introduce proper drm backlight quirk infrastructure
- Quirk by EDID and DMI instead of only DMI
- Limit quirk to only single Framework 13 matte panel
- Link to v1: https://lore.kernel.org/r/20240610-amdgpu-min-backlight-quirk-v1-1-8459895a5b2a@xxxxxxxxxxxxxx
---
Thomas Weißschuh (3):
drm: Add panel backlight quirks
drm: panel-backlight-quirks: Add Framework 13 matte panel
drm/amd/display: Add support backlight quirks
Documentation/gpu/drm-kms-helpers.rst | 3 +
drivers/gpu/drm/Kconfig | 4 ++
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/amd/amdgpu/Kconfig | 1 +
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 28 +++++++++
drivers/gpu/drm/drm_panel_backlight_quirks.c | 76 +++++++++++++++++++++++
include/drm/drm_utils.h | 11 ++++
7 files changed, 124 insertions(+)
---
base-commit: 1ecef5589320fd56af599b624d59c355d162ac7b
change-id: 20240610-amdgpu-min-backlight-quirk-8402fd8e736a
Best regards,