Merge tag 'v5.15.57' into rpi-5.15.y
[platform/kernel/linux-rpi.git] / arch / arm / boot / dts / overlays / hy28a-overlay.dts
1 /*
2  * Device Tree overlay for HY28A display
3  *
4  */
5
6 /dts-v1/;
7 /plugin/;
8
9 / {
10         compatible = "brcm,bcm2835";
11
12         fragment@0 {
13                 target = <&spi0>;
14                 __overlay__ {
15                         status = "okay";
16                 };
17         };
18
19         fragment@1 {
20                 target = <&spidev0>;
21                 __overlay__ {
22                         status = "disabled";
23                 };
24         };
25
26         fragment@2 {
27                 target = <&spidev1>;
28                 __overlay__ {
29                         status = "disabled";
30                 };
31         };
32
33         fragment@3 {
34                 target = <&gpio>;
35                 __overlay__ {
36                         hy28a_pins: hy28a_pins {
37                                 brcm,pins = <17 25 18>;
38                                 brcm,function = <0 1 1>; /* in out out */
39                         };
40                 };
41         };
42
43         fragment@4 {
44                 target = <&spi0>;
45                 __overlay__ {
46                         /* needed to avoid dtc warning */
47                         #address-cells = <1>;
48                         #size-cells = <0>;
49
50                         hy28a: hy28a@0{
51                                 compatible = "ilitek,ili9320";
52                                 reg = <0>;
53                                 pinctrl-names = "default";
54                                 pinctrl-0 = <&hy28a_pins>;
55
56                                 spi-max-frequency = <32000000>;
57                                 spi-cpol;
58                                 spi-cpha;
59                                 rotate = <270>;
60                                 bgr;
61                                 fps = <50>;
62                                 buswidth = <8>;
63                                 startbyte = <0x70>;
64                                 reset-gpios = <&gpio 25 1>;
65                                 led-gpios = <&gpio 18 1>;
66                                 debug = <0>;
67                         };
68
69                         hy28a_ts: hy28a-ts@1 {
70                                 compatible = "ti,ads7846";
71                                 reg = <1>;
72
73                                 spi-max-frequency = <2000000>;
74                                 interrupts = <17 2>; /* high-to-low edge triggered */
75                                 interrupt-parent = <&gpio>;
76                                 pendown-gpio = <&gpio 17 0>;
77                                 ti,x-plate-ohms = /bits/ 16 <100>;
78                                 ti,pressure-max = /bits/ 16 <255>;
79                         };
80                 };
81         };
82         __overrides__ {
83                 speed =         <&hy28a>,"spi-max-frequency:0";
84                 rotate =        <&hy28a>,"rotate:0";
85                 fps =           <&hy28a>,"fps:0";
86                 debug =         <&hy28a>,"debug:0";
87                 xohms =         <&hy28a_ts>,"ti,x-plate-ohms;0";
88                 resetgpio =     <&hy28a>,"reset-gpios:4",
89                                 <&hy28a_pins>, "brcm,pins:4";
90                 ledgpio =       <&hy28a>,"led-gpios:4",
91                                 <&hy28a_pins>, "brcm,pins:8";
92         };
93 };