1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright 2013 Crystalfontz America, Inc. 4*724ba675SRob Herring * Free Electrons 5*724ba675SRob Herring */ 6*724ba675SRob Herring 7*724ba675SRob Herring/* 8*724ba675SRob Herring * The CFA-10055 is an expansion board for the CFA-10036 module and 9*724ba675SRob Herring * CFA-10037, thus we need to include the CFA-10037 DTS. 10*724ba675SRob Herring */ 11*724ba675SRob Herring#include "imx28-cfa10037.dts" 12*724ba675SRob Herring 13*724ba675SRob Herring/ { 14*724ba675SRob Herring model = "Crystalfontz CFA-10055 Board"; 15*724ba675SRob Herring compatible = "crystalfontz,cfa10055", "crystalfontz,cfa10037", "crystalfontz,cfa10036", "fsl,imx28"; 16*724ba675SRob Herring 17*724ba675SRob Herring spi-2 { 18*724ba675SRob Herring compatible = "spi-gpio"; 19*724ba675SRob Herring pinctrl-names = "default"; 20*724ba675SRob Herring pinctrl-0 = <&spi2_pins_cfa10055>; 21*724ba675SRob Herring status = "okay"; 22*724ba675SRob Herring sck-gpios = <&gpio2 16 0>; 23*724ba675SRob Herring mosi-gpios = <&gpio2 17 0>; 24*724ba675SRob Herring miso-gpios = <&gpio2 18 0>; 25*724ba675SRob Herring cs-gpios = <&gpio3 5 0>; 26*724ba675SRob Herring num-chipselects = <1>; 27*724ba675SRob Herring #address-cells = <1>; 28*724ba675SRob Herring #size-cells = <0>; 29*724ba675SRob Herring 30*724ba675SRob Herring hx8357: hx8357@0 { 31*724ba675SRob Herring compatible = "himax,hx8357b", "himax,hx8357"; 32*724ba675SRob Herring reg = <0>; 33*724ba675SRob Herring spi-max-frequency = <100000>; 34*724ba675SRob Herring spi-cpol; 35*724ba675SRob Herring spi-cpha; 36*724ba675SRob Herring gpios-reset = <&gpio3 30 0>; 37*724ba675SRob Herring }; 38*724ba675SRob Herring }; 39*724ba675SRob Herring 40*724ba675SRob Herring backlight { 41*724ba675SRob Herring compatible = "pwm-backlight"; 42*724ba675SRob Herring pwms = <&pwm 3 5000000>; 43*724ba675SRob Herring brightness-levels = <0 4 8 16 32 64 128 255>; 44*724ba675SRob Herring default-brightness-level = <6>; 45*724ba675SRob Herring }; 46*724ba675SRob Herring}; 47*724ba675SRob Herring 48*724ba675SRob Herring&lcdif { 49*724ba675SRob Herring pinctrl-names = "default"; 50*724ba675SRob Herring pinctrl-0 = <&lcdif_18bit_pins_cfa10055 51*724ba675SRob Herring &lcdif_pins_cfa10055 52*724ba675SRob Herring &lcdif_pins_cfa10055_pullup>; 53*724ba675SRob Herring display = <&display0>; 54*724ba675SRob Herring status = "okay"; 55*724ba675SRob Herring 56*724ba675SRob Herring display0: display0 { 57*724ba675SRob Herring bits-per-pixel = <32>; 58*724ba675SRob Herring bus-width = <18>; 59*724ba675SRob Herring 60*724ba675SRob Herring display-timings { 61*724ba675SRob Herring native-mode = <&timing0>; 62*724ba675SRob Herring timing0: timing0 { 63*724ba675SRob Herring clock-frequency = <9216000>; 64*724ba675SRob Herring hactive = <320>; 65*724ba675SRob Herring vactive = <480>; 66*724ba675SRob Herring hback-porch = <2>; 67*724ba675SRob Herring hfront-porch = <2>; 68*724ba675SRob Herring vback-porch = <2>; 69*724ba675SRob Herring vfront-porch = <2>; 70*724ba675SRob Herring hsync-len = <15>; 71*724ba675SRob Herring vsync-len = <15>; 72*724ba675SRob Herring hsync-active = <0>; 73*724ba675SRob Herring vsync-active = <0>; 74*724ba675SRob Herring de-active = <1>; 75*724ba675SRob Herring pixelclk-active = <1>; 76*724ba675SRob Herring }; 77*724ba675SRob Herring }; 78*724ba675SRob Herring }; 79*724ba675SRob Herring}; 80*724ba675SRob Herring 81*724ba675SRob Herring&lradc { 82*724ba675SRob Herring fsl,lradc-touchscreen-wires = <4>; 83*724ba675SRob Herring status = "okay"; 84*724ba675SRob Herring}; 85*724ba675SRob Herring 86*724ba675SRob Herring&pinctrl { 87*724ba675SRob Herring spi2_pins_cfa10055: spi2-cfa10055@0 { 88*724ba675SRob Herring reg = <0>; 89*724ba675SRob Herring fsl,pinmux-ids = < 90*724ba675SRob Herring MX28_PAD_SSP2_SCK__GPIO_2_16 91*724ba675SRob Herring MX28_PAD_SSP2_MOSI__GPIO_2_17 92*724ba675SRob Herring MX28_PAD_SSP2_MISO__GPIO_2_18 93*724ba675SRob Herring MX28_PAD_AUART1_TX__GPIO_3_5 94*724ba675SRob Herring >; 95*724ba675SRob Herring fsl,drive-strength = <MXS_DRIVE_8mA>; 96*724ba675SRob Herring fsl,voltage = <MXS_VOLTAGE_HIGH>; 97*724ba675SRob Herring fsl,pull-up = <MXS_PULL_ENABLE>; 98*724ba675SRob Herring }; 99*724ba675SRob Herring 100*724ba675SRob Herring lcdif_18bit_pins_cfa10055: lcdif-18bit@0 { 101*724ba675SRob Herring reg = <0>; 102*724ba675SRob Herring fsl,pinmux-ids = < 103*724ba675SRob Herring MX28_PAD_LCD_D00__LCD_D0 104*724ba675SRob Herring MX28_PAD_LCD_D01__LCD_D1 105*724ba675SRob Herring MX28_PAD_LCD_D02__LCD_D2 106*724ba675SRob Herring MX28_PAD_LCD_D03__LCD_D3 107*724ba675SRob Herring MX28_PAD_LCD_D04__LCD_D4 108*724ba675SRob Herring MX28_PAD_LCD_D05__LCD_D5 109*724ba675SRob Herring MX28_PAD_LCD_D06__LCD_D6 110*724ba675SRob Herring MX28_PAD_LCD_D07__LCD_D7 111*724ba675SRob Herring MX28_PAD_LCD_D08__LCD_D8 112*724ba675SRob Herring MX28_PAD_LCD_D09__LCD_D9 113*724ba675SRob Herring MX28_PAD_LCD_D10__LCD_D10 114*724ba675SRob Herring MX28_PAD_LCD_D11__LCD_D11 115*724ba675SRob Herring MX28_PAD_LCD_D12__LCD_D12 116*724ba675SRob Herring MX28_PAD_LCD_D13__LCD_D13 117*724ba675SRob Herring MX28_PAD_LCD_D14__LCD_D14 118*724ba675SRob Herring MX28_PAD_LCD_D15__LCD_D15 119*724ba675SRob Herring MX28_PAD_LCD_D16__LCD_D16 120*724ba675SRob Herring MX28_PAD_LCD_D17__LCD_D17 121*724ba675SRob Herring >; 122*724ba675SRob Herring fsl,drive-strength = <MXS_DRIVE_4mA>; 123*724ba675SRob Herring fsl,voltage = <MXS_VOLTAGE_HIGH>; 124*724ba675SRob Herring fsl,pull-up = <MXS_PULL_DISABLE>; 125*724ba675SRob Herring }; 126*724ba675SRob Herring 127*724ba675SRob Herring lcdif_pins_cfa10055: lcdif-evk@0 { 128*724ba675SRob Herring reg = <0>; 129*724ba675SRob Herring fsl,pinmux-ids = < 130*724ba675SRob Herring MX28_PAD_LCD_RD_E__LCD_VSYNC 131*724ba675SRob Herring MX28_PAD_LCD_WR_RWN__LCD_HSYNC 132*724ba675SRob Herring MX28_PAD_LCD_RS__LCD_DOTCLK 133*724ba675SRob Herring MX28_PAD_LCD_CS__LCD_ENABLE 134*724ba675SRob Herring >; 135*724ba675SRob Herring fsl,drive-strength = <MXS_DRIVE_4mA>; 136*724ba675SRob Herring fsl,voltage = <MXS_VOLTAGE_HIGH>; 137*724ba675SRob Herring fsl,pull-up = <MXS_PULL_DISABLE>; 138*724ba675SRob Herring }; 139*724ba675SRob Herring 140*724ba675SRob Herring lcdif_pins_cfa10055_pullup: lcdif-10055-pullup@0 { 141*724ba675SRob Herring reg = <0>; 142*724ba675SRob Herring fsl,pinmux-ids = < 143*724ba675SRob Herring MX28_PAD_LCD_RESET__GPIO_3_30 144*724ba675SRob Herring >; 145*724ba675SRob Herring fsl,drive-strength = <MXS_DRIVE_4mA>; 146*724ba675SRob Herring fsl,voltage = <MXS_VOLTAGE_HIGH>; 147*724ba675SRob Herring fsl,pull-up = <MXS_PULL_ENABLE>; 148*724ba675SRob Herring }; 149*724ba675SRob Herring}; 150*724ba675SRob Herring 151*724ba675SRob Herring&pwm { 152*724ba675SRob Herring pinctrl-names = "default"; 153*724ba675SRob Herring pinctrl-0 = <&pwm3_pins_b>; 154*724ba675SRob Herring status = "okay"; 155*724ba675SRob Herring}; 156