1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Copyright 2013 Eukréa Electromatique <denis@eukrea.com> 4f126890aSEmmanuel Vadot */ 5f126890aSEmmanuel Vadot 6f126890aSEmmanuel Vadot/dts-v1/; 7f126890aSEmmanuel Vadot#include "imx51-eukrea-cpuimx51.dtsi" 8f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 9f126890aSEmmanuel Vadot 10f126890aSEmmanuel Vadot/ { 11f126890aSEmmanuel Vadot model = "Eukrea CPUIMX51"; 12f126890aSEmmanuel Vadot compatible = "eukrea,mbimxsd51","eukrea,cpuimx51", "fsl,imx51"; 13f126890aSEmmanuel Vadot 14f126890aSEmmanuel Vadot clocks { 15f126890aSEmmanuel Vadot clk24M: can_clock { 16f126890aSEmmanuel Vadot compatible = "fixed-clock"; 17f126890aSEmmanuel Vadot #clock-cells = <0>; 18f126890aSEmmanuel Vadot clock-frequency = <24000000>; 19f126890aSEmmanuel Vadot }; 20f126890aSEmmanuel Vadot }; 21f126890aSEmmanuel Vadot 22f126890aSEmmanuel Vadot gpio_keys { 23f126890aSEmmanuel Vadot compatible = "gpio-keys"; 24f126890aSEmmanuel Vadot pinctrl-names = "default"; 25f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_gpiokeys_1>; 26f126890aSEmmanuel Vadot 27f126890aSEmmanuel Vadot button-1 { 28f126890aSEmmanuel Vadot label = "BP1"; 29f126890aSEmmanuel Vadot gpios = <&gpio3 31 GPIO_ACTIVE_LOW>; 30f126890aSEmmanuel Vadot linux,code = <256>; 31f126890aSEmmanuel Vadot wakeup-source; 32f126890aSEmmanuel Vadot linux,input-type = <1>; 33f126890aSEmmanuel Vadot }; 34f126890aSEmmanuel Vadot }; 35f126890aSEmmanuel Vadot 36f126890aSEmmanuel Vadot leds { 37f126890aSEmmanuel Vadot compatible = "gpio-leds"; 38f126890aSEmmanuel Vadot pinctrl-names = "default"; 39f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_gpioled>; 40f126890aSEmmanuel Vadot 41f126890aSEmmanuel Vadot led1 { 42f126890aSEmmanuel Vadot label = "led1"; 43f126890aSEmmanuel Vadot gpios = <&gpio3 30 GPIO_ACTIVE_LOW>; 44f126890aSEmmanuel Vadot linux,default-trigger = "heartbeat"; 45f126890aSEmmanuel Vadot }; 46f126890aSEmmanuel Vadot }; 47f126890aSEmmanuel Vadot 48*aa1a8ff2SEmmanuel Vadot reg_can: regulator-can { 49f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 50f126890aSEmmanuel Vadot regulator-name = "CAN_RST"; 51f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 52f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 53f126890aSEmmanuel Vadot gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>; 54f126890aSEmmanuel Vadot startup-delay-us = <20000>; 55f126890aSEmmanuel Vadot enable-active-high; 56f126890aSEmmanuel Vadot }; 57f126890aSEmmanuel Vadot 58f126890aSEmmanuel Vadot sound { 59f126890aSEmmanuel Vadot compatible = "eukrea,asoc-tlv320"; 60f126890aSEmmanuel Vadot eukrea,model = "imx51-eukrea-tlv320aic23"; 61f126890aSEmmanuel Vadot ssi-controller = <&ssi2>; 62f126890aSEmmanuel Vadot fsl,mux-int-port = <2>; 63f126890aSEmmanuel Vadot fsl,mux-ext-port = <3>; 64f126890aSEmmanuel Vadot }; 65f126890aSEmmanuel Vadot 66f126890aSEmmanuel Vadot usbphy1: usbphy1 { 67f126890aSEmmanuel Vadot compatible = "usb-nop-xceiv"; 68f126890aSEmmanuel Vadot clocks = <&clks IMX5_CLK_USB_PHY_GATE>; 69f126890aSEmmanuel Vadot clock-names = "main_clk"; 70f126890aSEmmanuel Vadot clock-frequency = <19200000>; 71f126890aSEmmanuel Vadot #phy-cells = <0>; 72f126890aSEmmanuel Vadot }; 73f126890aSEmmanuel Vadot}; 74f126890aSEmmanuel Vadot 75f126890aSEmmanuel Vadot&audmux { 76f126890aSEmmanuel Vadot pinctrl-names = "default"; 77f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_audmux>; 78f126890aSEmmanuel Vadot status = "okay"; 79f126890aSEmmanuel Vadot}; 80f126890aSEmmanuel Vadot 81f126890aSEmmanuel Vadot&esdhc1 { 82f126890aSEmmanuel Vadot pinctrl-names = "default"; 83f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_esdhc1 &pinctrl_esdhc1_cd>; 84f126890aSEmmanuel Vadot cd-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; 85f126890aSEmmanuel Vadot status = "okay"; 86f126890aSEmmanuel Vadot}; 87f126890aSEmmanuel Vadot 88f126890aSEmmanuel Vadot&ecspi1 { 89f126890aSEmmanuel Vadot pinctrl-names = "default"; 90f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_ecspi1>; 91f126890aSEmmanuel Vadot cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>; 92f126890aSEmmanuel Vadot status = "okay"; 93f126890aSEmmanuel Vadot 94f126890aSEmmanuel Vadot can0: can@0 { 95f126890aSEmmanuel Vadot pinctrl-names = "default"; 96f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_can>; 97f126890aSEmmanuel Vadot compatible = "microchip,mcp2515"; 98f126890aSEmmanuel Vadot reg = <0>; 99f126890aSEmmanuel Vadot clocks = <&clk24M>; 100f126890aSEmmanuel Vadot spi-max-frequency = <10000000>; 101f126890aSEmmanuel Vadot interrupt-parent = <&gpio1>; 102f126890aSEmmanuel Vadot interrupts = <1 IRQ_TYPE_EDGE_FALLING>; 103f126890aSEmmanuel Vadot vdd-supply = <®_can>; 104f126890aSEmmanuel Vadot }; 105f126890aSEmmanuel Vadot}; 106f126890aSEmmanuel Vadot 107f126890aSEmmanuel Vadot&i2c1 { 108f126890aSEmmanuel Vadot tlv320aic23: codec@1a { 109f126890aSEmmanuel Vadot compatible = "ti,tlv320aic23"; 110f126890aSEmmanuel Vadot reg = <0x1a>; 111f126890aSEmmanuel Vadot }; 112f126890aSEmmanuel Vadot}; 113f126890aSEmmanuel Vadot 114f126890aSEmmanuel Vadot&iomuxc { 115f126890aSEmmanuel Vadot imx51-eukrea { 116f126890aSEmmanuel Vadot pinctrl_audmux: audmuxgrp { 117f126890aSEmmanuel Vadot fsl,pins = < 118f126890aSEmmanuel Vadot MX51_PAD_AUD3_BB_TXD__AUD3_TXD 0x80000000 119f126890aSEmmanuel Vadot MX51_PAD_AUD3_BB_RXD__AUD3_RXD 0x80000000 120f126890aSEmmanuel Vadot MX51_PAD_AUD3_BB_CK__AUD3_TXC 0x80000000 121f126890aSEmmanuel Vadot MX51_PAD_AUD3_BB_FS__AUD3_TXFS 0x80000000 122f126890aSEmmanuel Vadot >; 123f126890aSEmmanuel Vadot }; 124f126890aSEmmanuel Vadot 125f126890aSEmmanuel Vadot 126f126890aSEmmanuel Vadot pinctrl_can: cangrp { 127f126890aSEmmanuel Vadot fsl,pins = < 128f126890aSEmmanuel Vadot MX51_PAD_CSI2_PIXCLK__GPIO4_15 0x80000000 /* nReset */ 129f126890aSEmmanuel Vadot MX51_PAD_GPIO1_1__GPIO1_1 0x80000000 /* IRQ */ 130f126890aSEmmanuel Vadot >; 131f126890aSEmmanuel Vadot }; 132f126890aSEmmanuel Vadot 133f126890aSEmmanuel Vadot pinctrl_ecspi1: ecspi1grp { 134f126890aSEmmanuel Vadot fsl,pins = < 135f126890aSEmmanuel Vadot MX51_PAD_CSPI1_MISO__ECSPI1_MISO 0x185 136f126890aSEmmanuel Vadot MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI 0x185 137f126890aSEmmanuel Vadot MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK 0x185 138f126890aSEmmanuel Vadot MX51_PAD_CSPI1_SS0__GPIO4_24 0x80000000 /* CS0 */ 139f126890aSEmmanuel Vadot >; 140f126890aSEmmanuel Vadot }; 141f126890aSEmmanuel Vadot 142f126890aSEmmanuel Vadot pinctrl_esdhc1: esdhc1grp { 143f126890aSEmmanuel Vadot fsl,pins = < 144f126890aSEmmanuel Vadot MX51_PAD_SD1_CMD__SD1_CMD 0x400020d5 145f126890aSEmmanuel Vadot MX51_PAD_SD1_CLK__SD1_CLK 0x20d5 146f126890aSEmmanuel Vadot MX51_PAD_SD1_DATA0__SD1_DATA0 0x20d5 147f126890aSEmmanuel Vadot MX51_PAD_SD1_DATA1__SD1_DATA1 0x20d5 148f126890aSEmmanuel Vadot MX51_PAD_SD1_DATA2__SD1_DATA2 0x20d5 149f126890aSEmmanuel Vadot MX51_PAD_SD1_DATA3__SD1_DATA3 0x20d5 150f126890aSEmmanuel Vadot >; 151f126890aSEmmanuel Vadot }; 152f126890aSEmmanuel Vadot 153f126890aSEmmanuel Vadot pinctrl_uart1: uart1grp { 154f126890aSEmmanuel Vadot fsl,pins = < 155f126890aSEmmanuel Vadot MX51_PAD_UART1_RXD__UART1_RXD 0x1c5 156f126890aSEmmanuel Vadot MX51_PAD_UART1_TXD__UART1_TXD 0x1c5 157f126890aSEmmanuel Vadot >; 158f126890aSEmmanuel Vadot }; 159f126890aSEmmanuel Vadot 160f126890aSEmmanuel Vadot pinctrl_uart3: uart3grp { 161f126890aSEmmanuel Vadot fsl,pins = < 162f126890aSEmmanuel Vadot MX51_PAD_UART3_RXD__UART3_RXD 0x1c5 163f126890aSEmmanuel Vadot MX51_PAD_UART3_TXD__UART3_TXD 0x1c5 164f126890aSEmmanuel Vadot >; 165f126890aSEmmanuel Vadot }; 166f126890aSEmmanuel Vadot 167f126890aSEmmanuel Vadot pinctrl_uart3_rtscts: uart3rtsctsgrp { 168f126890aSEmmanuel Vadot fsl,pins = < 169f126890aSEmmanuel Vadot MX51_PAD_KEY_COL4__UART3_RTS 0x1c5 170f126890aSEmmanuel Vadot MX51_PAD_KEY_COL5__UART3_CTS 0x1c5 171f126890aSEmmanuel Vadot >; 172f126890aSEmmanuel Vadot }; 173f126890aSEmmanuel Vadot 174f126890aSEmmanuel Vadot pinctrl_backlight_1: backlightgrp-1 { 175f126890aSEmmanuel Vadot fsl,pins = < 176f126890aSEmmanuel Vadot MX51_PAD_DI1_D1_CS__GPIO3_4 0x1f5 177f126890aSEmmanuel Vadot >; 178f126890aSEmmanuel Vadot }; 179f126890aSEmmanuel Vadot 180f126890aSEmmanuel Vadot pinctrl_esdhc1_cd: esdhc1_cd { 181f126890aSEmmanuel Vadot fsl,pins = < 182f126890aSEmmanuel Vadot MX51_PAD_GPIO1_0__GPIO1_0 0xd5 183f126890aSEmmanuel Vadot >; 184f126890aSEmmanuel Vadot }; 185f126890aSEmmanuel Vadot 186f126890aSEmmanuel Vadot pinctrl_gpiokeys_1: gpiokeysgrp-1 { 187f126890aSEmmanuel Vadot fsl,pins = < 188f126890aSEmmanuel Vadot MX51_PAD_NANDF_D9__GPIO3_31 0x1f5 189f126890aSEmmanuel Vadot >; 190f126890aSEmmanuel Vadot }; 191f126890aSEmmanuel Vadot 192f126890aSEmmanuel Vadot pinctrl_gpioled: gpioledgrp-1 { 193f126890aSEmmanuel Vadot fsl,pins = < 194f126890aSEmmanuel Vadot MX51_PAD_NANDF_D10__GPIO3_30 0x80000000 195f126890aSEmmanuel Vadot >; 196f126890aSEmmanuel Vadot }; 197f126890aSEmmanuel Vadot 198f126890aSEmmanuel Vadot pinctrl_reg_lcd_3v3: reg_lcd_3v3 { 199f126890aSEmmanuel Vadot fsl,pins = < 200f126890aSEmmanuel Vadot MX51_PAD_CSI1_D9__GPIO3_13 0x1f5 201f126890aSEmmanuel Vadot >; 202f126890aSEmmanuel Vadot }; 203f126890aSEmmanuel Vadot 204f126890aSEmmanuel Vadot pinctrl_usbh1: usbh1grp { 205f126890aSEmmanuel Vadot fsl,pins = < 206f126890aSEmmanuel Vadot MX51_PAD_USBH1_CLK__USBH1_CLK 0x1e5 207f126890aSEmmanuel Vadot MX51_PAD_USBH1_DIR__USBH1_DIR 0x1e5 208f126890aSEmmanuel Vadot MX51_PAD_USBH1_NXT__USBH1_NXT 0x1e5 209f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA0__USBH1_DATA0 0x1e5 210f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA1__USBH1_DATA1 0x1e5 211f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA2__USBH1_DATA2 0x1e5 212f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA3__USBH1_DATA3 0x1e5 213f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA4__USBH1_DATA4 0x1e5 214f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA5__USBH1_DATA5 0x1e5 215f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA6__USBH1_DATA6 0x1e5 216f126890aSEmmanuel Vadot MX51_PAD_USBH1_DATA7__USBH1_DATA7 0x1e5 217f126890aSEmmanuel Vadot MX51_PAD_USBH1_STP__USBH1_STP 0x1e5 218f126890aSEmmanuel Vadot >; 219f126890aSEmmanuel Vadot }; 220f126890aSEmmanuel Vadot 221f126890aSEmmanuel Vadot pinctrl_usbh1_vbus: usbh1-vbusgrp { 222f126890aSEmmanuel Vadot fsl,pins = < 223f126890aSEmmanuel Vadot MX51_PAD_EIM_CS3__GPIO2_28 0x1f5 224f126890aSEmmanuel Vadot >; 225f126890aSEmmanuel Vadot }; 226f126890aSEmmanuel Vadot }; 227f126890aSEmmanuel Vadot}; 228f126890aSEmmanuel Vadot 229f126890aSEmmanuel Vadot&ssi2 { 230f126890aSEmmanuel Vadot codec-handle = <&tlv320aic23>; 231f126890aSEmmanuel Vadot status = "okay"; 232f126890aSEmmanuel Vadot}; 233f126890aSEmmanuel Vadot 234f126890aSEmmanuel Vadot&uart1 { 235f126890aSEmmanuel Vadot pinctrl-names = "default"; 236f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart1>; 237f126890aSEmmanuel Vadot uart-has-rtscts; 238f126890aSEmmanuel Vadot status = "okay"; 239f126890aSEmmanuel Vadot}; 240f126890aSEmmanuel Vadot 241f126890aSEmmanuel Vadot&uart3 { 242f126890aSEmmanuel Vadot pinctrl-names = "default"; 243f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>; 244f126890aSEmmanuel Vadot uart-has-rtscts; 245f126890aSEmmanuel Vadot status = "okay"; 246f126890aSEmmanuel Vadot}; 247f126890aSEmmanuel Vadot 248f126890aSEmmanuel Vadot&usbh1 { 249f126890aSEmmanuel Vadot pinctrl-names = "default"; 250f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usbh1>; 251f126890aSEmmanuel Vadot fsl,usbphy = <&usbphy1>; 252f126890aSEmmanuel Vadot dr_mode = "host"; 253f126890aSEmmanuel Vadot phy_type = "ulpi"; 254f126890aSEmmanuel Vadot status = "okay"; 255f126890aSEmmanuel Vadot}; 256f126890aSEmmanuel Vadot 257f126890aSEmmanuel Vadot&usbotg { 258f126890aSEmmanuel Vadot dr_mode = "otg"; 259f126890aSEmmanuel Vadot phy_type = "utmi_wide"; 260f126890aSEmmanuel Vadot status = "okay"; 261f126890aSEmmanuel Vadot}; 262f126890aSEmmanuel Vadot 263f126890aSEmmanuel Vadot&usbphy0 { 264f126890aSEmmanuel Vadot pinctrl-names = "default"; 265f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usbh1_vbus>; 266f126890aSEmmanuel Vadot reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; 267f126890aSEmmanuel Vadot}; 268