0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * Copyright 2013 Free Electrons
0004 */
0005
0006 /*
0007 * The CFA-10055 is an expansion board for the CFA-10036 module and
0008 * CFA-10037, thus we need to include the CFA-10037 DTS.
0009 */
0010 #include "imx28-cfa10037.dts"
0011
0012 / {
0013 model = "Crystalfontz CFA-10056 Board";
0014 compatible = "crystalfontz,cfa10056", "crystalfontz,cfa10037", "crystalfontz,cfa10036", "fsl,imx28";
0015
0016 apb@80000000 {
0017 apbh@80000000 {
0018 pinctrl@80018000 {
0019 spi2_pins_cfa10056: spi2-cfa10056@0 {
0020 reg = <0>;
0021 fsl,pinmux-ids = <
0022 MX28_PAD_SSP2_SCK__GPIO_2_16
0023 MX28_PAD_SSP2_MOSI__GPIO_2_17
0024 MX28_PAD_SSP2_MISO__GPIO_2_18
0025 MX28_PAD_AUART1_TX__GPIO_3_5
0026 >;
0027 fsl,drive-strength = <MXS_DRIVE_8mA>;
0028 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0029 fsl,pull-up = <MXS_PULL_ENABLE>;
0030 };
0031
0032 lcdif_pins_cfa10056: lcdif-10056@0 {
0033 reg = <0>;
0034 fsl,pinmux-ids = <
0035 MX28_PAD_LCD_RD_E__LCD_VSYNC
0036 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
0037 MX28_PAD_LCD_RS__LCD_DOTCLK
0038 MX28_PAD_LCD_CS__LCD_ENABLE
0039 >;
0040 fsl,drive-strength = <MXS_DRIVE_4mA>;
0041 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0042 fsl,pull-up = <MXS_PULL_DISABLE>;
0043 };
0044
0045 lcdif_pins_cfa10056_pullup: lcdif-10056-pullup@0 {
0046 reg = <0>;
0047 fsl,pinmux-ids = <
0048 MX28_PAD_LCD_RESET__GPIO_3_30
0049 >;
0050 fsl,drive-strength = <MXS_DRIVE_4mA>;
0051 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0052 fsl,pull-up = <MXS_PULL_ENABLE>;
0053 };
0054 };
0055
0056 lcdif@80030000 {
0057 pinctrl-names = "default";
0058 pinctrl-0 = <&lcdif_24bit_pins_a
0059 &lcdif_pins_cfa10056
0060 &lcdif_pins_cfa10056_pullup >;
0061 display = <&display0>;
0062 status = "okay";
0063
0064 display0: display0 {
0065 bits-per-pixel = <32>;
0066 bus-width = <24>;
0067
0068 display-timings {
0069 native-mode = <&timing0>;
0070 timing0: timing0 {
0071 clock-frequency = <32000000>;
0072 hactive = <480>;
0073 vactive = <800>;
0074 hback-porch = <2>;
0075 hfront-porch = <2>;
0076 vback-porch = <2>;
0077 vfront-porch = <2>;
0078 hsync-len = <5>;
0079 vsync-len = <5>;
0080 hsync-active = <0>;
0081 vsync-active = <0>;
0082 de-active = <1>;
0083 pixelclk-active = <1>;
0084 };
0085 };
0086 };
0087 };
0088 };
0089 };
0090
0091 spi2 {
0092 compatible = "spi-gpio";
0093 pinctrl-names = "default";
0094 pinctrl-0 = <&spi2_pins_cfa10056>;
0095 status = "okay";
0096 gpio-sck = <&gpio2 16 0>;
0097 gpio-mosi = <&gpio2 17 0>;
0098 gpio-miso = <&gpio2 18 0>;
0099 cs-gpios = <&gpio3 5 0>;
0100 num-chipselects = <1>;
0101 #address-cells = <1>;
0102 #size-cells = <0>;
0103
0104 hx8369: hx8369@0 {
0105 compatible = "himax,hx8369a", "himax,hx8369";
0106 reg = <0>;
0107 spi-max-frequency = <100000>;
0108 spi-cpol;
0109 spi-cpha;
0110 gpios-reset = <&gpio3 30 0>;
0111 };
0112 };
0113 };