1// SPDX-License-Identifier: GPL-2.0 2/dts-v1/; 3#include "imx28.dtsi" 4 5/ { 6 model = "Bluegiga APX4 Development Kit"; 7 compatible = "bluegiga,apx4devkit", "fsl,imx28"; 8 9 memory@40000000 { 10 device_type = "memory"; 11 reg = <0x40000000 0x04000000>; 12 }; 13 14 apb@80000000 { 15 apbh@80000000 { 16 gpmi-nand@8000c000 { 17 pinctrl-names = "default"; 18 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>; 19 status = "okay"; 20 }; 21 22 ssp0: spi@80010000 { 23 compatible = "fsl,imx28-mmc"; 24 pinctrl-names = "default"; 25 pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_sck_cfg>; 26 bus-width = <4>; 27 status = "okay"; 28 }; 29 30 ssp2: spi@80014000 { 31 compatible = "fsl,imx28-mmc"; 32 pinctrl-names = "default"; 33 pinctrl-0 = <&mmc2_4bit_pins_apx4 &mmc2_sck_cfg_apx4>; 34 bus-width = <4>; 35 status = "okay"; 36 }; 37 38 pinctrl@80018000 { 39 pinctrl-names = "default"; 40 pinctrl-0 = <&hog_pins_a>; 41 42 hog_pins_a: hog@0 { 43 reg = <0>; 44 fsl,pinmux-ids = < 45 MX28_PAD_GPMI_CE1N__GPIO_0_17 46 MX28_PAD_GPMI_RDY1__GPIO_0_21 47 MX28_PAD_SSP2_MISO__GPIO_2_18 48 MX28_PAD_SSP2_SS0__AUART3_TX /* was: 0x2131 - MX28_PAD_SSP2_SS0__GPIO_2_19 */ 49 MX28_PAD_PWM3__GPIO_3_28 50 MX28_PAD_LCD_RESET__GPIO_3_30 51 MX28_PAD_JTAG_RTCK__GPIO_4_20 52 >; 53 fsl,drive-strength = <MXS_DRIVE_4mA>; 54 fsl,voltage = <MXS_VOLTAGE_HIGH>; 55 fsl,pull-up = <MXS_PULL_DISABLE>; 56 }; 57 58 lcdif_pins_apx4: lcdif-apx4@0 { 59 reg = <0>; 60 fsl,pinmux-ids = < 61 MX28_PAD_LCD_RD_E__LCD_VSYNC 62 MX28_PAD_LCD_WR_RWN__LCD_HSYNC 63 MX28_PAD_LCD_RS__LCD_DOTCLK 64 MX28_PAD_LCD_CS__LCD_ENABLE 65 >; 66 fsl,drive-strength = <MXS_DRIVE_4mA>; 67 fsl,voltage = <MXS_VOLTAGE_HIGH>; 68 fsl,pull-up = <MXS_PULL_DISABLE>; 69 }; 70 71 mmc2_4bit_pins_apx4: mmc2-4bit-apx4@0 { 72 reg = <0>; 73 fsl,pinmux-ids = < 74 MX28_PAD_SSP0_DATA4__SSP2_D0 75 MX28_PAD_SSP0_DATA5__SSP2_D3 76 MX28_PAD_SSP0_DATA6__SSP2_CMD 77 MX28_PAD_SSP0_DATA7__SSP2_SCK 78 MX28_PAD_SSP2_SS1__SSP2_D1 79 MX28_PAD_SSP2_SS2__SSP2_D2 80 >; 81 fsl,drive-strength = <MXS_DRIVE_8mA>; 82 fsl,voltage = <MXS_VOLTAGE_HIGH>; 83 fsl,pull-up = <MXS_PULL_ENABLE>; 84 }; 85 86 mmc2_sck_cfg_apx4: mmc2-sck-cfg-apx4@0 { 87 reg = <0>; 88 fsl,pinmux-ids = < 89 MX28_PAD_SSP0_DATA7__SSP2_SCK 90 >; 91 fsl,drive-strength = <MXS_DRIVE_12mA>; 92 fsl,pull-up = <MXS_PULL_DISABLE>; 93 }; 94 }; 95 96 lcdif@80030000 { 97 pinctrl-names = "default"; 98 pinctrl-0 = <&lcdif_24bit_pins_a 99 &lcdif_pins_apx4>; 100 display = <&display0>; 101 status = "okay"; 102 103 display0: display0 { 104 bits-per-pixel = <32>; 105 bus-width = <24>; 106 107 display-timings { 108 native-mode = <&timing0>; 109 timing0: timing0 { 110 clock-frequency = <30000000>; 111 hactive = <800>; 112 vactive = <480>; 113 hback-porch = <88>; 114 hfront-porch = <40>; 115 vback-porch = <32>; 116 vfront-porch = <13>; 117 hsync-len = <48>; 118 vsync-len = <3>; 119 hsync-active = <1>; 120 vsync-active = <1>; 121 de-active = <1>; 122 pixelclk-active = <0>; 123 }; 124 }; 125 }; 126 }; 127 }; 128 129 apbx@80040000 { 130 saif0: saif@80042000 { 131 pinctrl-names = "default"; 132 pinctrl-0 = <&saif0_pins_a>; 133 status = "okay"; 134 }; 135 136 saif1: saif@80046000 { 137 pinctrl-names = "default"; 138 pinctrl-0 = <&saif1_pins_a>; 139 fsl,saif-master = <&saif0>; 140 status = "okay"; 141 }; 142 143 i2c0: i2c@80058000 { 144 pinctrl-names = "default"; 145 pinctrl-0 = <&i2c0_pins_a>; 146 status = "okay"; 147 148 sgtl5000: codec@a { 149 compatible = "fsl,sgtl5000"; 150 reg = <0x0a>; 151 #sound-dai-cells = <0>; 152 VDDA-supply = <®_3p3v>; 153 VDDIO-supply = <®_3p3v>; 154 clocks = <&saif0>; 155 }; 156 157 pcf8563: rtc@51 { 158 compatible = "phg,pcf8563"; 159 reg = <0x51>; 160 }; 161 }; 162 163 duart: serial@80074000 { 164 pinctrl-names = "default"; 165 pinctrl-0 = <&duart_pins_a>; 166 status = "okay"; 167 }; 168 169 auart0: serial@8006a000 { 170 pinctrl-names = "default"; 171 pinctrl-0 = <&auart0_pins_a>; 172 status = "okay"; 173 }; 174 175 auart1: serial@8006c000 { 176 pinctrl-names = "default"; 177 pinctrl-0 = <&auart1_2pins_a>; 178 status = "okay"; 179 }; 180 181 auart2: serial@8006e000 { 182 pinctrl-names = "default"; 183 pinctrl-0 = <&auart2_2pins_a>; 184 status = "okay"; 185 }; 186 }; 187 }; 188 189 ahb@80080000 { 190 mac0: ethernet@800f0000 { 191 phy-mode = "rmii"; 192 pinctrl-names = "default"; 193 pinctrl-0 = <&mac0_pins_a>; 194 status = "okay"; 195 }; 196 }; 197 198 regulators { 199 compatible = "simple-bus"; 200 #address-cells = <1>; 201 #size-cells = <0>; 202 203 reg_3p3v: regulator@0 { 204 compatible = "regulator-fixed"; 205 reg = <0>; 206 regulator-name = "3P3V"; 207 regulator-min-microvolt = <3300000>; 208 regulator-max-microvolt = <3300000>; 209 regulator-always-on; 210 }; 211 }; 212 213 sound { 214 compatible = "bluegiga,apx4devkit-sgtl5000", 215 "fsl,mxs-audio-sgtl5000"; 216 model = "apx4devkit-sgtl5000"; 217 saif-controllers = <&saif0 &saif1>; 218 audio-codec = <&sgtl5000>; 219 }; 220 221 leds { 222 compatible = "gpio-leds"; 223 224 user { 225 label = "Heartbeat"; 226 gpios = <&gpio3 28 0>; 227 linux,default-trigger = "heartbeat"; 228 }; 229 }; 230}; 231