1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later 2724ba675SRob Herring/* 3724ba675SRob Herring * Copyright 2013 Eukréa Electromatique <denis@eukrea.com> 4724ba675SRob Herring */ 5724ba675SRob Herring 6724ba675SRob Herring/dts-v1/; 7724ba675SRob Herring#include "imx51-eukrea-cpuimx51.dtsi" 8724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 9724ba675SRob Herring 10724ba675SRob Herring/ { 11724ba675SRob Herring model = "Eukrea CPUIMX51"; 12724ba675SRob Herring compatible = "eukrea,mbimxsd51","eukrea,cpuimx51", "fsl,imx51"; 13724ba675SRob Herring 14724ba675SRob Herring clocks { 15724ba675SRob Herring clk24M: can_clock { 16724ba675SRob Herring compatible = "fixed-clock"; 17724ba675SRob Herring #clock-cells = <0>; 18724ba675SRob Herring clock-frequency = <24000000>; 19724ba675SRob Herring }; 20724ba675SRob Herring }; 21724ba675SRob Herring 22724ba675SRob Herring gpio_keys { 23724ba675SRob Herring compatible = "gpio-keys"; 24724ba675SRob Herring pinctrl-names = "default"; 25724ba675SRob Herring pinctrl-0 = <&pinctrl_gpiokeys_1>; 26724ba675SRob Herring 27724ba675SRob Herring button-1 { 28724ba675SRob Herring label = "BP1"; 29724ba675SRob Herring gpios = <&gpio3 31 GPIO_ACTIVE_LOW>; 30724ba675SRob Herring linux,code = <256>; 31724ba675SRob Herring wakeup-source; 32724ba675SRob Herring linux,input-type = <1>; 33724ba675SRob Herring }; 34724ba675SRob Herring }; 35724ba675SRob Herring 36724ba675SRob Herring leds { 37724ba675SRob Herring compatible = "gpio-leds"; 38724ba675SRob Herring pinctrl-names = "default"; 39724ba675SRob Herring pinctrl-0 = <&pinctrl_gpioled>; 40724ba675SRob Herring 41724ba675SRob Herring led1 { 42724ba675SRob Herring label = "led1"; 43724ba675SRob Herring gpios = <&gpio3 30 GPIO_ACTIVE_LOW>; 44724ba675SRob Herring linux,default-trigger = "heartbeat"; 45724ba675SRob Herring }; 46724ba675SRob Herring }; 47724ba675SRob Herring 48*ec20d468SFabio Estevam reg_can: regulator-can { 49724ba675SRob Herring compatible = "regulator-fixed"; 50724ba675SRob Herring regulator-name = "CAN_RST"; 51724ba675SRob Herring regulator-min-microvolt = <3300000>; 52724ba675SRob Herring regulator-max-microvolt = <3300000>; 53724ba675SRob Herring gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>; 54724ba675SRob Herring startup-delay-us = <20000>; 55724ba675SRob Herring enable-active-high; 56724ba675SRob Herring }; 57724ba675SRob Herring 58724ba675SRob Herring sound { 59724ba675SRob Herring compatible = "eukrea,asoc-tlv320"; 60724ba675SRob Herring eukrea,model = "imx51-eukrea-tlv320aic23"; 61724ba675SRob Herring ssi-controller = <&ssi2>; 62724ba675SRob Herring fsl,mux-int-port = <2>; 63724ba675SRob Herring fsl,mux-ext-port = <3>; 64724ba675SRob Herring }; 65724ba675SRob Herring 66724ba675SRob Herring usbphy1: usbphy1 { 67724ba675SRob Herring compatible = "usb-nop-xceiv"; 68724ba675SRob Herring clocks = <&clks IMX5_CLK_USB_PHY_GATE>; 69724ba675SRob Herring clock-names = "main_clk"; 70724ba675SRob Herring clock-frequency = <19200000>; 71724ba675SRob Herring #phy-cells = <0>; 72724ba675SRob Herring }; 73724ba675SRob Herring}; 74724ba675SRob Herring 75724ba675SRob Herring&audmux { 76724ba675SRob Herring pinctrl-names = "default"; 77724ba675SRob Herring pinctrl-0 = <&pinctrl_audmux>; 78724ba675SRob Herring status = "okay"; 79724ba675SRob Herring}; 80724ba675SRob Herring 81724ba675SRob Herring&esdhc1 { 82724ba675SRob Herring pinctrl-names = "default"; 83724ba675SRob Herring pinctrl-0 = <&pinctrl_esdhc1 &pinctrl_esdhc1_cd>; 84724ba675SRob Herring cd-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; 85724ba675SRob Herring status = "okay"; 86724ba675SRob Herring}; 87724ba675SRob Herring 88724ba675SRob Herring&ecspi1 { 89724ba675SRob Herring pinctrl-names = "default"; 90724ba675SRob Herring pinctrl-0 = <&pinctrl_ecspi1>; 91724ba675SRob Herring cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>; 92724ba675SRob Herring status = "okay"; 93724ba675SRob Herring 94724ba675SRob Herring can0: can@0 { 95724ba675SRob Herring pinctrl-names = "default"; 96724ba675SRob Herring pinctrl-0 = <&pinctrl_can>; 97724ba675SRob Herring compatible = "microchip,mcp2515"; 98724ba675SRob Herring reg = <0>; 99724ba675SRob Herring clocks = <&clk24M>; 100724ba675SRob Herring spi-max-frequency = <10000000>; 101724ba675SRob Herring interrupt-parent = <&gpio1>; 102724ba675SRob Herring interrupts = <1 IRQ_TYPE_EDGE_FALLING>; 103724ba675SRob Herring vdd-supply = <®_can>; 104724ba675SRob Herring }; 105724ba675SRob Herring}; 106724ba675SRob Herring 107724ba675SRob Herring&i2c1 { 108724ba675SRob Herring tlv320aic23: codec@1a { 109724ba675SRob Herring compatible = "ti,tlv320aic23"; 110724ba675SRob Herring reg = <0x1a>; 111724ba675SRob Herring }; 112724ba675SRob Herring}; 113724ba675SRob Herring 114724ba675SRob Herring&iomuxc { 115724ba675SRob Herring imx51-eukrea { 116724ba675SRob Herring pinctrl_audmux: audmuxgrp { 117724ba675SRob Herring fsl,pins = < 118724ba675SRob Herring MX51_PAD_AUD3_BB_TXD__AUD3_TXD 0x80000000 119724ba675SRob Herring MX51_PAD_AUD3_BB_RXD__AUD3_RXD 0x80000000 120724ba675SRob Herring MX51_PAD_AUD3_BB_CK__AUD3_TXC 0x80000000 121724ba675SRob Herring MX51_PAD_AUD3_BB_FS__AUD3_TXFS 0x80000000 122724ba675SRob Herring >; 123724ba675SRob Herring }; 124724ba675SRob Herring 125724ba675SRob Herring 126724ba675SRob Herring pinctrl_can: cangrp { 127724ba675SRob Herring fsl,pins = < 128724ba675SRob Herring MX51_PAD_CSI2_PIXCLK__GPIO4_15 0x80000000 /* nReset */ 129724ba675SRob Herring MX51_PAD_GPIO1_1__GPIO1_1 0x80000000 /* IRQ */ 130724ba675SRob Herring >; 131724ba675SRob Herring }; 132724ba675SRob Herring 133724ba675SRob Herring pinctrl_ecspi1: ecspi1grp { 134724ba675SRob Herring fsl,pins = < 135724ba675SRob Herring MX51_PAD_CSPI1_MISO__ECSPI1_MISO 0x185 136724ba675SRob Herring MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI 0x185 137724ba675SRob Herring MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK 0x185 138724ba675SRob Herring MX51_PAD_CSPI1_SS0__GPIO4_24 0x80000000 /* CS0 */ 139724ba675SRob Herring >; 140724ba675SRob Herring }; 141724ba675SRob Herring 142724ba675SRob Herring pinctrl_esdhc1: esdhc1grp { 143724ba675SRob Herring fsl,pins = < 144724ba675SRob Herring MX51_PAD_SD1_CMD__SD1_CMD 0x400020d5 145724ba675SRob Herring MX51_PAD_SD1_CLK__SD1_CLK 0x20d5 146724ba675SRob Herring MX51_PAD_SD1_DATA0__SD1_DATA0 0x20d5 147724ba675SRob Herring MX51_PAD_SD1_DATA1__SD1_DATA1 0x20d5 148724ba675SRob Herring MX51_PAD_SD1_DATA2__SD1_DATA2 0x20d5 149724ba675SRob Herring MX51_PAD_SD1_DATA3__SD1_DATA3 0x20d5 150724ba675SRob Herring >; 151724ba675SRob Herring }; 152724ba675SRob Herring 153724ba675SRob Herring pinctrl_uart1: uart1grp { 154724ba675SRob Herring fsl,pins = < 155724ba675SRob Herring MX51_PAD_UART1_RXD__UART1_RXD 0x1c5 156724ba675SRob Herring MX51_PAD_UART1_TXD__UART1_TXD 0x1c5 157724ba675SRob Herring >; 158724ba675SRob Herring }; 159724ba675SRob Herring 160724ba675SRob Herring pinctrl_uart3: uart3grp { 161724ba675SRob Herring fsl,pins = < 162724ba675SRob Herring MX51_PAD_UART3_RXD__UART3_RXD 0x1c5 163724ba675SRob Herring MX51_PAD_UART3_TXD__UART3_TXD 0x1c5 164724ba675SRob Herring >; 165724ba675SRob Herring }; 166724ba675SRob Herring 167724ba675SRob Herring pinctrl_uart3_rtscts: uart3rtsctsgrp { 168724ba675SRob Herring fsl,pins = < 169724ba675SRob Herring MX51_PAD_KEY_COL4__UART3_RTS 0x1c5 170724ba675SRob Herring MX51_PAD_KEY_COL5__UART3_CTS 0x1c5 171724ba675SRob Herring >; 172724ba675SRob Herring }; 173724ba675SRob Herring 174724ba675SRob Herring pinctrl_backlight_1: backlightgrp-1 { 175724ba675SRob Herring fsl,pins = < 176724ba675SRob Herring MX51_PAD_DI1_D1_CS__GPIO3_4 0x1f5 177724ba675SRob Herring >; 178724ba675SRob Herring }; 179724ba675SRob Herring 180724ba675SRob Herring pinctrl_esdhc1_cd: esdhc1_cd { 181724ba675SRob Herring fsl,pins = < 182724ba675SRob Herring MX51_PAD_GPIO1_0__GPIO1_0 0xd5 183724ba675SRob Herring >; 184724ba675SRob Herring }; 185724ba675SRob Herring 186724ba675SRob Herring pinctrl_gpiokeys_1: gpiokeysgrp-1 { 187724ba675SRob Herring fsl,pins = < 188724ba675SRob Herring MX51_PAD_NANDF_D9__GPIO3_31 0x1f5 189724ba675SRob Herring >; 190724ba675SRob Herring }; 191724ba675SRob Herring 192724ba675SRob Herring pinctrl_gpioled: gpioledgrp-1 { 193724ba675SRob Herring fsl,pins = < 194724ba675SRob Herring MX51_PAD_NANDF_D10__GPIO3_30 0x80000000 195724ba675SRob Herring >; 196724ba675SRob Herring }; 197724ba675SRob Herring 198724ba675SRob Herring pinctrl_reg_lcd_3v3: reg_lcd_3v3 { 199724ba675SRob Herring fsl,pins = < 200724ba675SRob Herring MX51_PAD_CSI1_D9__GPIO3_13 0x1f5 201724ba675SRob Herring >; 202724ba675SRob Herring }; 203724ba675SRob Herring 204724ba675SRob Herring pinctrl_usbh1: usbh1grp { 205724ba675SRob Herring fsl,pins = < 206724ba675SRob Herring MX51_PAD_USBH1_CLK__USBH1_CLK 0x1e5 207724ba675SRob Herring MX51_PAD_USBH1_DIR__USBH1_DIR 0x1e5 208724ba675SRob Herring MX51_PAD_USBH1_NXT__USBH1_NXT 0x1e5 209724ba675SRob Herring MX51_PAD_USBH1_DATA0__USBH1_DATA0 0x1e5 210724ba675SRob Herring MX51_PAD_USBH1_DATA1__USBH1_DATA1 0x1e5 211724ba675SRob Herring MX51_PAD_USBH1_DATA2__USBH1_DATA2 0x1e5 212724ba675SRob Herring MX51_PAD_USBH1_DATA3__USBH1_DATA3 0x1e5 213724ba675SRob Herring MX51_PAD_USBH1_DATA4__USBH1_DATA4 0x1e5 214724ba675SRob Herring MX51_PAD_USBH1_DATA5__USBH1_DATA5 0x1e5 215724ba675SRob Herring MX51_PAD_USBH1_DATA6__USBH1_DATA6 0x1e5 216724ba675SRob Herring MX51_PAD_USBH1_DATA7__USBH1_DATA7 0x1e5 217724ba675SRob Herring MX51_PAD_USBH1_STP__USBH1_STP 0x1e5 218724ba675SRob Herring >; 219724ba675SRob Herring }; 220724ba675SRob Herring 221724ba675SRob Herring pinctrl_usbh1_vbus: usbh1-vbusgrp { 222724ba675SRob Herring fsl,pins = < 223724ba675SRob Herring MX51_PAD_EIM_CS3__GPIO2_28 0x1f5 224724ba675SRob Herring >; 225724ba675SRob Herring }; 226724ba675SRob Herring }; 227724ba675SRob Herring}; 228724ba675SRob Herring 229724ba675SRob Herring&ssi2 { 230724ba675SRob Herring codec-handle = <&tlv320aic23>; 231724ba675SRob Herring status = "okay"; 232724ba675SRob Herring}; 233724ba675SRob Herring 234724ba675SRob Herring&uart1 { 235724ba675SRob Herring pinctrl-names = "default"; 236724ba675SRob Herring pinctrl-0 = <&pinctrl_uart1>; 237724ba675SRob Herring uart-has-rtscts; 238724ba675SRob Herring status = "okay"; 239724ba675SRob Herring}; 240724ba675SRob Herring 241724ba675SRob Herring&uart3 { 242724ba675SRob Herring pinctrl-names = "default"; 243724ba675SRob Herring pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>; 244724ba675SRob Herring uart-has-rtscts; 245724ba675SRob Herring status = "okay"; 246724ba675SRob Herring}; 247724ba675SRob Herring 248724ba675SRob Herring&usbh1 { 249724ba675SRob Herring pinctrl-names = "default"; 250724ba675SRob Herring pinctrl-0 = <&pinctrl_usbh1>; 251724ba675SRob Herring fsl,usbphy = <&usbphy1>; 252724ba675SRob Herring dr_mode = "host"; 253724ba675SRob Herring phy_type = "ulpi"; 254724ba675SRob Herring status = "okay"; 255724ba675SRob Herring}; 256724ba675SRob Herring 257724ba675SRob Herring&usbotg { 258724ba675SRob Herring dr_mode = "otg"; 259724ba675SRob Herring phy_type = "utmi_wide"; 260724ba675SRob Herring status = "okay"; 261724ba675SRob Herring}; 262724ba675SRob Herring 263724ba675SRob Herring&usbphy0 { 264724ba675SRob Herring pinctrl-names = "default"; 265724ba675SRob Herring pinctrl-0 = <&pinctrl_usbh1_vbus>; 266724ba675SRob Herring reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; 267724ba675SRob Herring}; 268