162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright 2013 Crystalfontz America, Inc. 462306a36Sopenharmony_ci * Free Electrons 562306a36Sopenharmony_ci */ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci/* 862306a36Sopenharmony_ci * The CFA-10055 is an expansion board for the CFA-10036 module and 962306a36Sopenharmony_ci * CFA-10037, thus we need to include the CFA-10037 DTS. 1062306a36Sopenharmony_ci */ 1162306a36Sopenharmony_ci#include "imx28-cfa10037.dts" 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci model = "Crystalfontz CFA-10055 Board"; 1562306a36Sopenharmony_ci compatible = "crystalfontz,cfa10055", "crystalfontz,cfa10037", "crystalfontz,cfa10036", "fsl,imx28"; 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci spi-2 { 1862306a36Sopenharmony_ci compatible = "spi-gpio"; 1962306a36Sopenharmony_ci pinctrl-names = "default"; 2062306a36Sopenharmony_ci pinctrl-0 = <&spi2_pins_cfa10055>; 2162306a36Sopenharmony_ci status = "okay"; 2262306a36Sopenharmony_ci sck-gpios = <&gpio2 16 0>; 2362306a36Sopenharmony_ci mosi-gpios = <&gpio2 17 0>; 2462306a36Sopenharmony_ci miso-gpios = <&gpio2 18 0>; 2562306a36Sopenharmony_ci cs-gpios = <&gpio3 5 0>; 2662306a36Sopenharmony_ci num-chipselects = <1>; 2762306a36Sopenharmony_ci #address-cells = <1>; 2862306a36Sopenharmony_ci #size-cells = <0>; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci hx8357: hx8357@0 { 3162306a36Sopenharmony_ci compatible = "himax,hx8357b", "himax,hx8357"; 3262306a36Sopenharmony_ci reg = <0>; 3362306a36Sopenharmony_ci spi-max-frequency = <100000>; 3462306a36Sopenharmony_ci spi-cpol; 3562306a36Sopenharmony_ci spi-cpha; 3662306a36Sopenharmony_ci gpios-reset = <&gpio3 30 0>; 3762306a36Sopenharmony_ci }; 3862306a36Sopenharmony_ci }; 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci backlight { 4162306a36Sopenharmony_ci compatible = "pwm-backlight"; 4262306a36Sopenharmony_ci pwms = <&pwm 3 5000000>; 4362306a36Sopenharmony_ci brightness-levels = <0 4 8 16 32 64 128 255>; 4462306a36Sopenharmony_ci default-brightness-level = <6>; 4562306a36Sopenharmony_ci }; 4662306a36Sopenharmony_ci}; 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci&lcdif { 4962306a36Sopenharmony_ci pinctrl-names = "default"; 5062306a36Sopenharmony_ci pinctrl-0 = <&lcdif_18bit_pins_cfa10055 5162306a36Sopenharmony_ci &lcdif_pins_cfa10055 5262306a36Sopenharmony_ci &lcdif_pins_cfa10055_pullup>; 5362306a36Sopenharmony_ci display = <&display0>; 5462306a36Sopenharmony_ci status = "okay"; 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci display0: display0 { 5762306a36Sopenharmony_ci bits-per-pixel = <32>; 5862306a36Sopenharmony_ci bus-width = <18>; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci display-timings { 6162306a36Sopenharmony_ci native-mode = <&timing0>; 6262306a36Sopenharmony_ci timing0: timing0 { 6362306a36Sopenharmony_ci clock-frequency = <9216000>; 6462306a36Sopenharmony_ci hactive = <320>; 6562306a36Sopenharmony_ci vactive = <480>; 6662306a36Sopenharmony_ci hback-porch = <2>; 6762306a36Sopenharmony_ci hfront-porch = <2>; 6862306a36Sopenharmony_ci vback-porch = <2>; 6962306a36Sopenharmony_ci vfront-porch = <2>; 7062306a36Sopenharmony_ci hsync-len = <15>; 7162306a36Sopenharmony_ci vsync-len = <15>; 7262306a36Sopenharmony_ci hsync-active = <0>; 7362306a36Sopenharmony_ci vsync-active = <0>; 7462306a36Sopenharmony_ci de-active = <1>; 7562306a36Sopenharmony_ci pixelclk-active = <1>; 7662306a36Sopenharmony_ci }; 7762306a36Sopenharmony_ci }; 7862306a36Sopenharmony_ci }; 7962306a36Sopenharmony_ci}; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci&lradc { 8262306a36Sopenharmony_ci fsl,lradc-touchscreen-wires = <4>; 8362306a36Sopenharmony_ci status = "okay"; 8462306a36Sopenharmony_ci}; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci&pinctrl { 8762306a36Sopenharmony_ci spi2_pins_cfa10055: spi2-cfa10055@0 { 8862306a36Sopenharmony_ci reg = <0>; 8962306a36Sopenharmony_ci fsl,pinmux-ids = < 9062306a36Sopenharmony_ci MX28_PAD_SSP2_SCK__GPIO_2_16 9162306a36Sopenharmony_ci MX28_PAD_SSP2_MOSI__GPIO_2_17 9262306a36Sopenharmony_ci MX28_PAD_SSP2_MISO__GPIO_2_18 9362306a36Sopenharmony_ci MX28_PAD_AUART1_TX__GPIO_3_5 9462306a36Sopenharmony_ci >; 9562306a36Sopenharmony_ci fsl,drive-strength = <MXS_DRIVE_8mA>; 9662306a36Sopenharmony_ci fsl,voltage = <MXS_VOLTAGE_HIGH>; 9762306a36Sopenharmony_ci fsl,pull-up = <MXS_PULL_ENABLE>; 9862306a36Sopenharmony_ci }; 9962306a36Sopenharmony_ci 10062306a36Sopenharmony_ci lcdif_18bit_pins_cfa10055: lcdif-18bit@0 { 10162306a36Sopenharmony_ci reg = <0>; 10262306a36Sopenharmony_ci fsl,pinmux-ids = < 10362306a36Sopenharmony_ci MX28_PAD_LCD_D00__LCD_D0 10462306a36Sopenharmony_ci MX28_PAD_LCD_D01__LCD_D1 10562306a36Sopenharmony_ci MX28_PAD_LCD_D02__LCD_D2 10662306a36Sopenharmony_ci MX28_PAD_LCD_D03__LCD_D3 10762306a36Sopenharmony_ci MX28_PAD_LCD_D04__LCD_D4 10862306a36Sopenharmony_ci MX28_PAD_LCD_D05__LCD_D5 10962306a36Sopenharmony_ci MX28_PAD_LCD_D06__LCD_D6 11062306a36Sopenharmony_ci MX28_PAD_LCD_D07__LCD_D7 11162306a36Sopenharmony_ci MX28_PAD_LCD_D08__LCD_D8 11262306a36Sopenharmony_ci MX28_PAD_LCD_D09__LCD_D9 11362306a36Sopenharmony_ci MX28_PAD_LCD_D10__LCD_D10 11462306a36Sopenharmony_ci MX28_PAD_LCD_D11__LCD_D11 11562306a36Sopenharmony_ci MX28_PAD_LCD_D12__LCD_D12 11662306a36Sopenharmony_ci MX28_PAD_LCD_D13__LCD_D13 11762306a36Sopenharmony_ci MX28_PAD_LCD_D14__LCD_D14 11862306a36Sopenharmony_ci MX28_PAD_LCD_D15__LCD_D15 11962306a36Sopenharmony_ci MX28_PAD_LCD_D16__LCD_D16 12062306a36Sopenharmony_ci MX28_PAD_LCD_D17__LCD_D17 12162306a36Sopenharmony_ci >; 12262306a36Sopenharmony_ci fsl,drive-strength = <MXS_DRIVE_4mA>; 12362306a36Sopenharmony_ci fsl,voltage = <MXS_VOLTAGE_HIGH>; 12462306a36Sopenharmony_ci fsl,pull-up = <MXS_PULL_DISABLE>; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci lcdif_pins_cfa10055: lcdif-evk@0 { 12862306a36Sopenharmony_ci reg = <0>; 12962306a36Sopenharmony_ci fsl,pinmux-ids = < 13062306a36Sopenharmony_ci MX28_PAD_LCD_RD_E__LCD_VSYNC 13162306a36Sopenharmony_ci MX28_PAD_LCD_WR_RWN__LCD_HSYNC 13262306a36Sopenharmony_ci MX28_PAD_LCD_RS__LCD_DOTCLK 13362306a36Sopenharmony_ci MX28_PAD_LCD_CS__LCD_ENABLE 13462306a36Sopenharmony_ci >; 13562306a36Sopenharmony_ci fsl,drive-strength = <MXS_DRIVE_4mA>; 13662306a36Sopenharmony_ci fsl,voltage = <MXS_VOLTAGE_HIGH>; 13762306a36Sopenharmony_ci fsl,pull-up = <MXS_PULL_DISABLE>; 13862306a36Sopenharmony_ci }; 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci lcdif_pins_cfa10055_pullup: lcdif-10055-pullup@0 { 14162306a36Sopenharmony_ci reg = <0>; 14262306a36Sopenharmony_ci fsl,pinmux-ids = < 14362306a36Sopenharmony_ci MX28_PAD_LCD_RESET__GPIO_3_30 14462306a36Sopenharmony_ci >; 14562306a36Sopenharmony_ci fsl,drive-strength = <MXS_DRIVE_4mA>; 14662306a36Sopenharmony_ci fsl,voltage = <MXS_VOLTAGE_HIGH>; 14762306a36Sopenharmony_ci fsl,pull-up = <MXS_PULL_ENABLE>; 14862306a36Sopenharmony_ci }; 14962306a36Sopenharmony_ci}; 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci&pwm { 15262306a36Sopenharmony_ci pinctrl-names = "default"; 15362306a36Sopenharmony_ci pinctrl-0 = <&pwm3_pins_b>; 15462306a36Sopenharmony_ci status = "okay"; 15562306a36Sopenharmony_ci}; 156