Merge tag 'v5.15.57' into rpi-5.15.y
[platform/kernel/linux-rpi.git] / arch / arm / boot / dts / overlays / ssd1306-spi-overlay.dts
1 /*
2  * Device Tree overlay for SSD1306 based SPI OLED 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                         ssd1306_pins: ssd1306_pins {
37                                 brcm,pins = <25 24>;
38                                 brcm,function = <1 1>; /* 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                         ssd1306: ssd1306@0{
51                                 compatible = "solomon,ssd1306";
52                                 reg = <0>;
53                                 pinctrl-names = "default";
54                                 pinctrl-0 = <&ssd1306_pins>;
55
56                                 spi-max-frequency = <10000000>;
57                                 bgr = <0>;
58                                 bpp = <1>;
59                                 rotate = <0>;
60                                 fps = <25>;
61                                 buswidth = <8>;
62                                 reset-gpios = <&gpio 25 1>;
63                                 dc-gpios = <&gpio 24 0>;
64                                 debug = <0>;
65
66                                 solomon,height = <64>;
67                                 solomon,width = <128>;
68                                 solomon,page-offset = <0>;
69                         };
70                 };
71         };
72
73         __overrides__ {
74                 speed     = <&ssd1306>,"spi-max-frequency:0";
75                 rotate    = <&ssd1306>,"rotate:0";
76                 fps       = <&ssd1306>,"fps:0";
77                 debug     = <&ssd1306>,"debug:0";
78                 dc_pin    = <&ssd1306>,"dc-gpios:4",
79                             <&ssd1306_pins>,"brcm,pins:4";
80                 reset_pin = <&ssd1306>,"reset-gpios:4",
81                             <&ssd1306_pins>,"brcm,pins:0";
82                 height    = <&ssd1306>,"solomon,height:0";
83         };
84 };