1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/display/solomon,ssd1307fb.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Solomon SSD1307 OLED Controller Framebuffer
10 - Maxime Ripard <mripard@kernel.org>
11 - Javier Martinez Canillas <javierm@redhat.com>
16 # Deprecated compatible strings
19 - solomon,ssd1305fb-i2c
20 - solomon,ssd1306fb-i2c
21 - solomon,ssd1307fb-i2c
22 - solomon,ssd1309fb-i2c
41 # Only required for SPI
44 GPIO connected to the controller's D/C# (Data/Command) pin,
45 that is needed for 4-wire SPI to tell the controller if the
46 data sent is for a command register or the display data RAM
50 description: The supply for VBAT
53 $ref: /schemas/types.yaml#/definitions/uint32
56 Height in pixel of the screen driven by the controller
59 $ref: /schemas/types.yaml#/definitions/uint32
62 Width in pixel of the screen driven by the controller
65 $ref: /schemas/types.yaml#/definitions/uint32
68 Offset of pages (band of 8 pixels) that the screen is mapped to
70 solomon,segment-no-remap:
73 Display needs normal (non-inverted) data column to segment mapping
76 $ref: /schemas/types.yaml#/definitions/uint32
79 Offset of columns (COL/SEG) that the screen is mapped to
84 Display uses sequential COM pin configuration
89 Display uses left-right COM pin remap
94 Display uses inverted COM pin scan direction
97 $ref: /schemas/types.yaml#/definitions/uint32
100 Number of the COM pin wired to the first display line
103 $ref: /schemas/types.yaml#/definitions/uint32
106 Length of deselect period (phase 1) in clock cycles
109 $ref: /schemas/types.yaml#/definitions/uint32
112 Length of precharge period (phase 2) in clock cycles. This needs to be
113 the higher, the higher the capacitance of the OLED's pixels is.
116 $ref: /schemas/types.yaml#/definitions/uint32
120 Clock divisor. The default value is controller-dependent.
123 $ref: /schemas/types.yaml#/definitions/uint32
127 Clock frequency, higher value means higher frequency.
128 The default value is controller-dependent.
130 solomon,lookup-table:
131 $ref: /schemas/types.yaml#/definitions/uint8-array
134 8 bit value array of current drive pulse widths for BANK0, and colors A,
135 B, and C. Each value in range of 31 to 63 for pulse widths of 32 to 64.
136 Color D is always width 64.
138 solomon,area-color-enable:
141 Display uses color mode
146 Display runs in low power mode
153 - $ref: /schemas/spi/spi-peripheral-props.yaml#
159 const: sinowealth,sh1106
172 - solomon,ssd1305-i2c
186 - solomon,ssd1306-i2c
200 - solomon,ssd1307-i2c
216 - solomon,ssd1309-i2c
225 unevaluatedProperties: false
230 #address-cells = <1>;
233 ssd1307_i2c: oled@3c {
234 compatible = "solomon,ssd1307";
236 pwms = <&pwm 4 3000>;
237 reset-gpios = <&gpio2 7>;
240 ssd1306_i2c: oled@3d {
241 compatible = "solomon,ssd1306";
243 pwms = <&pwm 4 3000>;
244 reset-gpios = <&gpio2 7>;
247 solomon,com-offset = <32>;
248 solomon,lookup-table = /bits/ 8 <0x3f 0x3f 0x3f 0x3f>;
253 #address-cells = <1>;
256 ssd1307_spi: oled@0 {
257 compatible = "solomon,ssd1307";
259 pwms = <&pwm 4 3000>;
260 reset-gpios = <&gpio2 7>;
261 dc-gpios = <&gpio2 8>;
262 spi-max-frequency = <10000000>;
265 ssd1306_spi: oled@1 {
266 compatible = "solomon,ssd1306";
268 pwms = <&pwm 4 3000>;
269 reset-gpios = <&gpio2 7>;
270 dc-gpios = <&gpio2 8>;
271 spi-max-frequency = <10000000>;
274 solomon,com-offset = <32>;
275 solomon,lookup-table = /bits/ 8 <0x3f 0x3f 0x3f 0x3f>;