mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-18 06:33:43 -04:00
drm/amd/display/amdgpu_dm: Make amdgpu_dm_register_backlight_device() take an amdgpu_dm_connector
Make amdgpu_dm_register_backlight_device() take an amdgpu_dm_connector pointer to the connector for which it should register the backlight as its only argument. This is a preparation patch for moving the actual backlight class device registering to drm_connector_funcs.late_register. Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
618e51cd52
commit
213eca2b0c
@@ -4177,13 +4177,15 @@ static const struct backlight_ops amdgpu_dm_backlight_ops = {
|
||||
};
|
||||
|
||||
static void
|
||||
amdgpu_dm_register_backlight_device(struct amdgpu_display_manager *dm)
|
||||
amdgpu_dm_register_backlight_device(struct amdgpu_dm_connector *aconnector)
|
||||
{
|
||||
char bl_name[16];
|
||||
struct drm_device *drm = aconnector->base.dev;
|
||||
struct amdgpu_display_manager *dm = &drm_to_adev(drm)->dm;
|
||||
struct backlight_properties props = { 0 };
|
||||
char bl_name[16];
|
||||
|
||||
if (!acpi_video_backlight_use_native()) {
|
||||
drm_info(adev_to_drm(dm->adev), "Skipping amdgpu DM backlight registration\n");
|
||||
drm_info(drm, "Skipping amdgpu DM backlight registration\n");
|
||||
/* Try registering an ACPI video backlight device instead. */
|
||||
acpi_video_register_backlight();
|
||||
return;
|
||||
@@ -4194,17 +4196,15 @@ amdgpu_dm_register_backlight_device(struct amdgpu_display_manager *dm)
|
||||
props.type = BACKLIGHT_RAW;
|
||||
|
||||
snprintf(bl_name, sizeof(bl_name), "amdgpu_bl%d",
|
||||
adev_to_drm(dm->adev)->primary->index + dm->num_of_edps);
|
||||
drm->primary->index + aconnector->bl_idx);
|
||||
|
||||
dm->backlight_dev[dm->num_of_edps] = backlight_device_register(bl_name,
|
||||
adev_to_drm(dm->adev)->dev,
|
||||
dm,
|
||||
&amdgpu_dm_backlight_ops,
|
||||
&props);
|
||||
dm->backlight_dev[aconnector->bl_idx] =
|
||||
backlight_device_register(bl_name, drm->dev, dm,
|
||||
&amdgpu_dm_backlight_ops, &props);
|
||||
|
||||
if (IS_ERR(dm->backlight_dev[dm->num_of_edps])) {
|
||||
if (IS_ERR(dm->backlight_dev[aconnector->bl_idx])) {
|
||||
DRM_ERROR("DM: Backlight registration failed!\n");
|
||||
dm->backlight_dev[dm->num_of_edps] = NULL;
|
||||
dm->backlight_dev[aconnector->bl_idx] = NULL;
|
||||
} else
|
||||
DRM_DEBUG_DRIVER("DM: Registered Backlight device: %s\n", bl_name);
|
||||
}
|
||||
@@ -4270,7 +4270,7 @@ static void setup_backlight_device(struct amdgpu_display_manager *dm,
|
||||
amdgpu_dm_update_backlight_caps(dm, bl_idx);
|
||||
dm->brightness[bl_idx] = AMDGPU_MAX_BL_LEVEL;
|
||||
|
||||
amdgpu_dm_register_backlight_device(dm);
|
||||
amdgpu_dm_register_backlight_device(aconnector);
|
||||
if (!dm->backlight_dev[bl_idx]) {
|
||||
aconnector->bl_idx = -1;
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user