162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright 2013 Eukréa Electromatique <denis@eukrea.com> 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci/dts-v1/; 762306a36Sopenharmony_ci#include "imx51-eukrea-cpuimx51.dtsi" 862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci/ { 1162306a36Sopenharmony_ci model = "Eukrea CPUIMX51"; 1262306a36Sopenharmony_ci compatible = "eukrea,mbimxsd51","eukrea,cpuimx51", "fsl,imx51"; 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci clocks { 1562306a36Sopenharmony_ci clk24M: can_clock { 1662306a36Sopenharmony_ci compatible = "fixed-clock"; 1762306a36Sopenharmony_ci #clock-cells = <0>; 1862306a36Sopenharmony_ci clock-frequency = <24000000>; 1962306a36Sopenharmony_ci }; 2062306a36Sopenharmony_ci }; 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci gpio_keys { 2362306a36Sopenharmony_ci compatible = "gpio-keys"; 2462306a36Sopenharmony_ci pinctrl-names = "default"; 2562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_gpiokeys_1>; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci button-1 { 2862306a36Sopenharmony_ci label = "BP1"; 2962306a36Sopenharmony_ci gpios = <&gpio3 31 GPIO_ACTIVE_LOW>; 3062306a36Sopenharmony_ci linux,code = <256>; 3162306a36Sopenharmony_ci wakeup-source; 3262306a36Sopenharmony_ci linux,input-type = <1>; 3362306a36Sopenharmony_ci }; 3462306a36Sopenharmony_ci }; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci leds { 3762306a36Sopenharmony_ci compatible = "gpio-leds"; 3862306a36Sopenharmony_ci pinctrl-names = "default"; 3962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_gpioled>; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci led1 { 4262306a36Sopenharmony_ci label = "led1"; 4362306a36Sopenharmony_ci gpios = <&gpio3 30 GPIO_ACTIVE_LOW>; 4462306a36Sopenharmony_ci linux,default-trigger = "heartbeat"; 4562306a36Sopenharmony_ci }; 4662306a36Sopenharmony_ci }; 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci reg_can: regulator-can { 4962306a36Sopenharmony_ci compatible = "regulator-fixed"; 5062306a36Sopenharmony_ci regulator-name = "CAN_RST"; 5162306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 5262306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 5362306a36Sopenharmony_ci gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>; 5462306a36Sopenharmony_ci startup-delay-us = <20000>; 5562306a36Sopenharmony_ci enable-active-high; 5662306a36Sopenharmony_ci }; 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci sound { 5962306a36Sopenharmony_ci compatible = "eukrea,asoc-tlv320"; 6062306a36Sopenharmony_ci eukrea,model = "imx51-eukrea-tlv320aic23"; 6162306a36Sopenharmony_ci ssi-controller = <&ssi2>; 6262306a36Sopenharmony_ci fsl,mux-int-port = <2>; 6362306a36Sopenharmony_ci fsl,mux-ext-port = <3>; 6462306a36Sopenharmony_ci }; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci usbphy1: usbphy1 { 6762306a36Sopenharmony_ci compatible = "usb-nop-xceiv"; 6862306a36Sopenharmony_ci clocks = <&clks IMX5_CLK_USB_PHY_GATE>; 6962306a36Sopenharmony_ci clock-names = "main_clk"; 7062306a36Sopenharmony_ci clock-frequency = <19200000>; 7162306a36Sopenharmony_ci #phy-cells = <0>; 7262306a36Sopenharmony_ci }; 7362306a36Sopenharmony_ci}; 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_ci&audmux { 7662306a36Sopenharmony_ci pinctrl-names = "default"; 7762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_audmux>; 7862306a36Sopenharmony_ci status = "okay"; 7962306a36Sopenharmony_ci}; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci&esdhc1 { 8262306a36Sopenharmony_ci pinctrl-names = "default"; 8362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_esdhc1 &pinctrl_esdhc1_cd>; 8462306a36Sopenharmony_ci cd-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; 8562306a36Sopenharmony_ci status = "okay"; 8662306a36Sopenharmony_ci}; 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci&ecspi1 { 8962306a36Sopenharmony_ci pinctrl-names = "default"; 9062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_ecspi1>; 9162306a36Sopenharmony_ci cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>; 9262306a36Sopenharmony_ci status = "okay"; 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ci can0: can@0 { 9562306a36Sopenharmony_ci pinctrl-names = "default"; 9662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_can>; 9762306a36Sopenharmony_ci compatible = "microchip,mcp2515"; 9862306a36Sopenharmony_ci reg = <0>; 9962306a36Sopenharmony_ci clocks = <&clk24M>; 10062306a36Sopenharmony_ci spi-max-frequency = <10000000>; 10162306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 10262306a36Sopenharmony_ci interrupts = <1 IRQ_TYPE_EDGE_FALLING>; 10362306a36Sopenharmony_ci vdd-supply = <®_can>; 10462306a36Sopenharmony_ci }; 10562306a36Sopenharmony_ci}; 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci&i2c1 { 10862306a36Sopenharmony_ci tlv320aic23: codec@1a { 10962306a36Sopenharmony_ci compatible = "ti,tlv320aic23"; 11062306a36Sopenharmony_ci reg = <0x1a>; 11162306a36Sopenharmony_ci }; 11262306a36Sopenharmony_ci}; 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci&iomuxc { 11562306a36Sopenharmony_ci imx51-eukrea { 11662306a36Sopenharmony_ci pinctrl_audmux: audmuxgrp { 11762306a36Sopenharmony_ci fsl,pins = < 11862306a36Sopenharmony_ci MX51_PAD_AUD3_BB_TXD__AUD3_TXD 0x80000000 11962306a36Sopenharmony_ci MX51_PAD_AUD3_BB_RXD__AUD3_RXD 0x80000000 12062306a36Sopenharmony_ci MX51_PAD_AUD3_BB_CK__AUD3_TXC 0x80000000 12162306a36Sopenharmony_ci MX51_PAD_AUD3_BB_FS__AUD3_TXFS 0x80000000 12262306a36Sopenharmony_ci >; 12362306a36Sopenharmony_ci }; 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci pinctrl_can: cangrp { 12762306a36Sopenharmony_ci fsl,pins = < 12862306a36Sopenharmony_ci MX51_PAD_CSI2_PIXCLK__GPIO4_15 0x80000000 /* nReset */ 12962306a36Sopenharmony_ci MX51_PAD_GPIO1_1__GPIO1_1 0x80000000 /* IRQ */ 13062306a36Sopenharmony_ci >; 13162306a36Sopenharmony_ci }; 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci pinctrl_ecspi1: ecspi1grp { 13462306a36Sopenharmony_ci fsl,pins = < 13562306a36Sopenharmony_ci MX51_PAD_CSPI1_MISO__ECSPI1_MISO 0x185 13662306a36Sopenharmony_ci MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI 0x185 13762306a36Sopenharmony_ci MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK 0x185 13862306a36Sopenharmony_ci MX51_PAD_CSPI1_SS0__GPIO4_24 0x80000000 /* CS0 */ 13962306a36Sopenharmony_ci >; 14062306a36Sopenharmony_ci }; 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ci pinctrl_esdhc1: esdhc1grp { 14362306a36Sopenharmony_ci fsl,pins = < 14462306a36Sopenharmony_ci MX51_PAD_SD1_CMD__SD1_CMD 0x400020d5 14562306a36Sopenharmony_ci MX51_PAD_SD1_CLK__SD1_CLK 0x20d5 14662306a36Sopenharmony_ci MX51_PAD_SD1_DATA0__SD1_DATA0 0x20d5 14762306a36Sopenharmony_ci MX51_PAD_SD1_DATA1__SD1_DATA1 0x20d5 14862306a36Sopenharmony_ci MX51_PAD_SD1_DATA2__SD1_DATA2 0x20d5 14962306a36Sopenharmony_ci MX51_PAD_SD1_DATA3__SD1_DATA3 0x20d5 15062306a36Sopenharmony_ci >; 15162306a36Sopenharmony_ci }; 15262306a36Sopenharmony_ci 15362306a36Sopenharmony_ci pinctrl_uart1: uart1grp { 15462306a36Sopenharmony_ci fsl,pins = < 15562306a36Sopenharmony_ci MX51_PAD_UART1_RXD__UART1_RXD 0x1c5 15662306a36Sopenharmony_ci MX51_PAD_UART1_TXD__UART1_TXD 0x1c5 15762306a36Sopenharmony_ci >; 15862306a36Sopenharmony_ci }; 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ci pinctrl_uart3: uart3grp { 16162306a36Sopenharmony_ci fsl,pins = < 16262306a36Sopenharmony_ci MX51_PAD_UART3_RXD__UART3_RXD 0x1c5 16362306a36Sopenharmony_ci MX51_PAD_UART3_TXD__UART3_TXD 0x1c5 16462306a36Sopenharmony_ci >; 16562306a36Sopenharmony_ci }; 16662306a36Sopenharmony_ci 16762306a36Sopenharmony_ci pinctrl_uart3_rtscts: uart3rtsctsgrp { 16862306a36Sopenharmony_ci fsl,pins = < 16962306a36Sopenharmony_ci MX51_PAD_KEY_COL4__UART3_RTS 0x1c5 17062306a36Sopenharmony_ci MX51_PAD_KEY_COL5__UART3_CTS 0x1c5 17162306a36Sopenharmony_ci >; 17262306a36Sopenharmony_ci }; 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ci pinctrl_backlight_1: backlightgrp-1 { 17562306a36Sopenharmony_ci fsl,pins = < 17662306a36Sopenharmony_ci MX51_PAD_DI1_D1_CS__GPIO3_4 0x1f5 17762306a36Sopenharmony_ci >; 17862306a36Sopenharmony_ci }; 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci pinctrl_esdhc1_cd: esdhc1_cd { 18162306a36Sopenharmony_ci fsl,pins = < 18262306a36Sopenharmony_ci MX51_PAD_GPIO1_0__GPIO1_0 0xd5 18362306a36Sopenharmony_ci >; 18462306a36Sopenharmony_ci }; 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ci pinctrl_gpiokeys_1: gpiokeysgrp-1 { 18762306a36Sopenharmony_ci fsl,pins = < 18862306a36Sopenharmony_ci MX51_PAD_NANDF_D9__GPIO3_31 0x1f5 18962306a36Sopenharmony_ci >; 19062306a36Sopenharmony_ci }; 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci pinctrl_gpioled: gpioledgrp-1 { 19362306a36Sopenharmony_ci fsl,pins = < 19462306a36Sopenharmony_ci MX51_PAD_NANDF_D10__GPIO3_30 0x80000000 19562306a36Sopenharmony_ci >; 19662306a36Sopenharmony_ci }; 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_ci pinctrl_reg_lcd_3v3: reg_lcd_3v3 { 19962306a36Sopenharmony_ci fsl,pins = < 20062306a36Sopenharmony_ci MX51_PAD_CSI1_D9__GPIO3_13 0x1f5 20162306a36Sopenharmony_ci >; 20262306a36Sopenharmony_ci }; 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ci pinctrl_usbh1: usbh1grp { 20562306a36Sopenharmony_ci fsl,pins = < 20662306a36Sopenharmony_ci MX51_PAD_USBH1_CLK__USBH1_CLK 0x1e5 20762306a36Sopenharmony_ci MX51_PAD_USBH1_DIR__USBH1_DIR 0x1e5 20862306a36Sopenharmony_ci MX51_PAD_USBH1_NXT__USBH1_NXT 0x1e5 20962306a36Sopenharmony_ci MX51_PAD_USBH1_DATA0__USBH1_DATA0 0x1e5 21062306a36Sopenharmony_ci MX51_PAD_USBH1_DATA1__USBH1_DATA1 0x1e5 21162306a36Sopenharmony_ci MX51_PAD_USBH1_DATA2__USBH1_DATA2 0x1e5 21262306a36Sopenharmony_ci MX51_PAD_USBH1_DATA3__USBH1_DATA3 0x1e5 21362306a36Sopenharmony_ci MX51_PAD_USBH1_DATA4__USBH1_DATA4 0x1e5 21462306a36Sopenharmony_ci MX51_PAD_USBH1_DATA5__USBH1_DATA5 0x1e5 21562306a36Sopenharmony_ci MX51_PAD_USBH1_DATA6__USBH1_DATA6 0x1e5 21662306a36Sopenharmony_ci MX51_PAD_USBH1_DATA7__USBH1_DATA7 0x1e5 21762306a36Sopenharmony_ci MX51_PAD_USBH1_STP__USBH1_STP 0x1e5 21862306a36Sopenharmony_ci >; 21962306a36Sopenharmony_ci }; 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ci pinctrl_usbh1_vbus: usbh1-vbusgrp { 22262306a36Sopenharmony_ci fsl,pins = < 22362306a36Sopenharmony_ci MX51_PAD_EIM_CS3__GPIO2_28 0x1f5 22462306a36Sopenharmony_ci >; 22562306a36Sopenharmony_ci }; 22662306a36Sopenharmony_ci }; 22762306a36Sopenharmony_ci}; 22862306a36Sopenharmony_ci 22962306a36Sopenharmony_ci&ssi2 { 23062306a36Sopenharmony_ci codec-handle = <&tlv320aic23>; 23162306a36Sopenharmony_ci status = "okay"; 23262306a36Sopenharmony_ci}; 23362306a36Sopenharmony_ci 23462306a36Sopenharmony_ci&uart1 { 23562306a36Sopenharmony_ci pinctrl-names = "default"; 23662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart1>; 23762306a36Sopenharmony_ci uart-has-rtscts; 23862306a36Sopenharmony_ci status = "okay"; 23962306a36Sopenharmony_ci}; 24062306a36Sopenharmony_ci 24162306a36Sopenharmony_ci&uart3 { 24262306a36Sopenharmony_ci pinctrl-names = "default"; 24362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>; 24462306a36Sopenharmony_ci uart-has-rtscts; 24562306a36Sopenharmony_ci status = "okay"; 24662306a36Sopenharmony_ci}; 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ci&usbh1 { 24962306a36Sopenharmony_ci pinctrl-names = "default"; 25062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usbh1>; 25162306a36Sopenharmony_ci fsl,usbphy = <&usbphy1>; 25262306a36Sopenharmony_ci dr_mode = "host"; 25362306a36Sopenharmony_ci phy_type = "ulpi"; 25462306a36Sopenharmony_ci status = "okay"; 25562306a36Sopenharmony_ci}; 25662306a36Sopenharmony_ci 25762306a36Sopenharmony_ci&usbotg { 25862306a36Sopenharmony_ci dr_mode = "otg"; 25962306a36Sopenharmony_ci phy_type = "utmi_wide"; 26062306a36Sopenharmony_ci status = "okay"; 26162306a36Sopenharmony_ci}; 26262306a36Sopenharmony_ci 26362306a36Sopenharmony_ci&usbphy0 { 26462306a36Sopenharmony_ci pinctrl-names = "default"; 26562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usbh1_vbus>; 26662306a36Sopenharmony_ci reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; 26762306a36Sopenharmony_ci}; 268