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