On Tue, 17 Feb 2015, Alex Deucher <alexdeucher_at_gmail.com> wrote:
Commit b7bc596ebbe0cddc97d76ef9309f64471bbf13eb accidently broke backlight control on old mac laptops that use the on-GPU backlight controller.
Reported by nathanhi on IRC.
Signed-off-by: Alex Deucher <alexander.deucher at amd.com> Cc: stable at vger.kernel.org
drivers/gpu/drm/radeon/radeon_encoders.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c
b/drivers/gpu/drm/radeon/radeon_encoders.c
index 6b670b0..275ed45 100644 --- a/drivers/gpu/drm/radeon/radeon_encoders.c +++ b/drivers/gpu/drm/radeon/radeon_encoders.c @@ -179,6 +179,9 @@ static void radeon_encoder_add_backlight(struct
radeon_encoder *radeon_encoder,
(rdev->pdev->subsystem_vendor == 0x1734) && (rdev->pdev->subsystem_device == 0x1107)) use_bl = false;
/* enable native backlight control on apple */
else if (rdev->pdev->subsystem_vendor == PCI_VENDOR_ID_APPLE)
use_bl = true; /* disable native backlight control on older asics */ else if (rdev->family < CHIP_R600) use_bl = false;
-- 1.8.3.1
Hi, thanks for your patch. I've tested it but it didn't won't work as the graphics chip is (unfortunately) detected with PCI_VENDOR_ID_ATI instead of PCI_VENDOR_ID_APPLE. I therefore propose the following patch:
Commit b7bc596ebbe0 ("drm/radeon: disable native backlight control on pre-r6xx asics (v2)") accidently broke backlight control on old mac laptops that use the on-GPU backlight controller.
Signed-off-by: Nathan-J. Hirschauer nathanhi@deepserve.info --- drivers/gpu/drm/radeon/radeon_encoders.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c index 6b670b0..3a29703 100644 --- a/drivers/gpu/drm/radeon/radeon_encoders.c +++ b/drivers/gpu/drm/radeon/radeon_encoders.c @@ -179,9 +179,12 @@ static void radeon_encoder_add_backlight(struct radeon_encoder *radeon_encoder, (rdev->pdev->subsystem_vendor == 0x1734) && (rdev->pdev->subsystem_device == 0x1107)) use_bl = false; +/* Older PPC macs use on-GPU backlight controller */ +#ifndef CONFIG_PPC_PMAC /* disable native backlight control on older asics */ else if (rdev->family < CHIP_R600) use_bl = false; +#endif else use_bl = true; }