1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright 2013 Free Electrons 4*f126890aSEmmanuel Vadot */ 5*f126890aSEmmanuel Vadot 6*f126890aSEmmanuel Vadot/* 7*f126890aSEmmanuel Vadot * The CFA-10055 is an expansion board for the CFA-10036 module and 8*f126890aSEmmanuel Vadot * CFA-10037, thus we need to include the CFA-10037 DTS. 9*f126890aSEmmanuel Vadot */ 10*f126890aSEmmanuel Vadot#include "imx28-cfa10037.dts" 11*f126890aSEmmanuel Vadot 12*f126890aSEmmanuel Vadot/ { 13*f126890aSEmmanuel Vadot model = "Crystalfontz CFA-10056 Board"; 14*f126890aSEmmanuel Vadot compatible = "crystalfontz,cfa10056", "crystalfontz,cfa10037", "crystalfontz,cfa10036", "fsl,imx28"; 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot spi-2 { 17*f126890aSEmmanuel Vadot compatible = "spi-gpio"; 18*f126890aSEmmanuel Vadot pinctrl-names = "default"; 19*f126890aSEmmanuel Vadot pinctrl-0 = <&spi2_pins_cfa10056>; 20*f126890aSEmmanuel Vadot status = "okay"; 21*f126890aSEmmanuel Vadot sck-gpios = <&gpio2 16 0>; 22*f126890aSEmmanuel Vadot mosi-gpios = <&gpio2 17 0>; 23*f126890aSEmmanuel Vadot miso-gpios = <&gpio2 18 0>; 24*f126890aSEmmanuel Vadot cs-gpios = <&gpio3 5 0>; 25*f126890aSEmmanuel Vadot num-chipselects = <1>; 26*f126890aSEmmanuel Vadot #address-cells = <1>; 27*f126890aSEmmanuel Vadot #size-cells = <0>; 28*f126890aSEmmanuel Vadot 29*f126890aSEmmanuel Vadot hx8369: hx8369@0 { 30*f126890aSEmmanuel Vadot compatible = "himax,hx8369a", "himax,hx8369"; 31*f126890aSEmmanuel Vadot reg = <0>; 32*f126890aSEmmanuel Vadot spi-max-frequency = <100000>; 33*f126890aSEmmanuel Vadot spi-cpol; 34*f126890aSEmmanuel Vadot spi-cpha; 35*f126890aSEmmanuel Vadot gpios-reset = <&gpio3 30 0>; 36*f126890aSEmmanuel Vadot }; 37*f126890aSEmmanuel Vadot }; 38*f126890aSEmmanuel Vadot}; 39*f126890aSEmmanuel Vadot 40*f126890aSEmmanuel Vadot&pinctrl { 41*f126890aSEmmanuel Vadot spi2_pins_cfa10056: spi2-cfa10056@0 { 42*f126890aSEmmanuel Vadot reg = <0>; 43*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 44*f126890aSEmmanuel Vadot MX28_PAD_SSP2_SCK__GPIO_2_16 45*f126890aSEmmanuel Vadot MX28_PAD_SSP2_MOSI__GPIO_2_17 46*f126890aSEmmanuel Vadot MX28_PAD_SSP2_MISO__GPIO_2_18 47*f126890aSEmmanuel Vadot MX28_PAD_AUART1_TX__GPIO_3_5 48*f126890aSEmmanuel Vadot >; 49*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_8mA>; 50*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 51*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_ENABLE>; 52*f126890aSEmmanuel Vadot }; 53*f126890aSEmmanuel Vadot 54*f126890aSEmmanuel Vadot lcdif_pins_cfa10056: lcdif-10056@0 { 55*f126890aSEmmanuel Vadot reg = <0>; 56*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 57*f126890aSEmmanuel Vadot MX28_PAD_LCD_RD_E__LCD_VSYNC 58*f126890aSEmmanuel Vadot MX28_PAD_LCD_WR_RWN__LCD_HSYNC 59*f126890aSEmmanuel Vadot MX28_PAD_LCD_RS__LCD_DOTCLK 60*f126890aSEmmanuel Vadot MX28_PAD_LCD_CS__LCD_ENABLE 61*f126890aSEmmanuel Vadot >; 62*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_4mA>; 63*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 64*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_DISABLE>; 65*f126890aSEmmanuel Vadot }; 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel Vadot lcdif_pins_cfa10056_pullup: lcdif-10056-pullup@0 { 68*f126890aSEmmanuel Vadot reg = <0>; 69*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 70*f126890aSEmmanuel Vadot MX28_PAD_LCD_RESET__GPIO_3_30 71*f126890aSEmmanuel Vadot >; 72*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_4mA>; 73*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 74*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_ENABLE>; 75*f126890aSEmmanuel Vadot }; 76*f126890aSEmmanuel Vadot}; 77*f126890aSEmmanuel Vadot 78*f126890aSEmmanuel Vadot&lcdif { 79*f126890aSEmmanuel Vadot pinctrl-names = "default"; 80*f126890aSEmmanuel Vadot pinctrl-0 = <&lcdif_24bit_pins_a 81*f126890aSEmmanuel Vadot &lcdif_pins_cfa10056 82*f126890aSEmmanuel Vadot &lcdif_pins_cfa10056_pullup >; 83*f126890aSEmmanuel Vadot display = <&display0>; 84*f126890aSEmmanuel Vadot status = "okay"; 85*f126890aSEmmanuel Vadot 86*f126890aSEmmanuel Vadot display0: display0 { 87*f126890aSEmmanuel Vadot bits-per-pixel = <32>; 88*f126890aSEmmanuel Vadot bus-width = <24>; 89*f126890aSEmmanuel Vadot 90*f126890aSEmmanuel Vadot display-timings { 91*f126890aSEmmanuel Vadot native-mode = <&timing0>; 92*f126890aSEmmanuel Vadot timing0: timing0 { 93*f126890aSEmmanuel Vadot clock-frequency = <32000000>; 94*f126890aSEmmanuel Vadot hactive = <480>; 95*f126890aSEmmanuel Vadot vactive = <800>; 96*f126890aSEmmanuel Vadot hback-porch = <2>; 97*f126890aSEmmanuel Vadot hfront-porch = <2>; 98*f126890aSEmmanuel Vadot vback-porch = <2>; 99*f126890aSEmmanuel Vadot vfront-porch = <2>; 100*f126890aSEmmanuel Vadot hsync-len = <5>; 101*f126890aSEmmanuel Vadot vsync-len = <5>; 102*f126890aSEmmanuel Vadot hsync-active = <0>; 103*f126890aSEmmanuel Vadot vsync-active = <0>; 104*f126890aSEmmanuel Vadot de-active = <1>; 105*f126890aSEmmanuel Vadot pixelclk-active = <1>; 106*f126890aSEmmanuel Vadot }; 107*f126890aSEmmanuel Vadot }; 108*f126890aSEmmanuel Vadot }; 109*f126890aSEmmanuel Vadot}; 110