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