hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/arch/arm64/boot/dts/rockchip/rk3588-vehicle-serdes-mfd-display-rohm.dtsi
....@@ -411,6 +411,7 @@
411411 reg = <1>;
412412
413413 dp0_out_i2c4_bu18tl82: endpoint {
414
+ link-frequencies = /bits/ 64 <1620000000>;
414415 remote-endpoint = <&i2c4_bu18tl82_in_dp0>;
415416 };
416417 };
....@@ -796,20 +797,18 @@
796797 0424 0000
797798 0425 0020
798799 0426 0080
799
- //0057 0000
800
- //0058 0002
801
- //0057 0000 //rl gpio0 output lcd_bl_pwm
802
- //0058 0002 //bypass ser gpio0
803
- //005a 0000 //rl gpio1 output lcd_pwr_en
804
- //005b 0003 //bypass ser gpio1
805
- //005d 0000 //rl gpio2 output lcd_rst
806
- //005e 0004 //bypass ser gpio2
807
- //0060 0000 //rl gpio3 output tp-rst
808
- //0061 0005 //bypass ser gpio3
809
- //0063 0018 //rl gpio4 input tp-int
810
- //0064 0006 //bypass ser gpio4
811
- //0066 0000 //rl gpio5 output
812
- //0067 0001 //set gpio5 high
800
+ 0057 0000 //rl gpio0 output lcd_bl_pwm
801
+ 0058 0000 //bypass ser gpio0
802
+ 005a 0000 //rl gpio1 output lcd_pwr_en
803
+ 005b 0000 //bypass ser gpio1
804
+ 005d 0000 //rl gpio2 output lcd_rst
805
+ 005e 0000 //bypass ser gpio2
806
+ 0060 0000 //rl gpio3 output tp-rst
807
+ 0061 0000 //bypass ser gpio3
808
+ 0063 0018 //rl gpio4 input tp-int
809
+ 0064 0006 //bypass ser gpio4
810
+ 0066 0000 //rl gpio5 output
811
+ 0067 0000 //set gpio5 high
813812
814813 0073 0080
815814 0074 0007 //0x0780 = 1920
....@@ -853,24 +852,15 @@
853852
854853 i2c2_bu18rl82_pinctrl: i2c2-bu18rl82-pinctrl {
855854 compatible = "rohm,bu18rl82-pinctrl";
856
- pinctrl-names = "default","sleep";
855
+ pinctrl-names = "default","init","sleep";
857856 pinctrl-0 = <&i2c2_bu18rl82_panel_pins>;
858
- pinctrl-1 = <&i2c2_bu18rl82_panel_sleep_pins>;
857
+ pinctrl-1 = <&i2c2_bu18rl82_panel_pins>;
858
+ pinctrl-2 = <&i2c2_bu18rl82_panel_sleep_pins>;
859859 status = "okay";
860860
861861 i2c2_bu18rl82_panel_pins: panel-pins {
862
- lcd-bl-pwm {
863
- pins = "BU18RL82_GPIO0";
864
- function = "SER_GPIO0_TO_DES";
865
- };
866
-
867
- lcd-pwr-en {
868
- pins = "BU18RL82_GPIO1";
869
- function = "SER_GPIO1_TO_DES";
870
- };
871
-
872
- lcd-rst {
873
- pins = "BU18RL82_GPIO2";
862
+ lcd-otp-pin {
863
+ pins = "BU18RL82_GPIO5";
874864 function = "DES_GPIO_OUTPUT_HIGH";
875865 };
876866
....@@ -879,14 +869,29 @@
879869 function = "DES_GPIO_OUTPUT_HIGH";
880870 };
881871
872
+ lcd-rst {
873
+ pins = "BU18RL82_GPIO2";
874
+ function = "DES_GPIO_OUTPUT_HIGH";
875
+ };
876
+
882877 tp-int {
883878 pins = "BU18RL82_GPIO4";
884879 function = "DES_TO_SER_GPIO3";
885880 };
886881
887
- lcd-otp-pin {
888
- pins = "BU18RL82_GPIO5";
882
+ 100ms-delay {
883
+ pins = "BU18RL82_GPIO1";
884
+ function = "DELAY_100MS";
885
+ };
886
+
887
+ lcd-pwr-en {
888
+ pins = "BU18RL82_GPIO1";
889889 function = "DES_GPIO_OUTPUT_HIGH";
890
+ };
891
+
892
+ lcd-bl-pwm {
893
+ pins = "BU18RL82_GPIO0";
894
+ function = "SER_GPIO0_TO_DES";
890895 };
891896 };
892897
....@@ -1130,20 +1135,18 @@
11301135 0424 0000
11311136 0425 0020
11321137 0426 0080
1133
- //0057 0000
1134
- //0058 0002
1135
- //0057 0000 //rl gpio0 output lcd_bl_pwm
1136
- //0058 0002 //bypass ser gpio0
1137
- //005a 0000 //rl gpio1 output lcd_pwr_en
1138
- //005b 0003 //bypass ser gpio1
1139
- //005d 0000 //rl gpio2 output lcd_rst
1140
- //005e 0004 //bypass ser gpio2
1141
- //0060 0000 //rl gpio3 output tp-rst
1142
- //0061 0005 //bypass ser gpio3
1143
- //0063 0018 //rl gpio4 input tp-int
1144
- //0064 0006 //bypass ser gpio4
1145
- //0066 0000 //rl gpio5 output
1146
- //0067 0001 //set gpio5 high
1138
+ 0057 0000 //rl gpio0 output lcd_bl_pwm
1139
+ 0058 0000 //set gpio0 low
1140
+ 005a 0000 //rl gpio1 output lcd_pwr_en
1141
+ 005b 0000 //set gpio1 low
1142
+ 005d 0000 //rl gpio2 output lcd_rst
1143
+ 005e 0000 //set gpio2 low
1144
+ 0060 0000 //rl gpio3 output tp-rst
1145
+ 0061 0000 //set gpio3 low
1146
+ 0063 0018 //rl gpio4 input tp-int
1147
+ 0064 0006 //bypass ser gpio4
1148
+ 0066 0000 //rl gpio5 output
1149
+ 0067 0000 //set gpio5 low
11471150
11481151 0073 0080
11491152 0074 0007 //0x0780 = 1920
....@@ -1187,24 +1190,15 @@
11871190
11881191 i2c4_bu18rl82_pinctrl: i2c4-bu18rl82-pinctrl {
11891192 compatible = "rohm,bu18rl82-pinctrl";
1190
- pinctrl-names = "default","sleep";
1193
+ pinctrl-names = "default","init","sleep";
11911194 pinctrl-0 = <&i2c4_bu18rl82_panel_pins>;
1192
- pinctrl-1 = <&i2c4_bu18rl82_panel_sleep_pins>;
1195
+ pinctrl-1 = <&i2c4_bu18rl82_panel_pins>;
1196
+ pinctrl-2 = <&i2c4_bu18rl82_panel_sleep_pins>;
11931197 status = "okay";
11941198
11951199 i2c4_bu18rl82_panel_pins: panel-pins {
1196
- lcd-bl-pwm {
1197
- pins = "BU18RL82_GPIO0";
1198
- function = "SER_GPIO0_TO_DES";
1199
- };
1200
-
1201
- lcd-pwr-en {
1202
- pins = "BU18RL82_GPIO1";
1203
- function = "SER_GPIO1_TO_DES";
1204
- };
1205
-
1206
- lcd-rst {
1207
- pins = "BU18RL82_GPIO2";
1200
+ lcd-otp-pin {
1201
+ pins = "BU18RL82_GPIO5";
12081202 function = "DES_GPIO_OUTPUT_HIGH";
12091203 };
12101204
....@@ -1213,14 +1207,29 @@
12131207 function = "DES_GPIO_OUTPUT_HIGH";
12141208 };
12151209
1210
+ lcd-rst {
1211
+ pins = "BU18RL82_GPIO2";
1212
+ function = "DES_GPIO_OUTPUT_HIGH";
1213
+ };
1214
+
12161215 tp-int {
12171216 pins = "BU18RL82_GPIO4";
12181217 function = "DES_TO_SER_GPIO3";
12191218 };
12201219
1221
- lcd-otp-pin {
1222
- pins = "BU18RL82_GPIO5";
1220
+ 100ms-delay {
1221
+ pins = "BU18RL82_GPIO1";
1222
+ function = "DELAY_100MS";
1223
+ };
1224
+
1225
+ lcd-pwr-en {
1226
+ pins = "BU18RL82_GPIO1";
12231227 function = "DES_GPIO_OUTPUT_HIGH";
1228
+ };
1229
+
1230
+ lcd-bl-pwm {
1231
+ pins = "BU18RL82_GPIO0";
1232
+ function = "SER_GPIO0_TO_DES";
12241233 };
12251234 };
12261235
....@@ -1456,20 +1465,18 @@
14561465 0020 0002
14571466 0031 0041 //i2c addr 0x41
14581467 0032 0041 //i2c addr 0x41
1459
- //0057 0000 //rl gpio0 output lcd_bl_pwm
1460
- //0058 0002 //bypass ser gpio0
1461
- //005a 0000 //rl gpio1 output lcd_pwr_en
1462
- //005b 0001 //bypass ser gpio1
1463
- //005d 0000 //rl gpio2 output lcd_rst
1464
- //005e 0004 //bypass ser gpio2
1465
- //0060 0018 //rl gpio3 input tp-int
1466
- //042e 0005 //bypass ser gpio3
1467
- //0061 0005 //bypass ser gpio3
1468
- //0063 0000 //rl gpio4 output tp-rst
1469
- //042f 0006 //bypass ser gpio4
1470
- //0064 0006 //bypass ser gpio4
1471
- //0066 0000 //rl gpio5 output
1472
- //0067 0007 //bypass ser gpio5
1468
+ 0057 0000 //rl gpio0 output lcd_bl_pwm
1469
+ 0058 0000 //set gpio0 low
1470
+ 005a 0000 //rl gpio1 output lcd_pwr_en
1471
+ 005b 0000 //set gpio1 low
1472
+ 005d 0000 //rl gpio2 output lcd_rst
1473
+ 005e 0000 //set gpio2 low
1474
+ 0060 0000 //rl gpio3 output tp-rst
1475
+ 0061 0000 //set gpio3 low
1476
+ 0063 0018 //rl gpio4 input tp-int
1477
+ 0064 0006 //bypass ser gpio4
1478
+ 0066 0000 //rl gpio5 output
1479
+ 0067 0000 //set gpio5 low
14731480 0073 0080
14741481 0074 0007
14751482 0079 000a
....@@ -1514,20 +1521,21 @@
15141521
15151522 i2c5_bu18rl82_pinctrl: i2c5-bu18rl82-pinctrl {
15161523 compatible = "rohm,bu18rl82-pinctrl";
1517
- pinctrl-names = "default","sleep";
1524
+ pinctrl-names = "default","init","sleep";
15181525 pinctrl-0 = <&i2c5_bu18rl82_panel_pins>;
1519
- pinctrl-1 = <&i2c5_bu18rl82_panel_sleep_pins>;
1526
+ pinctrl-1 = <&i2c5_bu18rl82_panel_pins>;
1527
+ pinctrl-2 = <&i2c5_bu18rl82_panel_sleep_pins>;
15201528 status = "okay";
15211529
15221530 i2c5_bu18rl82_panel_pins: panel-pins {
1523
- lcd-bl-pwm {
1524
- pins = "BU18RL82_GPIO0";
1525
- function = "SER_GPIO0_TO_DES";
1531
+ lcd-otp-pin {
1532
+ pins = "BU18RL82_GPIO5";
1533
+ function = "DES_GPIO_OUTPUT_HIGH";
15261534 };
15271535
1528
- lcd-pwr-en {
1529
- pins = "BU18RL82_GPIO1";
1530
- function = "SER_GPIO1_TO_DES";
1536
+ tp-rst {
1537
+ pins = "BU18RL82_GPIO3";
1538
+ function = "DES_GPIO_OUTPUT_HIGH";
15311539 };
15321540
15331541 lcd-rst {
....@@ -1536,18 +1544,23 @@
15361544 };
15371545
15381546 tp-int {
1539
- pins = "BU18RL82_GPIO3";
1547
+ pins = "BU18RL82_GPIO4";
15401548 function = "DES_TO_SER_GPIO3";
15411549 };
15421550
1543
- tp-rst {
1544
- pins = "BU18RL82_GPIO4";
1551
+ 100ms-delay {
1552
+ pins = "BU18RL82_GPIO1";
1553
+ function = "DELAY_100MS";
1554
+ };
1555
+
1556
+ lcd-pwr-en {
1557
+ pins = "BU18RL82_GPIO1";
15451558 function = "DES_GPIO_OUTPUT_HIGH";
15461559 };
15471560
1548
- lcd-otp-pin {
1549
- pins = "BU18RL82_GPIO5";
1550
- function = "DES_GPIO_OUTPUT_HIGH";
1561
+ lcd-bl-pwm {
1562
+ pins = "BU18RL82_GPIO0";
1563
+ function = "SER_GPIO0_TO_DES";
15511564 };
15521565 };
15531566
....@@ -1799,20 +1812,18 @@
17991812 0424 0000
18001813 0425 0020
18011814 0426 0080
1802
- //0057 0000
1803
- //0058 0002
1804
- //0057 0000 //rl gpio0 output lcd_bl_pwm
1805
- //0058 0002 //bypass ser gpio0
1806
- //005a 0000 //rl gpio1 output lcd_pwr_en
1807
- //005b 0003 //bypass ser gpio1
1808
- //005d 0000 //rl gpio2 output lcd_rst
1809
- //005e 0004 //bypass ser gpio2
1810
- //0060 0000 //rl gpio3 output tp-rst
1811
- //0061 0005 //bypass ser gpio3
1812
- //0063 0018 //rl gpio4 input tp-int
1813
- //0064 0006 //bypass ser gpio4
1814
- //0066 0000 //rl gpio5 output
1815
- //0067 0001 //set gpio5 high
1815
+ 0057 0000 //rl gpio0 output lcd_bl_pwm
1816
+ 0058 0000 //set gpio0 low
1817
+ 005a 0000 //rl gpio1 output lcd_pwr_en
1818
+ 005b 0000 //set gpio1 low
1819
+ 005d 0000 //rl gpio2 output lcd_rst
1820
+ 005e 0000 //set gpio2 low
1821
+ 0060 0000 //rl gpio3 output tp-rst
1822
+ 0061 0000 //set gpio3 low
1823
+ 0063 0018 //rl gpio4 input tp-int
1824
+ 0064 0006 //bypass ser gpio4
1825
+ 0066 0000 //rl gpio5 output
1826
+ 0067 0000 //set gpio5 low
18161827
18171828 0073 0080
18181829 0074 0007 //0x0780 = 1920
....@@ -1856,24 +1867,15 @@
18561867
18571868 i2c6_bu18rl82_pinctrl: i2c6-bu18rl82-pinctrl {
18581869 compatible = "rohm,bu18rl82-pinctrl";
1859
- pinctrl-names = "default","sleep";
1870
+ pinctrl-names = "default","init","sleep";
18601871 pinctrl-0 = <&i2c6_bu18rl82_panel_pins>;
1861
- pinctrl-1 = <&i2c6_bu18rl82_panel_sleep_pins>;
1872
+ pinctrl-1 = <&i2c6_bu18rl82_panel_pins>;
1873
+ pinctrl-2 = <&i2c6_bu18rl82_panel_sleep_pins>;
18621874 status = "okay";
18631875
18641876 i2c6_bu18rl82_panel_pins: panel-pins {
1865
- lcd-bl-pwm {
1866
- pins = "BU18RL82_GPIO0";
1867
- function = "SER_GPIO0_TO_DES";
1868
- };
1869
-
1870
- lcd-pwr-en {
1871
- pins = "BU18RL82_GPIO1";
1872
- function = "SER_GPIO1_TO_DES";
1873
- };
1874
-
1875
- lcd-rst {
1876
- pins = "BU18RL82_GPIO2";
1877
+ lcd-otp-pin {
1878
+ pins = "BU18RL82_GPIO5";
18771879 function = "DES_GPIO_OUTPUT_HIGH";
18781880 };
18791881
....@@ -1882,15 +1884,30 @@
18821884 function = "DES_GPIO_OUTPUT_HIGH";
18831885 };
18841886
1887
+ lcd-rst {
1888
+ pins = "BU18RL82_GPIO2";
1889
+ function = "DES_GPIO_OUTPUT_HIGH";
1890
+ };
1891
+
18851892 tp-int {
18861893 pins = "BU18RL82_GPIO4";
18871894 function = "DES_TO_SER_GPIO3";
18881895 };
18891896
1890
- lcd-otp-pin {
1891
- pins = "BU18RL82_GPIO5";
1897
+ 100ms-delay {
1898
+ pins = "BU18RL82_GPIO1";
1899
+ function = "DELAY_100MS";
1900
+ };
1901
+
1902
+ lcd-pwr-en {
1903
+ pins = "BU18RL82_GPIO1";
18921904 function = "DES_GPIO_OUTPUT_HIGH";
18931905 };
1906
+
1907
+ lcd-bl-pwm {
1908
+ pins = "BU18RL82_GPIO0";
1909
+ function = "SER_GPIO0_TO_DES";
1910
+ };
18941911 };
18951912
18961913 i2c6_bu18rl82_panel_sleep_pins: panel-sleep-pins {