drm/panel: nt35521: Break some CMDS into helper functions
Break select page cmds into helper functions. Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com> Reviewed-by: Douglas Anderson <dianders@chromium.org> Link: https://lore.kernel.org/r/20240710084715.1119935-3-yangcong5@huaqin.corp-partner.google.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20240710084715.1119935-3-yangcong5@huaqin.corp-partner.google.com
This commit is contained in:
parent
93183c9959
commit
3c8d2d5da3
@ -25,6 +25,12 @@ struct truly_nt35521 {
|
||||
struct gpio_desc *blen_gpio;
|
||||
};
|
||||
|
||||
#define NT35521_DCS_SWITCH_PAGE 0xf0
|
||||
|
||||
#define nt35521_switch_page(dsi_ctx, page) \
|
||||
mipi_dsi_dcs_write_seq_multi(dsi_ctx, NT35521_DCS_SWITCH_PAGE, \
|
||||
0x55, 0xaa, 0x52, 0x08, (page))
|
||||
|
||||
static inline
|
||||
struct truly_nt35521 *to_truly_nt35521(struct drm_panel *panel)
|
||||
{
|
||||
@ -48,7 +54,7 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
|
||||
dsi->mode_flags |= MIPI_DSI_MODE_LPM;
|
||||
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x00);
|
||||
nt35521_switch_page(&dsi_ctx, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xff, 0xaa, 0x55, 0xa5, 0x80);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0x6f, 0x11, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf7, 0x20, 0x00);
|
||||
@ -59,7 +65,8 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xbb, 0x11, 0x11);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xbc, 0x00, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb6, 0x02);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x01);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x01);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb0, 0x09, 0x09);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb1, 0x09, 0x09);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xbc, 0x8c, 0x00);
|
||||
@ -71,7 +78,8 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb4, 0x25, 0x25);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb9, 0x43, 0x43);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xba, 0x24, 0x24);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x02);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x02);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xee, 0x03);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb0,
|
||||
0x00, 0xb2, 0x00, 0xb3, 0x00, 0xb6, 0x00, 0xc3,
|
||||
@ -103,7 +111,8 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
0x02, 0x93, 0x02, 0xcd, 0x02, 0xf6, 0x03, 0x31,
|
||||
0x03, 0x6c, 0x03, 0xe9, 0x03, 0xef, 0x03, 0xf4);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xbb, 0x03, 0xf6, 0x03, 0xf7);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x03);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x03);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb0, 0x22, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb1, 0x22, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb2, 0x05, 0x00, 0x60, 0x00, 0x00);
|
||||
@ -122,7 +131,8 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xc5, 0xc0);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xc6, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xc7, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x05);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x05);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb0, 0x17, 0x06);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb1, 0x17, 0x06);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb2, 0x17, 0x06);
|
||||
@ -178,7 +188,8 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xeb, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xec, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xed, 0x30);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x06);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x06);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb0, 0x31, 0x31);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb1, 0x31, 0x31);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb2, 0x2d, 0x2e);
|
||||
@ -235,10 +246,12 @@ static int truly_nt35521_on(struct truly_nt35521 *ctx)
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0x6f, 0x11);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf3, 0x01);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0x35, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x00);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xd9, 0x02, 0x03, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x00, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x08, 0x00);
|
||||
|
||||
nt35521_switch_page(&dsi_ctx, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xb1, 0x6c, 0x21);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0xf0, 0x55, 0xaa, 0x52, 0x00, 0x00);
|
||||
mipi_dsi_generic_write_seq_multi(&dsi_ctx, 0x35, 0x00);
|
||||
|
Loading…
Reference in New Issue
Block a user