Brooklyn/arch/arm/boot/dts/overlays/fbtft-overlay.dts
2021-11-09 16:52:08 +05:00

612 lines
14 KiB
Plaintext

/*
* 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 */
};
};