162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+
262306a36Sopenharmony_ci//
362306a36Sopenharmony_ci// Copyright 2012 Sascha Hauer, Pengutronix
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci/dts-v1/;
662306a36Sopenharmony_ci#include "imx27.dtsi"
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci/ {
962306a36Sopenharmony_ci	model = "Freescale i.MX27 Product Development Kit";
1062306a36Sopenharmony_ci	compatible = "fsl,imx27-pdk", "fsl,imx27";
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ci	memory@a0000000 {
1362306a36Sopenharmony_ci		device_type = "memory";
1462306a36Sopenharmony_ci		reg = <0xa0000000 0x08000000>;
1562306a36Sopenharmony_ci	};
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci	usbphy {
1862306a36Sopenharmony_ci		compatible = "simple-bus";
1962306a36Sopenharmony_ci		#address-cells = <1>;
2062306a36Sopenharmony_ci		#size-cells = <0>;
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci		usbphy0: usbphy@0 {
2362306a36Sopenharmony_ci			compatible = "usb-nop-xceiv";
2462306a36Sopenharmony_ci			reg = <0>;
2562306a36Sopenharmony_ci			clocks = <&clks IMX27_CLK_DUMMY>;
2662306a36Sopenharmony_ci			clock-names = "main_clk";
2762306a36Sopenharmony_ci			#phy-cells = <0>;
2862306a36Sopenharmony_ci		};
2962306a36Sopenharmony_ci	};
3062306a36Sopenharmony_ci};
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci&cspi2 {
3362306a36Sopenharmony_ci	pinctrl-names = "default";
3462306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_cspi2>;
3562306a36Sopenharmony_ci	cs-gpios = <&gpio4 21 GPIO_ACTIVE_HIGH>;
3662306a36Sopenharmony_ci	status = "okay";
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci	pmic: mc13783@0 {
3962306a36Sopenharmony_ci		compatible = "fsl,mc13783";
4062306a36Sopenharmony_ci		reg = <0>;
4162306a36Sopenharmony_ci		spi-cs-high;
4262306a36Sopenharmony_ci		spi-max-frequency = <1000000>;
4362306a36Sopenharmony_ci		interrupt-parent = <&gpio3>;
4462306a36Sopenharmony_ci		interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci		regulators {
4762306a36Sopenharmony_ci			vgen_reg: vgen {
4862306a36Sopenharmony_ci				regulator-min-microvolt = <1500000>;
4962306a36Sopenharmony_ci				regulator-max-microvolt = <1500000>;
5062306a36Sopenharmony_ci				regulator-always-on;
5162306a36Sopenharmony_ci				regulator-boot-on;
5262306a36Sopenharmony_ci			};
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ci			vmmc1_reg: vmmc1 {
5562306a36Sopenharmony_ci				regulator-min-microvolt = <1600000>;
5662306a36Sopenharmony_ci				regulator-max-microvolt = <3000000>;
5762306a36Sopenharmony_ci			};
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ci			gpo1_reg: gpo1 {
6062306a36Sopenharmony_ci				regulator-always-on;
6162306a36Sopenharmony_ci				regulator-boot-on;
6262306a36Sopenharmony_ci			};
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci			gpo3_reg: gpo3 {
6562306a36Sopenharmony_ci				regulator-always-on;
6662306a36Sopenharmony_ci				regulator-boot-on;
6762306a36Sopenharmony_ci			};
6862306a36Sopenharmony_ci		};
6962306a36Sopenharmony_ci	};
7062306a36Sopenharmony_ci};
7162306a36Sopenharmony_ci
7262306a36Sopenharmony_ci&fec {
7362306a36Sopenharmony_ci	phy-mode = "mii";
7462306a36Sopenharmony_ci	pinctrl-names = "default";
7562306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_fec>;
7662306a36Sopenharmony_ci	status = "okay";
7762306a36Sopenharmony_ci};
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci&kpp {
8062306a36Sopenharmony_ci	linux,keymap = <
8162306a36Sopenharmony_ci		MATRIX_KEY(0, 0, KEY_UP)
8262306a36Sopenharmony_ci		MATRIX_KEY(0, 1, KEY_DOWN)
8362306a36Sopenharmony_ci		MATRIX_KEY(1, 0, KEY_RIGHT)
8462306a36Sopenharmony_ci		MATRIX_KEY(1, 1, KEY_LEFT)
8562306a36Sopenharmony_ci		MATRIX_KEY(1, 2, KEY_ENTER)
8662306a36Sopenharmony_ci		MATRIX_KEY(2, 0, KEY_F6)
8762306a36Sopenharmony_ci		MATRIX_KEY(2, 1, KEY_F8)
8862306a36Sopenharmony_ci		MATRIX_KEY(2, 2, KEY_F9)
8962306a36Sopenharmony_ci		MATRIX_KEY(2, 3, KEY_F10)
9062306a36Sopenharmony_ci	>;
9162306a36Sopenharmony_ci	status = "okay";
9262306a36Sopenharmony_ci};
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ci&nfc {
9562306a36Sopenharmony_ci	pinctrl-names = "default";
9662306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_nand>;
9762306a36Sopenharmony_ci	nand-ecc-mode = "hw";
9862306a36Sopenharmony_ci	nand-on-flash-bbt;
9962306a36Sopenharmony_ci	status = "okay";
10062306a36Sopenharmony_ci};
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci&uart1 {
10362306a36Sopenharmony_ci	uart-has-rtscts;
10462306a36Sopenharmony_ci	pinctrl-names = "default";
10562306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_uart1>;
10662306a36Sopenharmony_ci	status = "okay";
10762306a36Sopenharmony_ci};
10862306a36Sopenharmony_ci
10962306a36Sopenharmony_ci&usbotg {
11062306a36Sopenharmony_ci	pinctrl-names = "default";
11162306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_usbotg>;
11262306a36Sopenharmony_ci	dr_mode = "otg";
11362306a36Sopenharmony_ci	fsl,usbphy = <&usbphy0>;
11462306a36Sopenharmony_ci	phy_type = "ulpi";
11562306a36Sopenharmony_ci	status = "okay";
11662306a36Sopenharmony_ci};
11762306a36Sopenharmony_ci
11862306a36Sopenharmony_ci&iomuxc {
11962306a36Sopenharmony_ci	imx27-pdk {
12062306a36Sopenharmony_ci		pinctrl_cspi2: cspi2grp {
12162306a36Sopenharmony_ci			fsl,pins = <
12262306a36Sopenharmony_ci				MX27_PAD_CSPI2_MISO__CSPI2_MISO 0x0
12362306a36Sopenharmony_ci				MX27_PAD_CSPI2_MOSI__CSPI2_MOSI 0x0
12462306a36Sopenharmony_ci				MX27_PAD_CSPI2_SCLK__CSPI2_SCLK 0x0
12562306a36Sopenharmony_ci				MX27_PAD_CSPI2_SS0__GPIO4_21	0x0 /* SPI2 CS0 */
12662306a36Sopenharmony_ci				MX27_PAD_TOUT__GPIO3_14		0x0 /* PMIC IRQ */
12762306a36Sopenharmony_ci			>;
12862306a36Sopenharmony_ci		};
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci		pinctrl_fec: fecgrp {
13162306a36Sopenharmony_ci			fsl,pins = <
13262306a36Sopenharmony_ci				MX27_PAD_SD3_CMD__FEC_TXD0 0x0
13362306a36Sopenharmony_ci				MX27_PAD_SD3_CLK__FEC_TXD1 0x0
13462306a36Sopenharmony_ci				MX27_PAD_ATA_DATA0__FEC_TXD2 0x0
13562306a36Sopenharmony_ci				MX27_PAD_ATA_DATA1__FEC_TXD3 0x0
13662306a36Sopenharmony_ci				MX27_PAD_ATA_DATA2__FEC_RX_ER 0x0
13762306a36Sopenharmony_ci				MX27_PAD_ATA_DATA3__FEC_RXD1 0x0
13862306a36Sopenharmony_ci				MX27_PAD_ATA_DATA4__FEC_RXD2 0x0
13962306a36Sopenharmony_ci				MX27_PAD_ATA_DATA5__FEC_RXD3 0x0
14062306a36Sopenharmony_ci				MX27_PAD_ATA_DATA6__FEC_MDIO 0x0
14162306a36Sopenharmony_ci				MX27_PAD_ATA_DATA7__FEC_MDC 0x0
14262306a36Sopenharmony_ci				MX27_PAD_ATA_DATA8__FEC_CRS 0x0
14362306a36Sopenharmony_ci				MX27_PAD_ATA_DATA9__FEC_TX_CLK 0x0
14462306a36Sopenharmony_ci				MX27_PAD_ATA_DATA10__FEC_RXD0 0x0
14562306a36Sopenharmony_ci				MX27_PAD_ATA_DATA11__FEC_RX_DV 0x0
14662306a36Sopenharmony_ci				MX27_PAD_ATA_DATA12__FEC_RX_CLK 0x0
14762306a36Sopenharmony_ci				MX27_PAD_ATA_DATA13__FEC_COL 0x0
14862306a36Sopenharmony_ci				MX27_PAD_ATA_DATA14__FEC_TX_ER 0x0
14962306a36Sopenharmony_ci				MX27_PAD_ATA_DATA15__FEC_TX_EN 0x0
15062306a36Sopenharmony_ci			>;
15162306a36Sopenharmony_ci		};
15262306a36Sopenharmony_ci
15362306a36Sopenharmony_ci		pinctrl_nand: nandgrp {
15462306a36Sopenharmony_ci			fsl,pins = <
15562306a36Sopenharmony_ci				MX27_PAD_NFRB__NFRB	0x0
15662306a36Sopenharmony_ci				MX27_PAD_NFCLE__NFCLE	0x0
15762306a36Sopenharmony_ci				MX27_PAD_NFWP_B__NFWP_B	0x0
15862306a36Sopenharmony_ci				MX27_PAD_NFCE_B__NFCE_B	0x0
15962306a36Sopenharmony_ci				MX27_PAD_NFALE__NFALE	0x0
16062306a36Sopenharmony_ci				MX27_PAD_NFRE_B__NFRE_B	0x0
16162306a36Sopenharmony_ci				MX27_PAD_NFWE_B__NFWE_B	0x0
16262306a36Sopenharmony_ci			>;
16362306a36Sopenharmony_ci		};
16462306a36Sopenharmony_ci
16562306a36Sopenharmony_ci		pinctrl_uart1: uart1grp {
16662306a36Sopenharmony_ci			fsl,pins = <
16762306a36Sopenharmony_ci				MX27_PAD_UART1_TXD__UART1_TXD 0x0
16862306a36Sopenharmony_ci				MX27_PAD_UART1_RXD__UART1_RXD 0x0
16962306a36Sopenharmony_ci				MX27_PAD_UART1_CTS__UART1_CTS 0x0
17062306a36Sopenharmony_ci				MX27_PAD_UART1_RTS__UART1_RTS 0x0
17162306a36Sopenharmony_ci			>;
17262306a36Sopenharmony_ci		};
17362306a36Sopenharmony_ci
17462306a36Sopenharmony_ci		pinctrl_usbotg: usbotggrp {
17562306a36Sopenharmony_ci			fsl,pins = <
17662306a36Sopenharmony_ci				MX27_PAD_USBOTG_NXT__USBOTG_NXT 0x0
17762306a36Sopenharmony_ci				MX27_PAD_USBOTG_STP__USBOTG_STP 0x0
17862306a36Sopenharmony_ci				MX27_PAD_USBOTG_DIR__USBOTG_DIR 0x0
17962306a36Sopenharmony_ci				MX27_PAD_USBOTG_CLK__USBOTG_CLK 0x0
18062306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA0__USBOTG_DATA0 0x0
18162306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA1__USBOTG_DATA1 0x0
18262306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA2__USBOTG_DATA2 0x0
18362306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA3__USBOTG_DATA3 0x0
18462306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA4__USBOTG_DATA4 0x0
18562306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA5__USBOTG_DATA5 0x0
18662306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA6__USBOTG_DATA6 0x0
18762306a36Sopenharmony_ci				MX27_PAD_USBOTG_DATA7__USBOTG_DATA7 0x0
18862306a36Sopenharmony_ci			>;
18962306a36Sopenharmony_ci		};
19062306a36Sopenharmony_ci	};
19162306a36Sopenharmony_ci};
192