mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 16:13:19 +09:00
drm/panel-elida-kd35t133: Drop custom DSI write macro
There is a macro for this already in the <drm/drm_mipi_dsi.h> header, use that instead and delete the custom DSI write macro defined in the driver. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/20230107191822.3787147-5-javierm@redhat.com
This commit is contained in:
@@ -51,14 +51,6 @@ static inline struct kd35t133 *panel_to_kd35t133(struct drm_panel *panel)
|
||||
return container_of(panel, struct kd35t133, panel);
|
||||
}
|
||||
|
||||
#define dsi_dcs_write_seq(dsi, cmd, seq...) do { \
|
||||
static const u8 b[] = { cmd, seq }; \
|
||||
int ret; \
|
||||
ret = mipi_dsi_dcs_write_buffer(dsi, b, ARRAY_SIZE(b)); \
|
||||
if (ret < 0) \
|
||||
return ret; \
|
||||
} while (0)
|
||||
|
||||
static int kd35t133_init_sequence(struct kd35t133 *ctx)
|
||||
{
|
||||
struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev);
|
||||
@@ -68,25 +60,25 @@ static int kd35t133_init_sequence(struct kd35t133 *ctx)
|
||||
* Init sequence was supplied by the panel vendor with minimal
|
||||
* documentation.
|
||||
*/
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_POSITIVEGAMMA,
|
||||
0x00, 0x13, 0x18, 0x04, 0x0f, 0x06, 0x3a, 0x56,
|
||||
0x4d, 0x03, 0x0a, 0x06, 0x30, 0x3e, 0x0f);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_NEGATIVEGAMMA,
|
||||
0x00, 0x13, 0x18, 0x01, 0x11, 0x06, 0x38, 0x34,
|
||||
0x4d, 0x06, 0x0d, 0x0b, 0x31, 0x37, 0x0f);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_POWERCONTROL1, 0x18, 0x17);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_POWERCONTROL2, 0x41);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_VCOMCONTROL, 0x00, 0x1a, 0x80);
|
||||
dsi_dcs_write_seq(dsi, MIPI_DCS_SET_ADDRESS_MODE, 0x48);
|
||||
dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PIXEL_FORMAT, 0x55);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_INTERFACEMODECTRL, 0x00);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_FRAMERATECTRL, 0xa0);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_DISPLAYINVERSIONCTRL, 0x02);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_DISPLAYFUNCTIONCTRL,
|
||||
0x20, 0x02);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_SETIMAGEFUNCTION, 0x00);
|
||||
dsi_dcs_write_seq(dsi, KD35T133_CMD_ADJUSTCONTROL3,
|
||||
0xa9, 0x51, 0x2c, 0x82);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_POSITIVEGAMMA,
|
||||
0x00, 0x13, 0x18, 0x04, 0x0f, 0x06, 0x3a, 0x56,
|
||||
0x4d, 0x03, 0x0a, 0x06, 0x30, 0x3e, 0x0f);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_NEGATIVEGAMMA,
|
||||
0x00, 0x13, 0x18, 0x01, 0x11, 0x06, 0x38, 0x34,
|
||||
0x4d, 0x06, 0x0d, 0x0b, 0x31, 0x37, 0x0f);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_POWERCONTROL1, 0x18, 0x17);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_POWERCONTROL2, 0x41);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_VCOMCONTROL, 0x00, 0x1a, 0x80);
|
||||
mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_ADDRESS_MODE, 0x48);
|
||||
mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PIXEL_FORMAT, 0x55);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_INTERFACEMODECTRL, 0x00);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_FRAMERATECTRL, 0xa0);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_DISPLAYINVERSIONCTRL, 0x02);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_DISPLAYFUNCTIONCTRL,
|
||||
0x20, 0x02);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_SETIMAGEFUNCTION, 0x00);
|
||||
mipi_dsi_dcs_write_seq(dsi, KD35T133_CMD_ADJUSTCONTROL3,
|
||||
0xa9, 0x51, 0x2c, 0x82);
|
||||
mipi_dsi_dcs_write(dsi, MIPI_DCS_ENTER_INVERT_MODE, NULL, 0);
|
||||
|
||||
dev_dbg(dev, "Panel init sequence done\n");
|
||||
|
||||
Reference in New Issue
Block a user