初始化文件类似如下
#define HSW 8
#define HBD 160
#define HFD 140
#define VSW 8
#define VBD 20
#define VFD 20
#frame rate=60Hz
#Pixel Clk=25Mhz
#MIPI_CLK=300Mbps(MIPI通道速率)
SPI_RES=1;
Delay(20); //延迟20ms
SPI_RES=0;
Delay(50); //延迟50ms
SPI_RES=1;
Delay(120); //延迟120ms
//ST7701SN+BOE3.95IPS(QV040Z6U-T80)_initialcode_Column_V1.1-B 20231017
WriteCommand(0xFF);
WriteParameter(0x77);
WriteParameter(0x01);
WriteParameter(0x00);
WriteParameter(0x00);
WriteParameter(0x13);
WriteCommand(0xEF);
WriteParameter(0x08);
关于第一层 是屏参 clock-frequenc就是#Pixel Clk=25Mhz
延时请查看kernel/drivers/gpu/drm/panel/panel-simple.c中的panel_simple_prepare方法
enable-delay-ms = <20>;
reset-delay-ms = <20>;
prepare-delay-ms = <20>;
unprepare-delay-ms = <20>;
disable-delay-ms = <20>;
init-delay-ms = <120>;
这边就是初始化前延时操作
static int panel_simple_prepare(struct drm_panel *panel)
{
struct panel_simple *p = to_panel_simple(panel);
int err;
if (p->prepared)
return 0;
err = panel_simple_regulator_enable(p);
if (err < 0) {
dev_err(panel->dev, "failed to enable supply: %d\n", err);
return err;
}
gpiod_direction_output(p->enable_gpio, 1);
if (p->desc->delay.prepare)
panel_simple_sleep(p->desc->delay.prepare);
gpiod_direction_output(p->reset_gpio, 1);
if (p->desc->delay.reset)
panel_simple_sleep(p->desc->delay.reset);
gpiod_direction_output(p->reset_gpio, 0);
if (p->desc->delay.init)
panel_simple_sleep(p->desc->delay.init);
if (p->desc->init_seq) {
if (p->dsi)
panel_simple_xfer_dsi_cmd_seq(p, p->desc->init_seq);
else if (p->cmd_type == CMD_TYPE_SPI)
err = panel_simple_xfer_spi_cmd_seq(p, p->desc->init_seq);
if (err)
dev_err(panel->dev, "failed to send init cmds seq\n");
}
p->prepared = true;
return 0;
}
最后就是时序 类似与这样
panel-init-sequence = [
00 00 01 FF
01 00 01 77
01 00 01 01
01 00 01 00
01 00 01 00
01 00 01 13
00 00 01 EF
01 00 01 08
00 00 01 FF
01 00 01 77
01 00 01 01
01 00 01 00
01 00 01 00
01 00 01 10
00 00 01 C0
01 00 01 3B
01 00 01 00
00 00 01 C1
01 00 01 0E
01 00 01 0C
00 00 01 C2
01 00 01 07
01 00 01 0A
00 00 01 CC
01 00 01 30
00 00 01 B0
01 00 01 40
01 00 01 07
01 00 01 53
01 00 01 0E
01 00 01 12
01 00 01 07
01 00 01 0A
01 00 01 09
01 00 01 09
01 00 01 28
01 00 01 05
01 00 01 10
01 00 01 0D
01 00 01 6E
01 00 01 3B
01 00 01 D6
00 00 01 B1
01 00 01 40
01 00 01 17
01 00 01 5C
01 00 01 0D
01 00 01 11
01 00 01 06
01 00 01 08
01 00 01 08
01 00 01 08
01 00 01 20
01 00 01 03
01 00 01 12
01 00 01 11
01 00 01 65
01 00 01 28
01 00 01 C8
00 00 01 FF
01 00 01 77
01 00 01 01
01 00 01 00
01 00 01 00
01 00 01 11
00 00 01 B0
01 00 01 4D
00 00 01 B1
01 00 01 2E
00 00 01 B2
01 00 01 8C
00 00 01 B3
01 00 01 80
00 00 01 B5
01 00 01 4C
00 00 01 B7
01 00 01 85
00 00 01 B8
01 00 01 33
00 00 01 C0
01 00 01 07
00 00 01 C1
01 00 01 78
00 14 01 C2
01 00 01 78
00 14 01 D0
01 00 01 88
00 00 01 E0
01 00 01 00
01 00 01 00
01 00 01 02
00 00 01 E1
01 00 01 05
01 00 01 30
01 00 01 00
01 00 01 00
01 00 01 06
01 00 01 30
01 00 01 00
01 00 01 00
01 00 01 0E
01 00 01 30
01 00 01 30
00 00 01 E2
01 00 01 10
01 00 01 10
01 00 01 30
01 00 01 30
01 00 01 F4
01 00 01 00
01 00 01 00
01 00 01 00
01 00 01 F4
01 00 01 00
01 00 01 00
01 00 01 00
00 00 01 E3
01 00 01 00
01 00 01 00
01 00 01 11
01 00 01 11
00 00 01 E4
01 00 01 44
01 00 01 44
00 00 01 E5
01 00 01 0A
01 00 01 F4
01 00 01 30
01 00 01 F0
01 00 01 0C
01 00 01 F6
01 00 01 30
01 00 01 F0
01 00 01 06
01 00 01 F0
01 00 01 30
01 00 01 F0
01 00 01 08
01 00 01 F2
01 00 01 30
01 00 01 F0
00 00 01 E6
01 00 01 00
01 00 01 00
01 00 01 11
01 00 01 11
00 00 01 E7
01 00 01 44
01 00 01 44
00 00 01 E8
01 00 01 0B
01 00 01 F5
01 00 01 30
01 00 01 F0
01 00 01 0D
01 00 01 F7
01 00 01 30
01 00 01 F0
01 00 01 07
01 00 01 F1
01 00 01 30
01 00 01 F0
01 00 01 09
01 00 01 F3
01 00 01 30
01 00 01 F0
00 00 01 E9
01 00 01 36
01 00 01 01
00 00 01 EB
01 00 01 00
01 00 01 01
01 00 01 E4
01 00 01 E4
01 00 01 44
01 00 01 88
01 00 01 33
00 00 01 ED
01 00 01 20
01 00 01 F8
01 00 01 97
01 00 01 76
01 00 01 65
01 00 01 54
01 00 01 4F
01 00 01 FF
01 00 01 FF
01 00 01 F4
01 00 01 45
01 00 01 56
01 00 01 67
01 00 01 79
01 00 01 8F
01 00 01 02
00 00 01 EF
01 00 01 08
01 00 01 08
01 00 01 08
01 00 01 4F
01 00 01 3F
01 00 01 54
00 00 01 FF
01 00 01 77
01 00 01 01
01 00 01 00
01 00 01 00
01 00 01 13
00 00 01 E6
01 00 01 16
01 00 01 7C
00 00 01 EF
01 00 01 77
01 00 01 01
01 00 01 00
01 00 01 00
01 00 01 00
00 00 01 3A
01 00 01 66
00 96 01 11
00 14 01 29
];