From 9402cde9347eca050e14ea9e47270e84a6899162 Mon Sep 17 00:00:00 2001 From: Richard Acayan Date: Mon, 16 Jan 2023 17:49:09 -0500 Subject: [PATCH] drm/panel: vtdr6130: Use 16-bit brightness function This panel communicates brightness in big endian. This is not a quirk of the panels themselves, but rather, a part of the MIPI standard. Use the new mipi_dsi_dcs_set_display_brightness_large() function that properly handles 16-bit brightness instead of bypassing the brightness functions entirely. Signed-off-by: Richard Acayan Reviewed-by: Neil Armstrong Tested-by: Neil Armstrong # on SM8550-MTP Reviewed-by: Sam Ravnborg Signed-off-by: Neil Armstrong Link: https://patchwork.freedesktop.org/patch/msgid/20230116224909.23884-4-mailingradian@gmail.com --- drivers/gpu/drm/panel/panel-visionox-vtdr6130.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/gpu/drm/panel/panel-visionox-vtdr6130.c b/drivers/gpu/drm/panel/panel-visionox-vtdr6130.c index f9a6abc1e1215..1092075b31a5f 100644 --- a/drivers/gpu/drm/panel/panel-visionox-vtdr6130.c +++ b/drivers/gpu/drm/panel/panel-visionox-vtdr6130.c @@ -243,12 +243,9 @@ static int visionox_vtdr6130_bl_update_status(struct backlight_device *bl) { struct mipi_dsi_device *dsi = bl_get_data(bl); u16 brightness = backlight_get_brightness(bl); - /* Panel needs big-endian order of brightness value */ - u8 payload[2] = { brightness >> 8, brightness & 0xff }; int ret; - ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_SET_DISPLAY_BRIGHTNESS, - payload, sizeof(payload)); + mipi_dsi_dcs_set_display_brightness_large(dsi, brightness); if (ret < 0) return ret; -- 2.30.2