dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/31] drm/kms: Stop registering multiple /sys/class/backlight devs for a single display
@ 2022-08-18 18:42 Hans de Goede
  2022-08-18 18:42 ` [PATCH v3 01/31] ACPI: video: Add acpi_video_backlight_use_native() helper Hans de Goede
                   ` (30 more replies)
  0 siblings, 31 replies; 38+ messages in thread
From: Hans de Goede @ 2022-08-18 18:42 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, David Airlie, nouveau, intel-gfx, dri-devel,
	platform-driver-x86, Hans de Goede, amd-gfx, 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 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

The i915 patches (patch 2 and 12 still need a review/ack), all the
other patches have already been acked. This series as submitted is
based on drm-tip for CI purposes. I also have an immutable branch
based on 6.0-rc1 with these same patches available here:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=backlight-detect-refactor-v3
assuming the i915 patches also pass review I hope to 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
  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
  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() (v2)
  drm/nouveau: Register ACPI video backlight when nv_backlight
    registration fails
  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
  ACPI: video: Refactor acpi_video_get_backlight_type() a bit
  ACPI: video: Add Nvidia WMI EC brightness control detection (v2)
  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 +
 .../gpu/drm/i915/display/intel_backlight.c    |   7 +
 drivers/gpu/drm/i915/display/intel_display.c  |   8 +
 drivers/gpu/drm/i915/display/intel_panel.c    |   3 +
 drivers/gpu/drm/i915/i915_drv.h               |   2 +
 drivers/gpu/drm/nouveau/nouveau_backlight.c   |  14 +
 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    |  80 +---
 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             |  70 +++
 30 files changed, 551 insertions(+), 504 deletions(-)
 create mode 100644 include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h

-- 
2.37.2


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

end of thread, other threads:[~2022-08-24 19:13 UTC | newest]

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