/* * Device Tree overlay for fbtft drivers */ /dts-v1/; /plugin/; / { compatible = "brcm,bcm2835"; /* adafruit18 */ fragment@0 { target = <&display>; __dormant__ { compatible = "sitronix,st7735r"; spi-max-frequency = <32000000>; gamma = "02 1c 07 12 37 32 29 2d 29 25 2B 39 00 01 03 10\n03 1d 07 06 2E 2C 29 2D 2E 2E 37 3F 00 00 02 10"; }; }; /* adafruit22 */ fragment@1 { target = <&display>; __dormant__ { compatible = "himax,hx8340bn"; spi-max-frequency = <32000000>; buswidth = <9>; bgr; }; }; /* adafruit22a */ fragment@2 { target = <&display>; __dormant__ { compatible = "ilitek,ili9340"; spi-max-frequency = <32000000>; bgr; }; }; /* adafruit28 */ fragment@3 { target = <&display>; __dormant__ { compatible = "ilitek,ili9341"; spi-max-frequency = <32000000>; bgr; }; }; /* adafruit13m */ fragment@4 { target = <&display>; __dormant__ { compatible = "solomon,ssd1306"; spi-max-frequency = <16000000>; }; }; /* admatec_c-berry28 */ fragment@5 { target = <&display>; __dormant__ { compatible = "sitronix,st7789v"; spi-max-frequency = <48000000>; init = <0x01000011 0x02000078 0x0100003A 0x05 0x010000B2 0x0C 0x0C 0x00 0x33 0x33 0x010000B7 0x35 0x010000C2 0x01 0xFF 0x010000C3 0x17 0x010000C4 0x20 0x010000BB 0x17 0x010000C5 0x20 0x010000D0 0xA4 0xA1 0x01000029>; gamma = "D0 00 14 15 13 2C 42 43 4E 09 16 14 18 21\nD0 00 14 15 13 0B 43 55 53 0C 17 14 23 20"; }; }; /* dogs102 */ fragment@6 { target = <&display>; __dormant__ { compatible = "UltraChip,uc1701"; spi-max-frequency = <8000000>; bgr; }; }; /* er_tftm050_2 */ fragment@7 { target = <&display>; __dormant__ { compatible = "raio,ra8875"; spi-max-frequency = <5000000>; spi-cpha; spi-cpol; width = <480>; height = <272>; bgr; }; }; /* er_tftm070_5 */ fragment@8 { target = <&display>; __dormant__ { compatible = "raio,ra8875"; spi-max-frequency = <5000000>; spi-cpha; spi-cpol; width = <800>; height = <480>; bgr; }; }; /* ew24ha0 */ fragment@9 { target = <&display>; __dormant__ { compatible = "ultrachip,uc1611"; spi-max-frequency = <32000000>; spi-cpha; spi-cpol; }; }; /* ew24ha0_9bit */ fragment@10 { target = <&display>; __dormant__ { compatible = "ultrachip,uc1611"; spi-max-frequency = <32000000>; spi-cpha; spi-cpol; buswidth = <9>; }; }; /* freetronicsoled128 */ fragment@11 { target = <&display>; __dormant__ { compatible = "solomon,ssd1351"; spi-max-frequency = <20000000>; backlight = <2>; /* FBTFT_ONBOARD_BACKLIGHT */ bgr; }; }; /* hy28a */ fragment@12 { target = <&display>; __dormant__ { compatible = "ilitek,ili9320"; spi-max-frequency = <32000000>; spi-cpha; spi-cpol; startbyte = <0x70>; bgr; }; }; /* hy28b */ fragment@13 { target = <&display>; __dormant__ { compatible = "ilitek,ili9325"; spi-max-frequency = <48000000>; spi-cpha; spi-cpol; init = <0x010000e7 0x0010 0x01000000 0x0001 0x01000001 0x0100 0x01000002 0x0700 0x01000003 0x1030 0x01000004 0x0000 0x01000008 0x0207 0x01000009 0x0000 0x0100000a 0x0000 0x0100000c 0x0001 0x0100000d 0x0000 0x0100000f 0x0000 0x01000010 0x0000 0x01000011 0x0007 0x01000012 0x0000 0x01000013 0x0000 0x02000032 0x01000010 0x1590 0x01000011 0x0227 0x02000032 0x01000012 0x009c 0x02000032 0x01000013 0x1900 0x01000029 0x0023 0x0100002b 0x000e 0x02000032 0x01000020 0x0000 0x01000021 0x0000 0x02000032 0x01000050 0x0000 0x01000051 0x00ef 0x01000052 0x0000 0x01000053 0x013f 0x01000060 0xa700 0x01000061 0x0001 0x0100006a 0x0000 0x01000080 0x0000 0x01000081 0x0000 0x01000082 0x0000 0x01000083 0x0000 0x01000084 0x0000 0x01000085 0x0000 0x01000090 0x0010 0x01000092 0x0000 0x01000093 0x0003 0x01000095 0x0110 0x01000097 0x0000 0x01000098 0x0000 0x01000007 0x0133 0x01000020 0x0000 0x01000021 0x0000 0x02000064>; startbyte = <0x70>; bgr; fps = <50>; gamma = "04 1F 4 7 7 0 7 7 6 0\n0F 00 1 7 4 0 0 0 6 7"; }; }; /* itdb28_spi */ fragment@14 { target = <&display>; __dormant__ { compatible = "ilitek,ili9325"; spi-max-frequency = <32000000>; bgr; }; }; /* mi0283qt-2 */ fragment@15 { target = <&display>; __dormant__ { compatible = "himax,hx8347d"; spi-max-frequency = <32000000>; startbyte = <0x70>; bgr; }; }; /* mi0283qt-9a */ fragment@16 { target = <&display>; __dormant__ { compatible = "ilitek,ili9341"; spi-max-frequency = <32000000>; buswidth = <9>; bgr; }; }; /* nokia3310 */ fragment@17 { target = <&display>; __dormant__ { compatible = "philips,pcd8544"; spi-max-frequency = <400000>; }; }; /* nokia3310a */ fragment@18 { target = <&display>; __dormant__ { compatible = "teralane,tls8204"; spi-max-frequency = <1000000>; }; }; /* nokia5110 */ fragment@19 { target = <&display>; __dormant__ { compatible = "ilitek,ili9163"; spi-max-frequency = <12000000>; bgr; }; }; /* piscreen */ fragment@20 { target = <&display>; __dormant__ { compatible = "ilitek,ili9486"; spi-max-frequency = <32000000>; regwidth = <16>; bgr; }; }; /* pitft */ fragment@21 { target = <&display>; __dormant__ { compatible = "ilitek,ili9340"; spi-max-frequency = <32000000>; init = <0x01000001 0x02000005 0x01000028 0x010000EF 0x03 0x80 0x02 0x010000CF 0x00 0xC1 0x30 0x010000ED 0x64 0x03 0x12 0x81 0x010000E8 0x85 0x00 0x78 0x010000CB 0x39 0x2C 0x00 0x34 0x02 0x010000F7 0x20 0x010000EA 0x00 0x00 0x010000C0 0x23 0x010000C1 0x10 0x010000C5 0x3E 0x28 0x010000C7 0x86 0x0100003A 0x55 0x010000B1 0x00 0x18 0x010000B6 0x08 0x82 0x27 0x010000F2 0x00 0x01000026 0x01 0x010000E0 0x0F 0x31 0x2B 0x0C 0x0E 0x08 0x4E 0xF1 0x37 0x07 0x10 0x03 0x0E 0x09 0x00 0x010000E1 0x00 0x0E 0x14 0x03 0x11 0x07 0x31 0xC1 0x48 0x08 0x0F 0x0C 0x31 0x36 0x0F 0x01000011 0x02000064 0x01000029 0x02000014>; bgr; }; }; /* pioled */ fragment@22 { target = <&display>; __dormant__ { compatible = "solomon,ssd1351"; spi-max-frequency = <20000000>; bgr; gamma = "0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4"; }; }; /* rpi-display */ fragment@23 { target = <&display>; __dormant__ { compatible = "ilitek,ili9341"; spi-max-frequency = <32000000>; bgr; }; }; /* sainsmart18 */ fragment@24 { target = <&display>; __dormant__ { compatible = "sitronix,st7735r"; spi-max-frequency = <32000000>; }; }; /* sainsmart32_spi */ fragment@25 { target = <&display>; __dormant__ { compatible = "solomon,ssd1289"; spi-max-frequency = <16000000>; bgr; }; }; /* tinylcd35 */ fragment@26 { target = <&display>; __dormant__ { compatible = "neosec,tinylcd"; spi-max-frequency = <32000000>; bgr; }; }; /* tm022hdh26 */ fragment@27 { target = <&display>; __dormant__ { compatible = "ilitek,ili9341"; spi-max-frequency = <32000000>; bgr; }; }; /* tontec35_9481 - boards before 02 July 2014 */ fragment@28 { target = <&display>; __dormant__ { compatible = "ilitek,ili9481"; spi-max-frequency = <128000000>; spi-cpha; spi-cpol; bgr; }; }; /* tontec35_9486 - boards after 02 July 2014 */ fragment@29 { target = <&display>; __dormant__ { compatible = "ilitek,ili9486"; spi-max-frequency = <128000000>; spi-cpha; spi-cpol; bgr; }; }; /* waveshare32b */ fragment@30 { target = <&display>; __dormant__ { compatible = "ilitek,ili9340"; spi-max-frequency = <48000000>; init = <0x010000CB 0x39 0x2C 0x00 0x34 0x02 0x010000CF 0x00 0xC1 0x30 0x010000E8 0x85 0x00 0x78 0x010000EA 0x00 0x00 0x010000ED 0x64 0x03 0x12 0x81 0x010000F7 0x20 0x010000C0 0x23 0x010000C1 0x10 0x010000C5 0x3E 0x28 0x010000C7 0x86 0x01000036 0x28 0x0100003A 0x55 0x010000B1 0x00 0x18 0x010000B6 0x08 0x82 0x27 0x010000F2 0x00 0x01000026 0x01 0x010000E0 0x0F 0x31 0x2B 0x0C 0x0E 0x08 0x4E 0xF1 0x37 0x07 0x10 0x03 0x0E 0x09 0x00 0x010000E1 0x00 0x0E 0x14 0x03 0x11 0x07 0x31 0xC1 0x48 0x08 0x0F 0x0C 0x31 0x36 0x0F 0x01000011 0x02000078 0x01000029 0x0100002C>; bgr; }; }; /* waveshare22 */ fragment@31 { target = <&display>; __dormant__ { compatible = "hitachi,bd663474"; spi-max-frequency = <32000000>; spi-cpha; spi-cpol; }; }; spidev_fragment: fragment@100 { target-path = "spi0/spidev@0"; __overlay__ { status = "disabled"; }; }; display_fragment: fragment@101 { target = <&spi0>; __overlay__ { /* needed to avoid dtc warning */ #address-cells = <1>; #size-cells = <0>; status = "okay"; display: display@0{ reg = <0>; spi-max-frequency = <32000000>; fps = <30>; buswidth = <8>; }; }; }; __overrides__ { spi0-0 = <&display_fragment>, "target:0=",<&spi0>, <&spidev_fragment>, "target-path=spi0/spidev@0", <&display>, "reg:0=0"; spi0-1 = <&display_fragment>, "target:0=",<&spi0>, <&spidev_fragment>, "target-path=spi0/spidev@1", <&display>, "reg:0=1"; spi1-0 = <&display_fragment>, "target:0=",<&spi1>, <&spidev_fragment>, "target-path=spi1/spidev@0", <&display>, "reg:0=0"; spi1-1 = <&display_fragment>, "target:0=",<&spi1>, <&spidev_fragment>, "target-path=spi1/spidev@1", <&display>, "reg:0=1"; spi1-2 = <&display_fragment>, "target:0=",<&spi1>, <&spidev_fragment>, "target-path=spi1/spidev@2", <&display>, "reg:0=2"; spi2-0 = <&display_fragment>, "target:0=",<&spi2>, <&spidev_fragment>, "target-path=spi2/spidev@0", <&display>, "reg:0=0"; spi2-1 = <&display_fragment>, "target:0=",<&spi2>, <&spidev_fragment>, "target-path=spi2/spidev@1", <&display>, "reg:0=1"; spi2-2 = <&display_fragment>, "target:0=",<&spi2>, <&spidev_fragment>, "target-path=spi2/spidev@2", <&display>, "reg:0=2"; speed = <&display>, "spi-max-frequency:0"; cpha = <&display>, "spi-cpha?"; cpol = <&display>, "spi-cpol?"; /* Displays */ adafruit18 = <0>, "+0"; adafruit22 = <0>, "+1"; adafruit22a = <0>, "+2"; adafruit28 = <0>, "+3"; adafruit13m = <0>, "+4"; admatec_c-berry28 = <0>, "+5"; dogs102 = <0>, "+6"; er_tftm050_2 = <0>, "+7"; er_tftm070_5 = <0>, "+8"; ew24ha0 = <0>, "+9"; ew24ha0_9bit = <0>, "+10"; freetronicsoled128 = <0>, "+11"; hy28a = <0>, "+12"; hy28b = <0>, "+13"; itdb28_spi = <0>, "+14"; mi0283qt-2 = <0>, "+15"; mi0283qt-9a = <0>, "+16"; nokia3310 = <0>, "+17"; nokia3310a = <0>, "+18"; nokia5110 = <0>, "+19"; piscreen = <0>, "+20"; pitft = <0>, "+21"; pioled = <0>, "+22"; rpi-display = <0>, "+23"; sainsmart18 = <0>, "+24"; sainsmart32_spi = <0>, "+25"; tinylcd35 = <0>, "+26"; tm022hdh26 = <0>, "+27"; tontec35_9481 = <0>, "+28"; tontec35_9486 = <0>, "+29"; waveshare32b = <0>, "+30"; waveshare22 = <0>, "+31"; /* Controllers */ bd663474 = <&display>, "compatible=hitachi,bd663474"; hx8340bn = <&display>, "compatible=himax,hx8340bn"; hx8347d = <&display>, "compatible=himax,hx8347d"; hx8353d = <&display>, "compatible=himax,hx8353d"; hx8357d = <&display>, "compatible=himax,hx8357d"; ili9163 = <&display>, "compatible=ilitek,ili9163"; ili9320 = <&display>, "compatible=ilitek,ili9320"; ili9325 = <&display>, "compatible=ilitek,ili9325"; ili9340 = <&display>, "compatible=ilitek,ili9340"; ili9341 = <&display>, "compatible=ilitek,ili9341"; ili9481 = <&display>, "compatible=ilitek,ili9481"; ili9486 = <&display>, "compatible=ilitek,ili9486"; pcd8544 = <&display>, "compatible=philips,pcd8544"; ra8875 = <&display>, "compatible=raio,ra8875"; s6d02a1 = <&display>, "compatible=samsung,s6d02a1"; s6d1121 = <&display>, "compatible=samsung,s6d1121"; seps525 = <&display>, "compatible=syncoam,seps525"; sh1106 = <&display>, "compatible=sinowealth,sh1106"; ssd1289 = <&display>, "compatible=solomon,ssd1289"; ssd1305 = <&display>, "compatible=solomon,ssd1305"; ssd1306 = <&display>, "compatible=solomon,ssd1306"; ssd1325 = <&display>, "compatible=solomon,ssd1325"; ssd1331 = <&display>, "compatible=solomon,ssd1331"; ssd1351 = <&display>, "compatible=solomon,ssd1351"; st7735r = <&display>, "compatible=sitronix,st7735r"; st7789v = <&display>, "compatible=sitronix,st7789v"; tls8204 = <&display>, "compatible=teralane,tls8204"; uc1611 = <&display>, "compatible=ultrachip,uc1611"; uc1701 = <&display>, "compatible=UltraChip,uc1701"; upd161704 = <&display>, "compatible=nec,upd161704"; width = <&display>, "width:0"; height = <&display>, "height:0"; regwidth = <&display>, "regwidth:0"; buswidth = <&display>, "buswidth:0"; debug = <&display>, "debug:0"; rotate = <&display>, "rotate:0"; bgr = <&display>, "bgr?"; fps = <&display>, "fps:0"; txbuflen = <&display>, "txbuflen:0"; startbyte = <&display>, "startbyte:0"; gamma = <&display>, "gamma"; reset_pin = <&display>, "reset-gpios:0=", <&gpio>, <&display>, "reset-gpios:4", <&display>, "reset-gpios:8=1"; /* GPIO_ACTIVE_LOW */ dc_pin = <&display>, "dc-gpios:0=", <&gpio>, <&display>, "dc-gpios:4", <&display>, "dc-gpios:8=0"; /* GPIO_ACTIVE_HIGH */ led_pin = <&display>, "led-gpios:0=", <&gpio>, <&display>, "led-gpios:4", <&display>, "led-gpios:8=0"; /* GPIO_ACTIVE_HIGH */ }; };