/* * Copyright (C) 2012 Marek Vasut <marex@denx.de> * * The code contained herein is licensed under the GNU General Public * License. You may obtain a copy of the GNU General Public License * Version 2 or later at the following locations: * * http://www.opensource.org/licenses/gpl-license.html * http://www.gnu.org/copyleft/gpl.html */ /dts-v1/; /include/ "imx28.dtsi" / { model = "DENX M28EVK"; compatible = "denx,m28evk", "fsl,imx28"; memory { reg = <0x40000000 0x08000000>; }; apb@80000000 { apbh@80000000 { gpmi-nand@8000c000 { #address-cells = <1>; #size-cells = <1>; pinctrl-names = "default"; pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>; status = "okay"; partition@0 { label = "bootloader"; reg = <0x00000000 0x00300000>; read-only; }; partition@1 { label = "environment"; reg = <0x00300000 0x00080000>; }; partition@2 { label = "redundant-environment"; reg = <0x00380000 0x00080000>; }; partition@3 { label = "kernel"; reg = <0x00400000 0x00400000>; }; partition@4 { label = "filesystem"; reg = <0x00800000 0x0f800000>; }; }; ssp0: ssp@80010000 { compatible = "fsl,imx28-mmc"; pinctrl-names = "default"; pinctrl-0 = <&mmc0_8bit_pins_a &mmc0_cd_cfg &mmc0_sck_cfg>; bus-width = <8>; wp-gpios = <&gpio3 10 0>; vmmc-supply = <®_vddio_sd0>; status = "okay"; }; ssp2: ssp@80014000 { #address-cells = <1>; #size-cells = <0>; compatible = "fsl,imx28-spi"; pinctrl-names = "default"; pinctrl-0 = <&spi2_pins_a>; status = "okay"; flash: m25p80@0 { #address-cells = <1>; #size-cells = <1>; compatible = "m25p80"; spi-max-frequency = <40000000>; reg = <0>; }; }; pinctrl@80018000 { pinctrl-names = "default"; pinctrl-0 = <&hog_pins_a>; hog_pins_a: hog@0 { reg = <0>; fsl,pinmux-ids = < 0x31c3 /* MX28_PAD_PWM3__GPIO_3_28 */ 0x30a3 /* MX28_PAD_AUART2_CTS__GPIO_3_10 */ 0x30b3 /* MX28_PAD_AUART2_RTS__GPIO_3_11 */ 0x30c3 /* MX28_PAD_AUART3_RX__GPIO_3_12 */ 0x30d3 /* MX28_PAD_AUART3_TX__GPIO_3_13 */ >; fsl,drive-strength = <0>; fsl,voltage = <1>; fsl,pull-up = <0>; }; lcdif_pins_m28: lcdif-m28@0 { reg = <0>; fsl,pinmux-ids = < 0x11e0 /* MX28_PAD_LCD_DOTCLK__LCD_DOTCLK */ 0x11f0 /* MX28_PAD_LCD_ENABLE__LCD_ENABLE */ >; fsl,drive-strength = <0>; fsl,voltage = <1>; fsl,pull-up = <0>; }; }; lcdif@80030000 { pinctrl-names = "default"; pinctrl-0 = <&lcdif_24bit_pins_a &lcdif_pins_m28>; display = <&display>; status = "okay"; display: display { bits-per-pixel = <16>; bus-width = <18>; display-timings { native-mode = <&timing0>; timing0: timing0 { clock-frequency = <33260000>; hactive = <800>; vactive = <480>; hback-porch = <0>; hfront-porch = <256>; vback-porch = <0>; vfront-porch = <45>; hsync-len = <1>; vsync-len = <1>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; pixelclk-active = <1>; }; }; }; }; can0: can@80032000 { pinctrl-names = "default"; pinctrl-0 = <&can0_pins_a>; status = "okay"; }; can1: can@80034000 { pinctrl-names = "default"; pinctrl-0 = <&can1_pins_a>; status = "okay"; }; }; apbx@80040000 { saif0: saif@80042000 { pinctrl-names = "default"; pinctrl-0 = <&saif0_pins_a>; status = "okay"; }; saif1: saif@80046000 { pinctrl-names = "default"; pinctrl-0 = <&saif1_pins_a>; fsl,saif-master = <&saif0>; status = "okay"; }; i2c0: i2c@80058000 { pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins_a>; status = "okay"; sgtl5000: codec@0a { compatible = "fsl,sgtl5000"; reg = <0x0a>; VDDA-supply = <®_3p3v>; VDDIO-supply = <®_3p3v>; }; eeprom: eeprom@51 { compatible = "atmel,24c128"; reg = <0x51>; pagesize = <32>; }; rtc: rtc@68 { compatible = "stm,mt41t62"; reg = <0x68>; }; }; lradc@80050000 { status = "okay"; fsl,lradc-touchscreen-wires = <4>; }; duart: serial@80074000 { pinctrl-names = "default"; pinctrl-0 = <&duart_pins_a>; status = "okay"; }; usbphy0: usbphy@8007c000 { status = "okay"; }; usbphy1: usbphy@8007e000 { status = "okay"; }; auart0: serial@8006a000 { pinctrl-names = "default"; pinctrl-0 = <&auart0_2pins_a>; status = "okay"; }; }; }; ahb@80080000 { usb0: usb@80080000 { vbus-supply = <®_usb0_vbus>; pinctrl-names = "default"; pinctrl-0 = <&usbphy0_pins_a>; status = "okay"; }; usb1: usb@80090000 { vbus-supply = <®_usb1_vbus>; pinctrl-names = "default"; pinctrl-0 = <&usbphy1_pins_a>; status = "okay"; }; mac0: ethernet@800f0000 { phy-mode = "rmii"; pinctrl-names = "default"; pinctrl-0 = <&mac0_pins_a>; clocks = <&clks 57>, <&clks 57>; clock-names = "ipg", "ahb"; status = "okay"; }; mac1: ethernet@800f4000 { phy-mode = "rmii"; pinctrl-names = "default"; pinctrl-0 = <&mac1_pins_a>; status = "okay"; }; }; regulators { compatible = "simple-bus"; reg_3p3v: 3p3v { compatible = "regulator-fixed"; regulator-name = "3P3V"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; reg_vddio_sd0: vddio-sd0 { compatible = "regulator-fixed"; regulator-name = "vddio-sd0"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&gpio3 28 0>; }; reg_usb0_vbus: usb0_vbus { compatible = "regulator-fixed"; regulator-name = "usb0_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio3 12 0>; }; reg_usb1_vbus: usb1_vbus { compatible = "regulator-fixed"; regulator-name = "usb1_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio3 13 0>; }; }; sound { compatible = "denx,m28evk-sgtl5000", "fsl,mxs-audio-sgtl5000"; model = "m28evk-sgtl5000"; saif-controllers = <&saif0 &saif1>; audio-codec = <&sgtl5000>; }; };