dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/31] drm/kms: Stop registering multiple /sys/class/backlight devs for a single display
@ 2022-08-25 14:36 Hans de Goede
  2022-08-25 14:36 ` [PATCH v5 01/31] ACPI: video: Add acpi_video_backlight_use_native() helper Hans de Goede
                   ` (30 more replies)
  0 siblings, 31 replies; 59+ messages in thread
From: Hans de Goede @ 2022-08-25 14:36 UTC (permalink / raw)
  To: Ben Skeggs, Karol Herbst, Lyude, Daniel Dadap, Maarten Lankhorst,
	Maxime Ripard, Thomas Zimmermann, Jani Nikula, Joonas Lahtinen,
	Rodrigo Vivi, Tvrtko Ursulin, Alex Deucher, Christian König,
	Pan, Xinhui, Rafael J . Wysocki, Mika Westerberg, Lukas Wunner,
	Mark Gross, Andy Shevchenko
  Cc: linux-acpi, nouveau, intel-gfx, dri-devel, platform-driver-x86,
	Hans de Goede, amd-gfx, David Airlie, Len Brown

Hi All,

As mentioned in my RFC titled "drm/kms: control display brightness through
drm_connector properties":
https://lore.kernel.org/dri-devel/0d188965-d809-81b5-74ce-7d30c49fee2d@redhat.com/

The first step towards this is to deal with some existing technical debt
in backlight handling on x86/ACPI boards, specifically we need to stop
registering multiple /sys/class/backlight devs for a single display.

This series implements my RFC describing my plan for these cleanups:
https://lore.kernel.org/dri-devel/98519ba0-7f18-201a-ea34-652f50343158@redhat.com/

Changes in version 5:
- Use drm_info(drm_dev, ...) in patch 2/31
- Modify "drm/i915: Call acpi_video_register_backlight()", dropping
  the global has_panel flag, replacing it with a new
  intel_acpi_video_register() helper

Changes in version 4:
- Minor tweaks to nvidia-wmi-ec-backlight changes
- Add nouveau_acpi_* wrappers around used include/acpi/video.h functions to
  fix unresolved symbol errors on non X86

Changes in version 3:
- ACPI_VIDEO can now be enabled on non X86 too, adjust various Kconfig changes
- Make the delay before doing fallback acpi_video backlight registration
  a module option (patch 9)
- Move the nvidia-wmi-ec-backlight fw API definitions to a shared header
- Add a "acpi_video_get_backlight_type() == acpi_backlight_nvidia_wmi_ec"
  check to the nvidia-wmi-ec-backlight driver (patch 19)

Changes in version 2:
- Introduce acpi_video_backlight_use_native() helper
- Finishes the refactoring, addressing all the bits from the "Other issues"
  section of the refactor RFC

This series as submitted is based on drm-tip for CI purposes.

Assuming the last i915 patch also pass review now, I hope to push
out an immutable branch with this series on top of v6.0-rc1 and
send out a pull-request to all involved subsystems based on
this branch soon.

Regards,

Hans


Hans de Goede (31):
  ACPI: video: Add acpi_video_backlight_use_native() helper
  drm/i915: Don't register backlight when another backlight should be
    used (v2)
  drm/amdgpu: Don't register backlight when another backlight should be
    used (v3)
  drm/radeon: Don't register backlight when another backlight should be
    used (v3)
  drm/nouveau: Don't register backlight when another backlight should be
    used (v2)
  ACPI: video: Drop backlight_device_get_by_type() call from
    acpi_video_get_backlight_type()
  ACPI: video: Remove acpi_video_bus from list before tearing it down
  ACPI: video: Simplify acpi_video_unregister_backlight()
  ACPI: video: Make backlight class device registration a separate step
    (v2)
  ACPI: video: Remove code to unregister acpi_video backlight when a
    native backlight registers
  drm/i915: Call acpi_video_register_backlight() (v3)
  drm/nouveau: Register ACPI video backlight when nv_backlight
    registration fails (v2)
  drm/amdgpu: Register ACPI video backlight when skipping amdgpu
    backlight registration
  drm/radeon: Register ACPI video backlight when skipping radeon
    backlight registration
  platform/x86: nvidia-wmi-ec-backlight: Move fw interface definitions
    to a header (v2)
  ACPI: video: Refactor acpi_video_get_backlight_type() a bit
  ACPI: video: Add Nvidia WMI EC brightness control detection (v3)
  ACPI: video: Add Apple GMUX brightness control detection
  platform/x86: nvidia-wmi-ec-backlight: Use
    acpi_video_get_backlight_type()
  platform/x86: apple-gmux: Stop calling acpi/video.h functions
  platform/x86: toshiba_acpi: Stop using
    acpi_video_set_dmi_backlight_type()
  platform/x86: acer-wmi: Move backlight DMI quirks to
    acpi/video_detect.c
  platform/x86: asus-wmi: Drop DMI chassis-type check from backlight
    handling
  platform/x86: asus-wmi: Move acpi_backlight=vendor quirks to ACPI
    video_detect.c
  platform/x86: asus-wmi: Move acpi_backlight=native quirks to ACPI
    video_detect.c
  platform/x86: samsung-laptop: Move acpi_backlight=[vendor|native]
    quirks to ACPI video_detect.c
  ACPI: video: Remove acpi_video_set_dmi_backlight_type()
  ACPI: video: Drop "Samsung X360" acpi_backlight=native quirk
  ACPI: video: Drop NL5x?U, PF4NU1F and PF5?U?? acpi_backlight=native
    quirks
  ACPI: video: Fix indentation of video_detect_dmi_table[] entries
  drm/todo: Add entry about dealing with brightness control on devices
    with > 1 panel

 Documentation/gpu/todo.rst                    |  68 +++
 MAINTAINERS                                   |   1 +
 drivers/acpi/Kconfig                          |   1 +
 drivers/acpi/acpi_video.c                     |  64 ++-
 drivers/acpi/video_detect.c                   | 428 +++++++++++-------
 drivers/gpu/drm/Kconfig                       |  14 +
 .../gpu/drm/amd/amdgpu/atombios_encoders.c    |  14 +-
 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |   9 +
 drivers/gpu/drm/gma500/Kconfig                |   2 +
 drivers/gpu/drm/i915/Kconfig                  |   2 +
 drivers/gpu/drm/i915/display/intel_acpi.c     |  27 ++
 drivers/gpu/drm/i915/display/intel_acpi.h     |   3 +
 .../gpu/drm/i915/display/intel_backlight.c    |   7 +
 drivers/gpu/drm/i915/display/intel_display.c  |   2 +-
 drivers/gpu/drm/nouveau/nouveau_acpi.c        |  10 +
 drivers/gpu/drm/nouveau/nouveau_acpi.h        |   4 +
 drivers/gpu/drm/nouveau/nouveau_backlight.c   |  13 +
 drivers/gpu/drm/radeon/atombios_encoders.c    |   7 +
 drivers/gpu/drm/radeon/radeon_encoders.c      |  11 +-
 .../gpu/drm/radeon/radeon_legacy_encoders.c   |   7 +
 drivers/platform/x86/Kconfig                  |   1 +
 drivers/platform/x86/acer-wmi.c               |  66 ---
 drivers/platform/x86/apple-gmux.c             |   3 -
 drivers/platform/x86/asus-nb-wmi.c            |  21 -
 drivers/platform/x86/asus-wmi.c               |  13 -
 drivers/platform/x86/asus-wmi.h               |   2 -
 drivers/platform/x86/eeepc-wmi.c              |  25 +-
 .../platform/x86/nvidia-wmi-ec-backlight.c    |  82 +---
 drivers/platform/x86/samsung-laptop.c         |  87 ----
 drivers/platform/x86/toshiba_acpi.c           |  16 -
 include/acpi/video.h                          |   9 +-
 .../x86/nvidia-wmi-ec-backlight.h             |  76 ++++
 32 files changed, 588 insertions(+), 507 deletions(-)
 create mode 100644 include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h

-- 
2.37.2


^ permalink raw reply	[flat|nested] 59+ messages in thread

end of thread, other threads:[~2022-11-04 16:23 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-25 14:36 [PATCH v5 00/31] drm/kms: Stop registering multiple /sys/class/backlight devs for a single display Hans de Goede
2022-08-25 14:36 ` [PATCH v5 01/31] ACPI: video: Add acpi_video_backlight_use_native() helper Hans de Goede
2022-08-25 14:36 ` [PATCH v5 02/31] drm/i915: Don't register backlight when another backlight should be used (v2) Hans de Goede
2022-09-25 23:39   ` Dmitry Osipenko
2022-09-27 11:04     ` Hans de Goede
2022-10-24 20:30       ` Matthew Garrett
2022-10-25 18:50         ` Hans de Goede
2022-10-25 19:32           ` Matthew Garrett
2022-10-25 20:25             ` Hans de Goede
2022-10-25 20:31               ` Limonciello, Mario
2022-10-25 20:32               ` Hans de Goede
2022-10-25 20:40               ` Matthew Garrett
2022-10-25 23:27                 ` Hans de Goede
2022-10-25 23:40                   ` Matthew Garrett
2022-10-26  9:59                     ` Hans de Goede
2022-10-26 20:49                       ` Matthew Garrett
2022-10-27  8:51                         ` Hans de Goede
2022-10-27  9:11                           ` Matthew Garrett
2022-10-27  9:39                             ` Hans de Goede
2022-10-27  9:52                               ` Matthew Garrett
2022-10-27 10:37                                 ` Hans de Goede
2022-10-27 12:09                                   ` Rafael J. Wysocki
2022-10-27 12:17                                     ` Hans de Goede
2022-10-27 12:19                                       ` Rafael J. Wysocki
2022-11-04 16:23                                     ` Hans de Goede
2022-08-25 14:36 ` [PATCH v5 03/31] drm/amdgpu: Don't register backlight when another backlight should be used (v3) Hans de Goede
2022-08-25 14:36 ` [PATCH v5 04/31] drm/radeon: " Hans de Goede
2022-08-25 14:37 ` [PATCH v5 05/31] drm/nouveau: Don't register backlight when another backlight should be used (v2) Hans de Goede
2022-08-25 14:37 ` [PATCH v5 06/31] ACPI: video: Drop backlight_device_get_by_type() call from acpi_video_get_backlight_type() Hans de Goede
2022-08-25 14:37 ` [PATCH v5 07/31] ACPI: video: Remove acpi_video_bus from list before tearing it down Hans de Goede
2022-08-25 14:37 ` [PATCH v5 08/31] ACPI: video: Simplify acpi_video_unregister_backlight() Hans de Goede
2022-08-25 14:37 ` [PATCH v5 09/31] ACPI: video: Make backlight class device registration a separate step (v2) Hans de Goede
2022-08-25 14:37 ` [PATCH v5 10/31] ACPI: video: Remove code to unregister acpi_video backlight when a native backlight registers Hans de Goede
2022-08-25 14:37 ` [PATCH v5 11/31] drm/i915: Call acpi_video_register_backlight() (v3) Hans de Goede
2022-09-02 13:20   ` Jani Nikula
2022-08-25 14:37 ` [PATCH v5 12/31] drm/nouveau: Register ACPI video backlight when nv_backlight registration fails (v2) Hans de Goede
2022-08-25 14:37 ` [PATCH v5 13/31] drm/amdgpu: Register ACPI video backlight when skipping amdgpu backlight registration Hans de Goede
2022-08-25 14:37 ` [PATCH v5 14/31] drm/radeon: Register ACPI video backlight when skipping radeon " Hans de Goede
2022-08-25 14:37 ` [PATCH v5 15/31] platform/x86: nvidia-wmi-ec-backlight: Move fw interface definitions to a header (v2) Hans de Goede
2022-08-25 22:11   ` Daniel Dadap
2022-08-25 14:37 ` [PATCH v5 16/31] ACPI: video: Refactor acpi_video_get_backlight_type() a bit Hans de Goede
2022-08-25 14:37 ` [PATCH v5 17/31] ACPI: video: Add Nvidia WMI EC brightness control detection (v3) Hans de Goede
2022-08-25 22:21   ` Daniel Dadap
2022-08-29 11:41     ` Hans de Goede
2022-08-29 16:43       ` Daniel Dadap
2022-08-25 14:37 ` [PATCH v5 18/31] ACPI: video: Add Apple GMUX brightness control detection Hans de Goede
2022-08-25 14:37 ` [PATCH v5 19/31] platform/x86: nvidia-wmi-ec-backlight: Use acpi_video_get_backlight_type() Hans de Goede
2022-08-25 14:37 ` [PATCH v5 20/31] platform/x86: apple-gmux: Stop calling acpi/video.h functions Hans de Goede
2022-08-25 14:37 ` [PATCH v5 21/31] platform/x86: toshiba_acpi: Stop using acpi_video_set_dmi_backlight_type() Hans de Goede
2022-08-25 14:37 ` [PATCH v5 22/31] platform/x86: acer-wmi: Move backlight DMI quirks to acpi/video_detect.c Hans de Goede
2022-08-25 14:37 ` [PATCH v5 23/31] platform/x86: asus-wmi: Drop DMI chassis-type check from backlight handling Hans de Goede
2022-08-25 14:37 ` [PATCH v5 24/31] platform/x86: asus-wmi: Move acpi_backlight=vendor quirks to ACPI video_detect.c Hans de Goede
2022-08-25 14:37 ` [PATCH v5 25/31] platform/x86: asus-wmi: Move acpi_backlight=native " Hans de Goede
2022-08-25 14:37 ` [PATCH v5 26/31] platform/x86: samsung-laptop: Move acpi_backlight=[vendor|native] " Hans de Goede
2022-08-25 14:37 ` [PATCH v5 27/31] ACPI: video: Remove acpi_video_set_dmi_backlight_type() Hans de Goede
2022-08-25 14:37 ` [PATCH v5 28/31] ACPI: video: Drop "Samsung X360" acpi_backlight=native quirk Hans de Goede
2022-08-25 14:37 ` [PATCH v5 29/31] ACPI: video: Drop NL5x?U, PF4NU1F and PF5?U?? acpi_backlight=native quirks Hans de Goede
2022-08-25 14:37 ` [PATCH v5 30/31] ACPI: video: Fix indentation of video_detect_dmi_table[] entries Hans de Goede
2022-08-25 14:37 ` [PATCH v5 31/31] drm/todo: Add entry about dealing with brightness control on devices with > 1 panel Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).