diff options
Diffstat (limited to 'arch/arm/boot/dts/imx28-apx4devkit.dts')
| -rw-r--r-- | arch/arm/boot/dts/imx28-apx4devkit.dts | 226 | 
1 files changed, 226 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/imx28-apx4devkit.dts b/arch/arm/boot/dts/imx28-apx4devkit.dts new file mode 100644 index 00000000000..e1ce9179db6 --- /dev/null +++ b/arch/arm/boot/dts/imx28-apx4devkit.dts @@ -0,0 +1,226 @@ +/dts-v1/; +#include "imx28.dtsi" + +/ { +	model = "Bluegiga APX4 Development Kit"; +	compatible = "bluegiga,apx4devkit", "fsl,imx28"; + +	memory { +		reg = <0x40000000 0x04000000>; +	}; + +	apb@80000000 { +		apbh@80000000 { +			gpmi-nand@8000c000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>; +				status = "okay"; +			}; + +			ssp0: ssp@80010000 { +				compatible = "fsl,imx28-mmc"; +				pinctrl-names = "default"; +				pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_sck_cfg>; +				bus-width = <4>; +				status = "okay"; +			}; + +			ssp2: ssp@80014000 { +				compatible = "fsl,imx28-mmc"; +				pinctrl-names = "default"; +				pinctrl-0 = <&mmc2_4bit_pins_apx4 &mmc2_sck_cfg_apx4>; +				bus-width = <4>; +				status = "okay"; +			}; + +			pinctrl@80018000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&hog_pins_a>; + +				hog_pins_a: hog@0 { +					reg = <0>; +					fsl,pinmux-ids = < +						MX28_PAD_GPMI_CE1N__GPIO_0_17 +						MX28_PAD_GPMI_RDY1__GPIO_0_21 +						MX28_PAD_SSP2_MISO__GPIO_2_18 +						MX28_PAD_SSP2_SS0__AUART3_TX /* was: 0x2131 - MX28_PAD_SSP2_SS0__GPIO_2_19 */ +						MX28_PAD_PWM3__GPIO_3_28 +						MX28_PAD_LCD_RESET__GPIO_3_30 +						MX28_PAD_JTAG_RTCK__GPIO_4_20 +					>; +					fsl,drive-strength = <MXS_DRIVE_4mA>; +					fsl,voltage = <MXS_VOLTAGE_HIGH>; +					fsl,pull-up = <MXS_PULL_DISABLE>; +				}; + +				lcdif_pins_apx4: lcdif-apx4@0 { +					reg = <0>; +					fsl,pinmux-ids = < +						MX28_PAD_LCD_RD_E__LCD_VSYNC +						MX28_PAD_LCD_WR_RWN__LCD_HSYNC +						MX28_PAD_LCD_RS__LCD_DOTCLK +						MX28_PAD_LCD_CS__LCD_ENABLE +					>; +					fsl,drive-strength = <MXS_DRIVE_4mA>; +					fsl,voltage = <MXS_VOLTAGE_HIGH>; +					fsl,pull-up = <MXS_PULL_DISABLE>; +				}; + +				mmc2_4bit_pins_apx4: mmc2-4bit-apx4@0 { +					reg = <0>; +					fsl,pinmux-ids = < +						MX28_PAD_SSP0_DATA4__SSP2_D0 +						MX28_PAD_SSP0_DATA5__SSP2_D3 +						MX28_PAD_SSP0_DATA6__SSP2_CMD +						MX28_PAD_SSP0_DATA7__SSP2_SCK +						MX28_PAD_SSP2_SS1__SSP2_D1 +						MX28_PAD_SSP2_SS2__SSP2_D2 +					>; +					fsl,drive-strength = <MXS_DRIVE_8mA>; +					fsl,voltage = <MXS_VOLTAGE_HIGH>; +					fsl,pull-up = <MXS_PULL_ENABLE>; +				}; + +				mmc2_sck_cfg_apx4: mmc2-sck-cfg-apx4 { +					fsl,pinmux-ids = < +						MX28_PAD_SSP0_DATA7__SSP2_SCK +					>; +					fsl,drive-strength = <MXS_DRIVE_12mA>; +					fsl,pull-up = <MXS_PULL_DISABLE>; +				}; +			}; + +			lcdif@80030000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&lcdif_24bit_pins_a +					     &lcdif_pins_apx4>; +				display = <&display>; +				status = "okay"; + +				display: display { +					bits-per-pixel = <32>; +					bus-width = <24>; + +					display-timings { +						native-mode = <&timing0>; +						timing0: timing0 { +							clock-frequency = <30000000>; +							hactive = <800>; +							vactive = <480>; +							hback-porch = <88>; +							hfront-porch = <40>; +							vback-porch = <32>; +							vfront-porch = <13>; +							hsync-len = <48>; +							vsync-len = <3>; +							hsync-active = <1>; +							vsync-active = <1>; +							de-active = <1>; +							pixelclk-active = <0>; +						}; +					}; +				}; +			}; +		}; + +		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>; +					clocks = <&saif0>; +				}; + +				pcf8563: rtc@51 { +					compatible = "phg,pcf8563"; +					reg = <0x51>; +				}; +			}; + +			duart: serial@80074000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&duart_pins_a>; +				status = "okay"; +			}; + +			auart0: serial@8006a000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&auart0_pins_a>; +				status = "okay"; +			}; + +			auart1: serial@8006c000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&auart1_2pins_a>; +				status = "okay"; +			}; + +			auart2: serial@8006e000 { +				pinctrl-names = "default"; +				pinctrl-0 = <&auart2_2pins_a>; +				status = "okay"; +			}; +		}; +	}; + +	ahb@80080000 { +		mac0: ethernet@800f0000 { +			phy-mode = "rmii"; +			pinctrl-names = "default"; +			pinctrl-0 = <&mac0_pins_a>; +			status = "okay"; +		}; +	}; + +	regulators { +		compatible = "simple-bus"; +		#address-cells = <1>; +		#size-cells = <0>; + +		reg_3p3v: regulator@0 { +			compatible = "regulator-fixed"; +			reg = <0>; +			regulator-name = "3P3V"; +			regulator-min-microvolt = <3300000>; +			regulator-max-microvolt = <3300000>; +			regulator-always-on; +		}; +	}; + +	sound { +		compatible = "bluegiga,apx4devkit-sgtl5000", +			     "fsl,mxs-audio-sgtl5000"; +		model = "apx4devkit-sgtl5000"; +		saif-controllers = <&saif0 &saif1>; +		audio-codec = <&sgtl5000>; +	}; + +	leds { +		compatible = "gpio-leds"; + +		user { +			label = "Heartbeat"; +			gpios = <&gpio3 28 0>; +			linux,default-trigger = "heartbeat"; +		}; +	}; +};  | 
