1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2/* 3 * Copyright 2022 Toradex 4 */ 5 6/ { 7 sound_card: sound-card { 8 compatible = "simple-audio-card"; 9 simple-audio-card,bitclock-master = <&dailink_master>; 10 simple-audio-card,format = "i2s"; 11 simple-audio-card,frame-master = <&dailink_master>; 12 simple-audio-card,mclk-fs = <256>; 13 simple-audio-card,name = "verdin-nau8822"; 14 simple-audio-card,routing = 15 "Headphones", "LHP", 16 "Headphones", "RHP", 17 "Speaker", "LSPK", 18 "Speaker", "RSPK", 19 "Line Out", "AUXOUT1", 20 "Line Out", "AUXOUT2", 21 "LAUX", "Line In", 22 "RAUX", "Line In", 23 "LMICP", "Mic In", 24 "RMICP", "Mic In"; 25 simple-audio-card,widgets = 26 "Headphones", "Headphones", 27 "Line Out", "Line Out", 28 "Speaker", "Speaker", 29 "Microphone", "Mic In", 30 "Line", "Line In"; 31 32 dailink_master: simple-audio-card,codec { 33 clocks = <&clk IMX8MM_CLK_SAI2_ROOT>; 34 sound-dai = <&nau8822_1a>; 35 }; 36 37 simple-audio-card,cpu { 38 sound-dai = <&sai2>; 39 }; 40 }; 41}; 42 43/* Verdin SPI_1 */ 44&ecspi2 { 45 status = "okay"; 46}; 47 48/* EEPROM on display adapter boards */ 49&eeprom_display_adapter { 50 status = "okay"; 51}; 52 53/* EEPROM on Verdin Development board */ 54&eeprom_carrier_board { 55 status = "okay"; 56}; 57 58&fec1 { 59 status = "okay"; 60}; 61 62/* Verdin QSPI_1 */ 63&flexspi { 64 status = "okay"; 65}; 66 67/* Current measurement into module VCC */ 68&hwmon { 69 status = "okay"; 70}; 71 72&hwmon_temp { 73 vs-supply = <®_1p8v>; 74 status = "okay"; 75}; 76 77&i2c3 { 78 status = "okay"; 79}; 80 81&gpio5 { 82 pinctrl-names = "default"; 83 pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; 84}; 85 86&gpio_expander_21 { 87 status = "okay"; 88}; 89 90/* Verdin I2C_1 */ 91&i2c4 { 92 status = "okay"; 93 94 /* Audio Codec */ 95 nau8822_1a: audio-codec@1a { 96 compatible = "nuvoton,nau8822"; 97 reg = <0x1a>; 98 #sound-dai-cells = <0>; 99 }; 100}; 101 102/* Verdin PCIE_1 */ 103&pcie0 { 104 status = "okay"; 105}; 106 107&pcie_phy { 108 status = "okay"; 109}; 110 111/* Verdin PWM_3_DSI */ 112&pwm1 { 113 status = "okay"; 114}; 115 116/* Verdin PWM_1 */ 117&pwm2 { 118 status = "okay"; 119}; 120 121/* Verdin PWM_2 */ 122&pwm3 { 123 status = "okay"; 124}; 125 126/* Verdin I2S_1 */ 127&sai2 { 128 status = "okay"; 129}; 130 131/* Verdin UART_3 */ 132&uart1 { 133 status = "okay"; 134}; 135 136/* Verdin UART_1, connector X50 through RS485 transceiver */ 137&uart2 { 138 linux,rs485-enabled-at-boot-time; 139 rs485-rts-active-low; 140 rs485-rx-during-tx; 141 status = "okay"; 142}; 143 144/* Verdin UART_2 */ 145&uart3 { 146 status = "okay"; 147}; 148 149/* Verdin USB_1 */ 150&usbotg1 { 151 disable-over-current; 152 status = "okay"; 153}; 154 155/* Verdin USB_2 */ 156&usbotg2 { 157 disable-over-current; 158 status = "okay"; 159}; 160 161/* Limit frequency on dev board due to long traces and bad signal integrity */ 162&usdhc2 { 163 max-frequency = <100000000>; 164 status = "okay"; 165}; 166