You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
359 lines
8.4 KiB
359 lines
8.4 KiB
8 months ago
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||
|
/*
|
||
|
* Copyright (c) 2024 FriendlyElec Computer Tech. Co., Ltd.
|
||
|
* (http://www.friendlyelec.com)
|
||
|
*
|
||
|
* Copyright (c) 2022 Rockchip Electronics Co., Ltd.
|
||
|
*/
|
||
|
|
||
|
#define HAS_PWM_BACKLIGHT 1
|
||
|
|
||
|
&pwm_backlight {
|
||
|
brightness-levels = <
|
||
|
0 20 20 21 21 22 22 23
|
||
|
23 24 24 25 25 26 26 27
|
||
|
27 28 28 29 29 30 30 31
|
||
|
31 32 32 33 33 34 34 35
|
||
|
35 36 36 37 37 38 38 39
|
||
|
40 41 42 43 44 45 46 47
|
||
|
48 49 50 51 52 53 54 55
|
||
|
56 57 58 59 60 61 62 63
|
||
|
64 65 66 67 68 69 70 71
|
||
|
72 73 74 75 76 77 78 79
|
||
|
80 81 82 83 84 85 86 87
|
||
|
88 89 90 91 92 93 94 95
|
||
|
96 97 98 99 100 101 102 103
|
||
|
104 105 106 107 108 109 110 111
|
||
|
112 113 114 115 116 117 118 119
|
||
|
120 121 122 123 124 125 126 127
|
||
|
128 129 130 131 132 133 134 135
|
||
|
136 137 138 139 140 141 142 143
|
||
|
144 145 146 147 148 149 150 151
|
||
|
152 153 154 155 156 157 158 159
|
||
|
160 161 162 163 164 165 166 167
|
||
|
168 169 170 171 172 173 174 175
|
||
|
176 177 178 179 180 181 182 183
|
||
|
184 185 186 187 188 189 190 191
|
||
|
192 193 194 195 196 197 198 199
|
||
|
200 201 202 203 204 205 206 207
|
||
|
208 209 210 211 212 213 214 215
|
||
|
216 217 218 219 220 221 222 223
|
||
|
224 225 226 227 228 229 230 231
|
||
|
232 233 234 235 236 237 238 239
|
||
|
240 241 242 243 244 245 246 247
|
||
|
248 249 250 251 252 253 254 255
|
||
|
>;
|
||
|
default-brightness-level = <200>;
|
||
|
};
|
||
|
|
||
|
#if defined(ENABLE_MIPI_DSI0)
|
||
|
&dsi0 {
|
||
|
dsi0_panel: panel@0 {
|
||
|
compatible = "simple-panel-dsi";
|
||
|
reg = <0>;
|
||
|
|
||
|
backlight = <&pwm_backlight>;
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&lcd_rst0_gpio>;
|
||
|
reset-gpios = <&gpio4 RK_PA3 GPIO_ACTIVE_LOW>;
|
||
|
panel-name = "yx35,210dpi";
|
||
|
nvmems = <&dsi0_i2c 0x50 0xe0 0x10>;
|
||
|
nvmem-status = <1>;
|
||
|
|
||
|
reset-delay-ms = <20>;
|
||
|
init-delay-ms = <120>;
|
||
|
enable-delay-ms = <5>;
|
||
|
prepare-delay-ms = <0>;
|
||
|
unprepare-delay-ms = <10>;
|
||
|
disable-delay-ms = <5>;
|
||
|
width-mm = <45>;
|
||
|
height-mm = <75>;
|
||
|
|
||
|
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
|
||
|
MIPI_DSI_MODE_LPM | MIPI_DSI_CLOCK_NON_CONTINUOUS)>;
|
||
|
dsi,format = <MIPI_DSI_FMT_RGB888>;
|
||
|
dsi,lanes = <2>;
|
||
|
panel-init-sequence = [
|
||
|
15 0A 02 01 00
|
||
|
15 7D 02 11 00
|
||
|
39 00 06 FF 77 01 00 00 13
|
||
|
15 00 02 EF 08
|
||
|
39 00 06 FF 77 01 00 00 10
|
||
|
39 00 03 C0 63 00
|
||
|
39 00 03 C1 14 14
|
||
|
39 00 03 C2 37 02
|
||
|
15 00 02 CC 10
|
||
|
39 00 11 B0 C5 11 1B 0D 11 07 0A 09 08 24 05 12 10 A9 32 DF
|
||
|
39 00 11 B1 C5 19 21 0B 0E 03 0C 07 07 26 04 12 11 AA 32 DF
|
||
|
39 00 06 FF 77 01 00 00 11
|
||
|
15 00 02 B0 4D
|
||
|
15 00 02 B1 59
|
||
|
15 00 02 B2 81
|
||
|
15 00 02 B3 80
|
||
|
15 00 02 B5 4E
|
||
|
15 00 02 B7 85
|
||
|
15 00 02 B8 32
|
||
|
15 00 02 BB 03
|
||
|
15 00 02 C1 08
|
||
|
15 00 02 C2 08
|
||
|
15 00 02 D0 88
|
||
|
39 00 04 E0 00 00 02
|
||
|
39 00 0C E1 06 28 08 28 05 28 07 28 0E 33 33
|
||
|
39 00 0D E2 30 30 33 33 34 00 00 00 34 00 00 00
|
||
|
39 00 05 E3 00 00 33 33
|
||
|
39 00 03 E4 44 44
|
||
|
39 00 11 E5 09 2F 2C 8C 0B 31 2C 8C 0D 33 2C 8C 0F 35 2C 8C
|
||
|
39 00 05 E6 00 00 33 33
|
||
|
39 00 03 E7 44 44
|
||
|
39 00 11 E8 08 2E 2C 8C 0A 30 2C 8C 0C 32 2C 8C 0E 34 2C 8C
|
||
|
39 00 03 E9 36 00
|
||
|
39 00 08 EB 00 01 E4 E4 44 88 40
|
||
|
39 00 11 ED FF FC B2 45 67 FA 01 FF FF 10 AF 76 54 2B CF FF
|
||
|
39 00 07 EF 08 08 08 45 3F 54
|
||
|
39 00 06 FF 77 01 00 00 13
|
||
|
39 00 03 E8 00 0E
|
||
|
15 78 02 11 00
|
||
|
39 0A 03 E8 00 0C
|
||
|
39 00 03 E8 00 00
|
||
|
39 00 06 FF 77 01 00 00 00
|
||
|
15 00 02 36 00
|
||
|
15 00 02 29 00
|
||
|
];
|
||
|
|
||
|
panel-exit-sequence = [
|
||
|
15 00 02 28 00
|
||
|
15 3C 02 10 00
|
||
|
];
|
||
|
|
||
|
disp_timings0: display-timings {
|
||
|
native-mode = <&dsi_timing0>;
|
||
|
dsi_timing0: timing0 {
|
||
|
clock-frequency = <29700000>;
|
||
|
hactive = <480>;
|
||
|
vactive = <800>;
|
||
|
hfront-porch = <40>;
|
||
|
hsync-len = <32>;
|
||
|
hback-porch = <30>;
|
||
|
vfront-porch = <20>;
|
||
|
vsync-len = <10>;
|
||
|
vback-porch = <20>;
|
||
|
hsync-active = <0>;
|
||
|
vsync-active = <0>;
|
||
|
de-active = <0>;
|
||
|
pixelclk-active = <0>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
ports {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
port@0 {
|
||
|
reg = <0>;
|
||
|
panel_in_dsi0: endpoint {
|
||
|
remote-endpoint = <&dsi0_out_panel>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
ports {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
port@1 {
|
||
|
reg = <1>;
|
||
|
dsi0_out_panel: endpoint {
|
||
|
remote-endpoint = <&panel_in_dsi0>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&dsi0_i2c {
|
||
|
dsi0_gt1x: gt1x@14 {
|
||
|
compatible = "goodix,gt1x";
|
||
|
reg = <0x14>;
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&touch_dsi0_gpio>;
|
||
|
goodix,irq-gpio = <&gpio3 RK_PC0 IRQ_TYPE_LEVEL_LOW>;
|
||
|
goodix,rst-gpio = <&gpio3 RK_PC1 GPIO_ACTIVE_HIGH>;
|
||
|
keep-otp-config;
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|
||
|
dsi0_gt9xx: gt9xx@5d {
|
||
|
compatible = "goodix,gt9xx";
|
||
|
reg = <0x5d>;
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&touch_dsi0_gpio>;
|
||
|
interrupt-parent = <&gpio3>;
|
||
|
interrupts = <RK_PC0 IRQ_TYPE_EDGE_FALLING>;
|
||
|
goodix,irq-gpio = <&gpio3 RK_PC0 IRQ_TYPE_LEVEL_LOW>;
|
||
|
goodix,rst-gpio = <&gpio3 RK_PC1 GPIO_ACTIVE_HIGH>;
|
||
|
keep-otp-config;
|
||
|
status = "disabled";
|
||
|
};
|
||
|
};
|
||
|
#endif
|
||
|
|
||
|
#if defined(ENABLE_MIPI_DSI1)
|
||
|
&dsi1 {
|
||
|
dsi1_panel: panel@0 {
|
||
|
compatible = "simple-panel-dsi";
|
||
|
reg = <0>;
|
||
|
|
||
|
backlight = <&pwm_backlight>;
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&lcd_rst1_gpio>;
|
||
|
reset-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_LOW>;
|
||
|
panel-name = "yx35,210dpi";
|
||
|
nvmems = <&dsi1_i2c 0x50 0xe0 0x10>;
|
||
|
nvmem-status = <1>;
|
||
|
|
||
|
reset-delay-ms = <20>;
|
||
|
init-delay-ms = <120>;
|
||
|
enable-delay-ms = <5>;
|
||
|
prepare-delay-ms = <0>;
|
||
|
unprepare-delay-ms = <10>;
|
||
|
disable-delay-ms = <5>;
|
||
|
width-mm = <45>;
|
||
|
height-mm = <75>;
|
||
|
|
||
|
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
|
||
|
MIPI_DSI_MODE_LPM | MIPI_DSI_CLOCK_NON_CONTINUOUS)>;
|
||
|
dsi,format = <MIPI_DSI_FMT_RGB888>;
|
||
|
dsi,lanes = <2>;
|
||
|
panel-init-sequence = [
|
||
|
15 0A 02 01 00
|
||
|
15 7D 02 11 00
|
||
|
39 00 06 FF 77 01 00 00 13
|
||
|
15 00 02 EF 08
|
||
|
39 00 06 FF 77 01 00 00 10
|
||
|
39 00 03 C0 63 00
|
||
|
39 00 03 C1 14 14
|
||
|
39 00 03 C2 37 02
|
||
|
15 00 02 CC 10
|
||
|
39 00 11 B0 C5 11 1B 0D 11 07 0A 09 08 24 05 12 10 A9 32 DF
|
||
|
39 00 11 B1 C5 19 21 0B 0E 03 0C 07 07 26 04 12 11 AA 32 DF
|
||
|
39 00 06 FF 77 01 00 00 11
|
||
|
15 00 02 B0 4D
|
||
|
15 00 02 B1 59
|
||
|
15 00 02 B2 81
|
||
|
15 00 02 B3 80
|
||
|
15 00 02 B5 4E
|
||
|
15 00 02 B7 85
|
||
|
15 00 02 B8 32
|
||
|
15 00 02 BB 03
|
||
|
15 00 02 C1 08
|
||
|
15 00 02 C2 08
|
||
|
15 00 02 D0 88
|
||
|
39 00 04 E0 00 00 02
|
||
|
39 00 0C E1 06 28 08 28 05 28 07 28 0E 33 33
|
||
|
39 00 0D E2 30 30 33 33 34 00 00 00 34 00 00 00
|
||
|
39 00 05 E3 00 00 33 33
|
||
|
39 00 03 E4 44 44
|
||
|
39 00 11 E5 09 2F 2C 8C 0B 31 2C 8C 0D 33 2C 8C 0F 35 2C 8C
|
||
|
39 00 05 E6 00 00 33 33
|
||
|
39 00 03 E7 44 44
|
||
|
39 00 11 E8 08 2E 2C 8C 0A 30 2C 8C 0C 32 2C 8C 0E 34 2C 8C
|
||
|
39 00 03 E9 36 00
|
||
|
39 00 08 EB 00 01 E4 E4 44 88 40
|
||
|
39 00 11 ED FF FC B2 45 67 FA 01 FF FF 10 AF 76 54 2B CF FF
|
||
|
39 00 07 EF 08 08 08 45 3F 54
|
||
|
39 00 06 FF 77 01 00 00 13
|
||
|
39 00 03 E8 00 0E
|
||
|
15 78 02 11 00
|
||
|
39 0A 03 E8 00 0C
|
||
|
39 00 03 E8 00 00
|
||
|
39 00 06 FF 77 01 00 00 00
|
||
|
15 00 02 36 00
|
||
|
15 00 02 29 00
|
||
|
];
|
||
|
|
||
|
panel-exit-sequence = [
|
||
|
15 00 02 28 00
|
||
|
15 3C 02 10 00
|
||
|
];
|
||
|
|
||
|
display-timings {
|
||
|
native-mode = <&dsi1_timing0>;
|
||
|
dsi1_timing0: timing0 {
|
||
|
clock-frequency = <29700000>;
|
||
|
hactive = <480>;
|
||
|
vactive = <800>;
|
||
|
hfront-porch = <40>;
|
||
|
hsync-len = <32>;
|
||
|
hback-porch = <30>;
|
||
|
vfront-porch = <20>;
|
||
|
vsync-len = <10>;
|
||
|
vback-porch = <20>;
|
||
|
hsync-active = <0>;
|
||
|
vsync-active = <0>;
|
||
|
de-active = <0>;
|
||
|
pixelclk-active = <0>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
ports {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
port@0 {
|
||
|
reg = <0>;
|
||
|
panel_in_dsi1: endpoint {
|
||
|
remote-endpoint = <&dsi1_out_panel>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
ports {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
port@1 {
|
||
|
reg = <1>;
|
||
|
dsi1_out_panel: endpoint {
|
||
|
remote-endpoint = <&panel_in_dsi1>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&dsi1_i2c {
|
||
|
dsi1_gt1x: gt1x@14 {
|
||
|
compatible = "goodix,gt1x";
|
||
|
reg = <0x14>;
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&touch_dsi1_gpio>;
|
||
|
goodix,irq-gpio = <&gpio4 RK_PA0 IRQ_TYPE_EDGE_FALLING>;
|
||
|
goodix,rst-gpio = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>;
|
||
|
keep-otp-config;
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|
||
|
dsi1_gt9xx: gt9xx@5d {
|
||
|
compatible = "goodix,gt9xx";
|
||
|
reg = <0x5d>;
|
||
|
pinctrl-names = "default";
|
||
|
pinctrl-0 = <&touch_dsi1_gpio>;
|
||
|
interrupt-parent = <&gpio4>;
|
||
|
interrupts = <RK_PA0 IRQ_TYPE_EDGE_FALLING>;
|
||
|
goodix,irq-gpio = <&gpio4 RK_PA0 IRQ_TYPE_EDGE_FALLING>;
|
||
|
goodix,rst-gpio = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>;
|
||
|
keep-otp-config;
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|
||
|
dsi1_e2prom: eeprom@50 {
|
||
|
compatible = "microchip,24c02", "atmel,24c02";
|
||
|
reg = <0x50>;
|
||
|
#address-cells = <2>;
|
||
|
#size-cells = <0>;
|
||
|
pagesize = <16>;
|
||
|
size = <256>;
|
||
|
};
|
||
|
};
|
||
|
#endif
|