0001 // SPDX-License-Identifier: GPL-2.0+
0002 //
0003 // Copyright 2011 Freescale Semiconductor, Inc.
0004 // Copyright 2011 Linaro Ltd.
0005
0006 #include "imx53.dtsi"
0007
0008 / {
0009 chosen {
0010 stdout-path = &uart1;
0011 };
0012
0013 memory@70000000 {
0014 device_type = "memory";
0015 reg = <0x70000000 0x20000000>,
0016 <0xb0000000 0x20000000>;
0017 };
0018
0019 display0: disp0 {
0020 compatible = "fsl,imx-parallel-display";
0021 pinctrl-names = "default";
0022 pinctrl-0 = <&pinctrl_ipu_disp0>;
0023
0024 #address-cells = <1>;
0025 #size-cells = <0>;
0026 status = "disabled";
0027
0028 port@0 {
0029 reg = <0>;
0030
0031 display0_in: endpoint {
0032 remote-endpoint = <&ipu_di0_disp0>;
0033 };
0034 };
0035
0036 port@1 {
0037 reg = <1>;
0038
0039 display_out: endpoint {
0040 remote-endpoint = <&panel_in>;
0041 };
0042 };
0043 };
0044
0045 gpio-keys {
0046 compatible = "gpio-keys";
0047
0048 power {
0049 label = "Power Button";
0050 gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
0051 linux,code = <KEY_POWER>;
0052 };
0053
0054 volume-up {
0055 label = "Volume Up";
0056 gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
0057 linux,code = <KEY_VOLUMEUP>;
0058 wakeup-source;
0059 };
0060
0061 volume-down {
0062 label = "Volume Down";
0063 gpios = <&gpio2 15 GPIO_ACTIVE_LOW>;
0064 linux,code = <KEY_VOLUMEDOWN>;
0065 wakeup-source;
0066 };
0067 };
0068
0069 leds {
0070 compatible = "gpio-leds";
0071 pinctrl-names = "default";
0072 pinctrl-0 = <&led_pin_gpio7_7>;
0073
0074 user {
0075 label = "Heartbeat";
0076 gpios = <&gpio7 7 0>;
0077 linux,default-trigger = "heartbeat";
0078 };
0079 };
0080
0081 panel {
0082 compatible = "sii,43wvf1g";
0083
0084 port {
0085 panel_in: endpoint {
0086 remote-endpoint = <&display_out>;
0087 };
0088 };
0089 };
0090
0091 regulators {
0092 compatible = "simple-bus";
0093 #address-cells = <1>;
0094 #size-cells = <0>;
0095
0096 reg_3p2v: regulator@0 {
0097 compatible = "regulator-fixed";
0098 reg = <0>;
0099 regulator-name = "3P2V";
0100 regulator-min-microvolt = <3200000>;
0101 regulator-max-microvolt = <3200000>;
0102 regulator-always-on;
0103 };
0104
0105 reg_usb_vbus: regulator@1 {
0106 compatible = "regulator-fixed";
0107 reg = <1>;
0108 regulator-name = "usb_vbus";
0109 regulator-min-microvolt = <5000000>;
0110 regulator-max-microvolt = <5000000>;
0111 gpio = <&gpio7 8 0>;
0112 enable-active-high;
0113 };
0114 };
0115
0116 sound {
0117 compatible = "fsl,imx53-qsb-sgtl5000",
0118 "fsl,imx-audio-sgtl5000";
0119 model = "imx53-qsb-sgtl5000";
0120 ssi-controller = <&ssi2>;
0121 audio-codec = <&sgtl5000>;
0122 audio-routing =
0123 "MIC_IN", "Mic Jack",
0124 "Mic Jack", "Mic Bias",
0125 "Headphone Jack", "HP_OUT";
0126 mux-int-port = <2>;
0127 mux-ext-port = <5>;
0128 };
0129 };
0130
0131 &cpu0 {
0132 /* CPU rated to 1GHz, not 1.2GHz as per the default settings */
0133 operating-points = <
0134 /* kHz uV */
0135 166666 850000
0136 400000 900000
0137 800000 1050000
0138 1000000 1200000
0139 >;
0140 };
0141
0142 &esdhc1 {
0143 pinctrl-names = "default";
0144 pinctrl-0 = <&pinctrl_esdhc1>;
0145 cd-gpios = <&gpio3 13 GPIO_ACTIVE_LOW>;
0146 status = "okay";
0147 };
0148
0149 &ipu_di0_disp0 {
0150 remote-endpoint = <&display0_in>;
0151 };
0152
0153 &ssi2 {
0154 status = "okay";
0155 };
0156
0157 &esdhc3 {
0158 pinctrl-names = "default";
0159 pinctrl-0 = <&pinctrl_esdhc3>;
0160 cd-gpios = <&gpio3 11 GPIO_ACTIVE_LOW>;
0161 wp-gpios = <&gpio3 12 GPIO_ACTIVE_HIGH>;
0162 bus-width = <8>;
0163 status = "okay";
0164 };
0165
0166 &iomuxc {
0167 pinctrl-names = "default";
0168 pinctrl-0 = <&pinctrl_hog>;
0169
0170 imx53-qsb {
0171 pinctrl_hog: hoggrp {
0172 fsl,pins = <
0173 MX53_PAD_GPIO_8__GPIO1_8 0x80000000
0174 MX53_PAD_PATA_DATA14__GPIO2_14 0x80000000
0175 MX53_PAD_PATA_DATA15__GPIO2_15 0x80000000
0176 MX53_PAD_EIM_DA11__GPIO3_11 0x80000000
0177 MX53_PAD_EIM_DA12__GPIO3_12 0x80000000
0178 MX53_PAD_PATA_DA_0__GPIO7_6 0x80000000
0179 MX53_PAD_PATA_DA_2__GPIO7_8 0x80000000
0180 MX53_PAD_GPIO_16__GPIO7_11 0x80000000
0181 >;
0182 };
0183
0184 led_pin_gpio7_7: led_gpio7_7 {
0185 fsl,pins = <
0186 MX53_PAD_PATA_DA_1__GPIO7_7 0x80000000
0187 >;
0188 };
0189
0190 pinctrl_audmux: audmuxgrp {
0191 fsl,pins = <
0192 MX53_PAD_KEY_COL0__AUDMUX_AUD5_TXC 0x80000000
0193 MX53_PAD_KEY_ROW0__AUDMUX_AUD5_TXD 0x80000000
0194 MX53_PAD_KEY_COL1__AUDMUX_AUD5_TXFS 0x80000000
0195 MX53_PAD_KEY_ROW1__AUDMUX_AUD5_RXD 0x80000000
0196 >;
0197 };
0198
0199 pinctrl_codec: codecgrp {
0200 fsl,pins = <
0201 MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x1c4
0202 >;
0203 };
0204
0205 pinctrl_esdhc1: esdhc1grp {
0206 fsl,pins = <
0207 MX53_PAD_SD1_DATA0__ESDHC1_DAT0 0x1d5
0208 MX53_PAD_SD1_DATA1__ESDHC1_DAT1 0x1d5
0209 MX53_PAD_SD1_DATA2__ESDHC1_DAT2 0x1d5
0210 MX53_PAD_SD1_DATA3__ESDHC1_DAT3 0x1d5
0211 MX53_PAD_SD1_CMD__ESDHC1_CMD 0x1d5
0212 MX53_PAD_SD1_CLK__ESDHC1_CLK 0x1d5
0213 MX53_PAD_EIM_DA13__GPIO3_13 0xe4
0214 >;
0215 };
0216
0217 pinctrl_esdhc3: esdhc3grp {
0218 fsl,pins = <
0219 MX53_PAD_PATA_DATA8__ESDHC3_DAT0 0x1d5
0220 MX53_PAD_PATA_DATA9__ESDHC3_DAT1 0x1d5
0221 MX53_PAD_PATA_DATA10__ESDHC3_DAT2 0x1d5
0222 MX53_PAD_PATA_DATA11__ESDHC3_DAT3 0x1d5
0223 MX53_PAD_PATA_DATA0__ESDHC3_DAT4 0x1d5
0224 MX53_PAD_PATA_DATA1__ESDHC3_DAT5 0x1d5
0225 MX53_PAD_PATA_DATA2__ESDHC3_DAT6 0x1d5
0226 MX53_PAD_PATA_DATA3__ESDHC3_DAT7 0x1d5
0227 MX53_PAD_PATA_RESET_B__ESDHC3_CMD 0x1d5
0228 MX53_PAD_PATA_IORDY__ESDHC3_CLK 0x1d5
0229 >;
0230 };
0231
0232 pinctrl_fec: fecgrp {
0233 fsl,pins = <
0234 MX53_PAD_FEC_MDC__FEC_MDC 0x4
0235 MX53_PAD_FEC_MDIO__FEC_MDIO 0x1fc
0236 MX53_PAD_FEC_REF_CLK__FEC_TX_CLK 0x180
0237 MX53_PAD_FEC_RX_ER__FEC_RX_ER 0x180
0238 MX53_PAD_FEC_CRS_DV__FEC_RX_DV 0x180
0239 MX53_PAD_FEC_RXD1__FEC_RDATA_1 0x180
0240 MX53_PAD_FEC_RXD0__FEC_RDATA_0 0x180
0241 MX53_PAD_FEC_TX_EN__FEC_TX_EN 0x4
0242 MX53_PAD_FEC_TXD1__FEC_TDATA_1 0x4
0243 MX53_PAD_FEC_TXD0__FEC_TDATA_0 0x4
0244 >;
0245 };
0246
0247 /* open drain */
0248 pinctrl_i2c1: i2c1grp {
0249 fsl,pins = <
0250 MX53_PAD_CSI0_DAT8__I2C1_SDA 0x400001ec
0251 MX53_PAD_CSI0_DAT9__I2C1_SCL 0x400001ec
0252 >;
0253 };
0254
0255 pinctrl_i2c2: i2c2grp {
0256 fsl,pins = <
0257 MX53_PAD_KEY_ROW3__I2C2_SDA 0xc0000000
0258 MX53_PAD_KEY_COL3__I2C2_SCL 0xc0000000
0259 >;
0260 };
0261
0262 pinctrl_ipu_disp0: ipudisp0grp {
0263 fsl,pins = <
0264 MX53_PAD_DI0_DISP_CLK__IPU_DI0_DISP_CLK 0x5
0265 MX53_PAD_DI0_PIN15__IPU_DI0_PIN15 0x5
0266 MX53_PAD_DI0_PIN2__IPU_DI0_PIN2 0x5
0267 MX53_PAD_DI0_PIN3__IPU_DI0_PIN3 0x5
0268 MX53_PAD_DISP0_DAT0__IPU_DISP0_DAT_0 0x5
0269 MX53_PAD_DISP0_DAT1__IPU_DISP0_DAT_1 0x5
0270 MX53_PAD_DISP0_DAT2__IPU_DISP0_DAT_2 0x5
0271 MX53_PAD_DISP0_DAT3__IPU_DISP0_DAT_3 0x5
0272 MX53_PAD_DISP0_DAT4__IPU_DISP0_DAT_4 0x5
0273 MX53_PAD_DISP0_DAT5__IPU_DISP0_DAT_5 0x5
0274 MX53_PAD_DISP0_DAT6__IPU_DISP0_DAT_6 0x5
0275 MX53_PAD_DISP0_DAT7__IPU_DISP0_DAT_7 0x5
0276 MX53_PAD_DISP0_DAT8__IPU_DISP0_DAT_8 0x5
0277 MX53_PAD_DISP0_DAT9__IPU_DISP0_DAT_9 0x5
0278 MX53_PAD_DISP0_DAT10__IPU_DISP0_DAT_10 0x5
0279 MX53_PAD_DISP0_DAT11__IPU_DISP0_DAT_11 0x5
0280 MX53_PAD_DISP0_DAT12__IPU_DISP0_DAT_12 0x5
0281 MX53_PAD_DISP0_DAT13__IPU_DISP0_DAT_13 0x5
0282 MX53_PAD_DISP0_DAT14__IPU_DISP0_DAT_14 0x5
0283 MX53_PAD_DISP0_DAT15__IPU_DISP0_DAT_15 0x5
0284 MX53_PAD_DISP0_DAT16__IPU_DISP0_DAT_16 0x5
0285 MX53_PAD_DISP0_DAT17__IPU_DISP0_DAT_17 0x5
0286 MX53_PAD_DISP0_DAT18__IPU_DISP0_DAT_18 0x5
0287 MX53_PAD_DISP0_DAT19__IPU_DISP0_DAT_19 0x5
0288 MX53_PAD_DISP0_DAT20__IPU_DISP0_DAT_20 0x5
0289 MX53_PAD_DISP0_DAT21__IPU_DISP0_DAT_21 0x5
0290 MX53_PAD_DISP0_DAT22__IPU_DISP0_DAT_22 0x5
0291 MX53_PAD_DISP0_DAT23__IPU_DISP0_DAT_23 0x5
0292 >;
0293 };
0294
0295 pinctrl_vga_sync: vgasync-grp {
0296 fsl,pins = <
0297 /* VGA_HSYNC, VSYNC with max drive strength */
0298 MX53_PAD_EIM_OE__IPU_DI1_PIN7 0xe6
0299 MX53_PAD_EIM_RW__IPU_DI1_PIN8 0xe6
0300 >;
0301 };
0302
0303 pinctrl_uart1: uart1grp {
0304 fsl,pins = <
0305 MX53_PAD_CSI0_DAT10__UART1_TXD_MUX 0x1e4
0306 MX53_PAD_CSI0_DAT11__UART1_RXD_MUX 0x1e4
0307 >;
0308 };
0309 };
0310 };
0311
0312 &tve {
0313 pinctrl-names = "default";
0314 pinctrl-0 = <&pinctrl_vga_sync>;
0315 ddc-i2c-bus = <&i2c2>;
0316 fsl,tve-mode = "vga";
0317 fsl,hsync-pin = <7>; /* IPU DI1 PIN7 via EIM_OE */
0318 fsl,vsync-pin = <8>; /* IPU DI1 PIN8 via EIM_RW */
0319 status = "okay";
0320 };
0321
0322 &uart1 {
0323 pinctrl-names = "default";
0324 pinctrl-0 = <&pinctrl_uart1>;
0325 status = "okay";
0326 };
0327
0328 &i2c2 {
0329 pinctrl-names = "default";
0330 pinctrl-0 = <&pinctrl_i2c2>;
0331 status = "okay";
0332
0333 sgtl5000: codec@a {
0334 compatible = "fsl,sgtl5000";
0335 reg = <0x0a>;
0336 pinctrl-names = "default";
0337 pinctrl-0 = <&pinctrl_codec>;
0338 #sound-dai-cells = <0>;
0339 VDDA-supply = <®_3p2v>;
0340 VDDIO-supply = <®_3p2v>;
0341 clocks = <&clks IMX5_CLK_SSI_EXT1_GATE>;
0342 };
0343 };
0344
0345 &i2c1 {
0346 pinctrl-names = "default";
0347 pinctrl-0 = <&pinctrl_i2c1>;
0348 status = "okay";
0349
0350 accelerometer: mma8450@1c {
0351 compatible = "fsl,mma8450";
0352 reg = <0x1c>;
0353 };
0354 };
0355
0356 &audmux {
0357 pinctrl-names = "default";
0358 pinctrl-0 = <&pinctrl_audmux>;
0359 status = "okay";
0360 };
0361
0362 &fec {
0363 pinctrl-names = "default";
0364 pinctrl-0 = <&pinctrl_fec>;
0365 phy-mode = "rmii";
0366 phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
0367 status = "okay";
0368 };
0369
0370 &sata {
0371 status = "okay";
0372 };
0373
0374 &vpu {
0375 status = "okay";
0376 };
0377
0378 &usbh1 {
0379 vbus-supply = <®_usb_vbus>;
0380 phy_type = "utmi";
0381 status = "okay";
0382 };
0383
0384 &usbotg {
0385 dr_mode = "peripheral";
0386 status = "okay";
0387 };