| // SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
| /* |
| * Copyright 2023 Toradex |
| * |
| * Common dtsi for Verdin AM62 SoM on Development carrier board |
| * |
| * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62 |
| * https://www.toradex.com/products/carrier-board/verdin-development-board-kit |
| */ |
| |
| / { |
| sound { |
| compatible = "simple-audio-card"; |
| simple-audio-card,bitclock-master = <&codec_dai>; |
| simple-audio-card,format = "i2s"; |
| simple-audio-card,frame-master = <&codec_dai>; |
| simple-audio-card,mclk-fs = <256>; |
| simple-audio-card,name = "verdin-nau8822"; |
| simple-audio-card,routing = |
| "Headphones", "LHP", |
| "Headphones", "RHP", |
| "Speaker", "LSPK", |
| "Speaker", "RSPK", |
| "Line Out", "AUXOUT1", |
| "Line Out", "AUXOUT2", |
| "LAUX", "Line In", |
| "RAUX", "Line In", |
| "LMICP", "Mic In", |
| "RMICP", "Mic In"; |
| simple-audio-card,widgets = |
| "Headphones", "Headphones", |
| "Line Out", "Line Out", |
| "Speaker", "Speaker", |
| "Microphone", "Mic In", |
| "Line", "Line In"; |
| |
| codec_dai: simple-audio-card,codec { |
| sound-dai = <&nau8822_1a>; |
| }; |
| |
| simple-audio-card,cpu { |
| sound-dai = <&mcasp0>; |
| }; |
| }; |
| }; |
| |
| /* Verdin ETHs */ |
| &cpsw3g { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_rgmii1>, <&pinctrl_rgmii2>; |
| status = "okay"; |
| }; |
| |
| /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ |
| &cpsw3g_mdio { |
| status = "okay"; |
| |
| cpsw3g_phy1: ethernet-phy@7 { |
| compatible = "ethernet-phy-ieee802.3-c22"; |
| reg = <7>; |
| interrupt-parent = <&main_gpio0>; |
| interrupts = <38 IRQ_TYPE_EDGE_FALLING>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_eth2_rgmii_int>; |
| micrel,led-mode = <0>; |
| }; |
| }; |
| |
| /* Verdin ETH_1 (On-module PHY) */ |
| &cpsw_port1 { |
| status = "okay"; |
| }; |
| |
| /* Verdin ETH_2_RGMII */ |
| &cpsw_port2 { |
| phy-handle = <&cpsw3g_phy1>; |
| phy-mode = "rgmii-rxid"; |
| status = "okay"; |
| }; |
| |
| /* Verdin PWM_1, PWM_2 */ |
| &epwm0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin PWM_3_DSI */ |
| &epwm1 { |
| status = "okay"; |
| }; |
| |
| &main_gpio0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_ctrl_sleep_moci>, |
| <&pinctrl_gpio_5>, |
| <&pinctrl_gpio_6>, |
| <&pinctrl_gpio_7>, |
| <&pinctrl_gpio_8>; |
| }; |
| |
| /* Verdin I2C_1 */ |
| &main_i2c1 { |
| status = "okay"; |
| |
| /* Audio Codec */ |
| nau8822_1a: audio-codec@1a { |
| compatible = "nuvoton,nau8822"; |
| reg = <0x1a>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_i2s1_mclk>; |
| clock-names = "mclk"; |
| clocks = <&audio_refclk1>; |
| #sound-dai-cells = <0>; |
| }; |
| |
| /* IO Expander */ |
| gpio_expander_21: gpio@21 { |
| compatible = "nxp,pcal6416"; |
| reg = <0x21>; |
| #gpio-cells = <2>; |
| gpio-controller; |
| }; |
| |
| /* Current measurement into module VCC */ |
| hwmon@40 { |
| compatible = "ti,ina219"; |
| reg = <0x40>; |
| shunt-resistor = <10000>; |
| }; |
| |
| /* Temperature sensor */ |
| sensor@4f { |
| compatible = "ti,tmp75c"; |
| reg = <0x4f>; |
| }; |
| |
| /* EEPROM */ |
| eeprom@57 { |
| compatible = "st,24c02", "atmel,24c02"; |
| reg = <0x57>; |
| pagesize = <16>; |
| }; |
| }; |
| |
| /* Verdin I2C_2_DSI */ |
| &main_i2c2 { |
| status = "okay"; |
| }; |
| |
| /* Verdin I2C_4_CSI */ |
| &main_i2c3 { |
| status = "okay"; |
| }; |
| |
| /* Verdin CAN_1 */ |
| &main_mcan0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin SPI_1 */ |
| &main_spi1 { |
| status = "okay"; |
| }; |
| |
| /* Verdin UART_3 */ |
| &main_uart0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin UART_1, connector X50 through RS485 transceiver. */ |
| &main_uart1 { |
| linux,rs485-enabled-at-boot-time; |
| rs485-rx-during-tx; |
| status = "okay"; |
| }; |
| |
| /* Verdin I2S_1 */ |
| &mcasp0 { |
| status = "okay"; |
| }; |
| |
| &mcu_gpio0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pinctrl_gpio_1>, |
| <&pinctrl_gpio_2>, |
| <&pinctrl_gpio_3>, |
| <&pinctrl_gpio_4>, |
| <&pinctrl_pcie_1_reset>; |
| }; |
| |
| /* Verdin I2C_3_HDMI */ |
| &mcu_i2c0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin CAN_2 */ |
| &mcu_mcan0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin UART_4 */ |
| &mcu_uart0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin QSPI_1 */ |
| &ospi0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin SD_1 */ |
| &sdhci1 { |
| status = "okay"; |
| }; |
| |
| /* Verdin USB_1 */ |
| &usbss0 { |
| status = "okay"; |
| }; |
| |
| &usb0 { |
| status = "okay"; |
| }; |
| |
| /* Verdin USB_2 */ |
| &usbss1 { |
| status = "okay"; |
| }; |
| |
| &usb1 { |
| status = "okay"; |
| }; |
| |
| /* Verdin CTRL_WAKE1_MICO# */ |
| &verdin_gpio_keys { |
| status = "okay"; |
| }; |
| |
| /* Verdin PCIE_1_RESET# */ |
| &verdin_pcie_1_reset_hog { |
| status = "okay"; |
| }; |
| |
| /* Verdin UART_2 */ |
| &wkup_uart0 { |
| status = "okay"; |
| }; |