From: Hans de Goede <hdegoede@redhat.com>
To: "Daniel Dadap" <ddadap@nvidia.com>,
"Ben Skeggs" <bskeggs@redhat.com>,
"Karol Herbst" <kherbst@redhat.com>, Lyude <lyude@redhat.com>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Thomas Zimmermann" <tzimmermann@suse.de>,
"Jani Nikula" <jani.nikula@linux.intel.com>,
"Joonas Lahtinen" <joonas.lahtinen@linux.intel.com>,
"Rodrigo Vivi" <rodrigo.vivi@intel.com>,
"Tvrtko Ursulin" <tvrtko.ursulin@linux.intel.com>,
"Alex Deucher" <alexander.deucher@amd.com>,
"Christian König" <christian.koenig@amd.com>,
Xinhui <Xinhui.Pan@amd.com>,
"Rafael J . Wysocki" <rafael@kernel.org>,
"Mika Westerberg" <mika.westerberg@linux.intel.com>,
"Lukas Wunner" <lukas@wunner.de>,
"Mark Gross" <markgross@kernel.org>,
"Andy Shevchenko" <andy@kernel.org>
Cc: nouveau@lists.freedesktop.org, Daniel Vetter <daniel@ffwll.ch>,
David Airlie <airlied@linux.ie>,
intel-gfx <intel-gfx@lists.freedesktop.org>,
dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org,
Len Brown <lenb@kernel.org>,
linux-acpi@vger.kernel.org, platform-driver-x86@vger.kernel.org
Subject: Re: [PATCH v3 15/31] platform/x86: nvidia-wmi-ec-backlight: Move fw interface definitions to a header
Date: Fri, 19 Aug 2022 12:05:30 +0200 [thread overview]
Message-ID: <d5767b2e-a20f-43ca-61d7-6ea577b31188@redhat.com> (raw)
In-Reply-To: <12cc48c5-b54f-1eb7-c268-beb98bce2a5d@nvidia.com>
Hi,
On 8/18/22 21:38, Daniel Dadap wrote:
>
> On 8/18/22 1:42 PM, Hans de Goede wrote:
>> Move the WMI interface definitions to a header, so that the definitions
>> can be shared with drivers/acpi/video_detect.c .
>>
>> Suggested-by: Daniel Dadap <ddadap@nvidia.com>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>> MAINTAINERS | 1 +
>> .../platform/x86/nvidia-wmi-ec-backlight.c | 66 +----------------
>> .../x86/nvidia-wmi-ec-backlight.h | 70 +++++++++++++++++++
>> 3 files changed, 72 insertions(+), 65 deletions(-)
>> create mode 100644 include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 8a5012ba6ff9..8d59c6e9b4db 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -14526,6 +14526,7 @@ M: Daniel Dadap <ddadap@nvidia.com>
>> L: platform-driver-x86@vger.kernel.org
>> S: Supported
>> F: drivers/platform/x86/nvidia-wmi-ec-backlight.c
>> +F: include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h
>> NVM EXPRESS DRIVER
>> M: Keith Busch <kbusch@kernel.org>
>> diff --git a/drivers/platform/x86/nvidia-wmi-ec-backlight.c b/drivers/platform/x86/nvidia-wmi-ec-backlight.c
>> index 61e37194df70..e84e1d629b14 100644
>> --- a/drivers/platform/x86/nvidia-wmi-ec-backlight.c
>> +++ b/drivers/platform/x86/nvidia-wmi-ec-backlight.c
>> @@ -7,74 +7,10 @@
>> #include <linux/backlight.h>
>> #include <linux/mod_devicetable.h>
>> #include <linux/module.h>
>> +#include <linux/platform_data/x86/nvidia-wmi-ec-backlight.h>
>> #include <linux/types.h>
>> #include <linux/wmi.h>
>> -/**
>> - * enum wmi_brightness_method - WMI method IDs
>> - * @WMI_BRIGHTNESS_METHOD_LEVEL: Get/Set EC brightness level status
>> - * @WMI_BRIGHTNESS_METHOD_SOURCE: Get/Set EC Brightness Source
>> - */
>> -enum wmi_brightness_method {
>> - WMI_BRIGHTNESS_METHOD_LEVEL = 1,
>> - WMI_BRIGHTNESS_METHOD_SOURCE = 2,
>> - WMI_BRIGHTNESS_METHOD_MAX
>> -};
>> -
>> -/**
>> - * enum wmi_brightness_mode - Operation mode for WMI-wrapped method
>> - * @WMI_BRIGHTNESS_MODE_GET: Get the current brightness level/source.
>> - * @WMI_BRIGHTNESS_MODE_SET: Set the brightness level.
>> - * @WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL: Get the maximum brightness level. This
>> - * is only valid when the WMI method is
>> - * %WMI_BRIGHTNESS_METHOD_LEVEL.
>> - */
>> -enum wmi_brightness_mode {
>> - WMI_BRIGHTNESS_MODE_GET = 0,
>> - WMI_BRIGHTNESS_MODE_SET = 1,
>> - WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL = 2,
>> - WMI_BRIGHTNESS_MODE_MAX
>> -};
>> -
>> -/**
>> - * enum wmi_brightness_source - Backlight brightness control source selection
>> - * @WMI_BRIGHTNESS_SOURCE_GPU: Backlight brightness is controlled by the GPU.
>> - * @WMI_BRIGHTNESS_SOURCE_EC: Backlight brightness is controlled by the
>> - * system's Embedded Controller (EC).
>> - * @WMI_BRIGHTNESS_SOURCE_AUX: Backlight brightness is controlled over the
>> - * DisplayPort AUX channel.
>> - */
>> -enum wmi_brightness_source {
>> - WMI_BRIGHTNESS_SOURCE_GPU = 1,
>> - WMI_BRIGHTNESS_SOURCE_EC = 2,
>> - WMI_BRIGHTNESS_SOURCE_AUX = 3,
>> - WMI_BRIGHTNESS_SOURCE_MAX
>> -};
>> -
>> -/**
>> - * struct wmi_brightness_args - arguments for the WMI-wrapped ACPI method
>> - * @mode: Pass in an &enum wmi_brightness_mode value to select between
>> - * getting or setting a value.
>> - * @val: In parameter for value to set when using %WMI_BRIGHTNESS_MODE_SET
>> - * mode. Not used in conjunction with %WMI_BRIGHTNESS_MODE_GET or
>> - * %WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL mode.
>> - * @ret: Out parameter returning retrieved value when operating in
>> - * %WMI_BRIGHTNESS_MODE_GET or %WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL
>> - * mode. Not used in %WMI_BRIGHTNESS_MODE_SET mode.
>> - * @ignored: Padding; not used. The ACPI method expects a 24 byte params struct.
>> - *
>> - * This is the parameters structure for the WmiBrightnessNotify ACPI method as
>> - * wrapped by WMI. The value passed in to @val or returned by @ret will be a
>> - * brightness value when the WMI method ID is %WMI_BRIGHTNESS_METHOD_LEVEL, or
>> - * an &enum wmi_brightness_source value with %WMI_BRIGHTNESS_METHOD_SOURCE.
>> - */
>> -struct wmi_brightness_args {
>> - u32 mode;
>> - u32 val;
>> - u32 ret;
>> - u32 ignored[3];
>> -};
>> -
>> /**
>> * wmi_brightness_notify() - helper function for calling WMI-wrapped ACPI method
>> * @w: Pointer to the struct wmi_device identified by %WMI_BRIGHTNESS_GUID
>> diff --git a/include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h b/include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h
>> new file mode 100644
>> index 000000000000..d83104c6c6cb
>> --- /dev/null
>> +++ b/include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h
>> @@ -0,0 +1,70 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>
>
> Should the copyright notice from nvidia-wmi-ec-backlight be copied here as well?
Ah right, I forgot that. I'll fix that for version 4 of the series.
I'll also make the GUID a #define for version 4 of the series as
you mentioned in one of your other remarks.
>> +#ifndef __PLATFORM_DATA_X86_NVIDIA_WMI_EC_BACKLIGHT_H
>> +#define __PLATFORM_DATA_X86_NVIDIA_WMI_EC_BACKLIGHT_H
>> +
>> +/**
>> + * enum wmi_brightness_method - WMI method IDs
>> + * @WMI_BRIGHTNESS_METHOD_LEVEL: Get/Set EC brightness level status
>> + * @WMI_BRIGHTNESS_METHOD_SOURCE: Get/Set EC Brightness Source
>> + */
>> +enum wmi_brightness_method {
>> + WMI_BRIGHTNESS_METHOD_LEVEL = 1,
>> + WMI_BRIGHTNESS_METHOD_SOURCE = 2,
>> + WMI_BRIGHTNESS_METHOD_MAX
>> +};
>
>
> It might be nice, but certainly not essential, to namespace these better, now that they're no longer internal to the EC backlight driver. I did that in the version of this change that I had started working up, but got kind of annoyed that it made a lot of lines go over 80 columns, and then got distracted by other work and never ended up finishing the change up. I guess it's probably fine to leave them as is, since there won't be many files that include this header.
This header is only used in 2 .c files, as such I'm not worried about
namespacing the defines, so my plan for version 4 is to just keep
this as is.
Regards,
Hans
>
>
>> +
>> +/**
>> + * enum wmi_brightness_mode - Operation mode for WMI-wrapped method
>> + * @WMI_BRIGHTNESS_MODE_GET: Get the current brightness level/source.
>> + * @WMI_BRIGHTNESS_MODE_SET: Set the brightness level.
>> + * @WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL: Get the maximum brightness level. This
>> + * is only valid when the WMI method is
>> + * %WMI_BRIGHTNESS_METHOD_LEVEL.
>> + */
>> +enum wmi_brightness_mode {
>> + WMI_BRIGHTNESS_MODE_GET = 0,
>> + WMI_BRIGHTNESS_MODE_SET = 1,
>> + WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL = 2,
>> + WMI_BRIGHTNESS_MODE_MAX
>> +};
>> +
>> +/**
>> + * enum wmi_brightness_source - Backlight brightness control source selection
>> + * @WMI_BRIGHTNESS_SOURCE_GPU: Backlight brightness is controlled by the GPU.
>> + * @WMI_BRIGHTNESS_SOURCE_EC: Backlight brightness is controlled by the
>> + * system's Embedded Controller (EC).
>> + * @WMI_BRIGHTNESS_SOURCE_AUX: Backlight brightness is controlled over the
>> + * DisplayPort AUX channel.
>> + */
>> +enum wmi_brightness_source {
>> + WMI_BRIGHTNESS_SOURCE_GPU = 1,
>> + WMI_BRIGHTNESS_SOURCE_EC = 2,
>> + WMI_BRIGHTNESS_SOURCE_AUX = 3,
>> + WMI_BRIGHTNESS_SOURCE_MAX
>> +};
>> +
>> +/**
>> + * struct wmi_brightness_args - arguments for the WMI-wrapped ACPI method
>> + * @mode: Pass in an &enum wmi_brightness_mode value to select between
>> + * getting or setting a value.
>> + * @val: In parameter for value to set when using %WMI_BRIGHTNESS_MODE_SET
>> + * mode. Not used in conjunction with %WMI_BRIGHTNESS_MODE_GET or
>> + * %WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL mode.
>> + * @ret: Out parameter returning retrieved value when operating in
>> + * %WMI_BRIGHTNESS_MODE_GET or %WMI_BRIGHTNESS_MODE_GET_MAX_LEVEL
>> + * mode. Not used in %WMI_BRIGHTNESS_MODE_SET mode.
>> + * @ignored: Padding; not used. The ACPI method expects a 24 byte params struct.
>> + *
>> + * This is the parameters structure for the WmiBrightnessNotify ACPI method as
>> + * wrapped by WMI. The value passed in to @val or returned by @ret will be a
>> + * brightness value when the WMI method ID is %WMI_BRIGHTNESS_METHOD_LEVEL, or
>> + * an &enum wmi_brightness_source value with %WMI_BRIGHTNESS_METHOD_SOURCE.
>> + */
>> +struct wmi_brightness_args {
>> + u32 mode;
>> + u32 val;
>> + u32 ret;
>> + u32 ignored[3];
>> +};
>> +
>> +#endif
>
next prev parent reply other threads:[~2022-08-19 10:05 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
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 [this message]
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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d5767b2e-a20f-43ca-61d7-6ea577b31188@redhat.com \
--to=hdegoede@redhat.com \
--cc=Xinhui.Pan@amd.com \
--cc=airlied@linux.ie \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=andy@kernel.org \
--cc=bskeggs@redhat.com \
--cc=christian.koenig@amd.com \
--cc=daniel@ffwll.ch \
--cc=ddadap@nvidia.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
--cc=joonas.lahtinen@linux.intel.com \
--cc=kherbst@redhat.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=lyude@redhat.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=markgross@kernel.org \
--cc=mika.westerberg@linux.intel.com \
--cc=mripard@kernel.org \
--cc=nouveau@lists.freedesktop.org \
--cc=platform-driver-x86@vger.kernel.org \
--cc=rafael@kernel.org \
--cc=rodrigo.vivi@intel.com \
--cc=tvrtko.ursulin@linux.intel.com \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox