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