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 2023 Toradex 3 * Copyright 2023 Toradex 4 * 4 * 5 * Common dtsi for Verdin AM62 SoM on Dahlia c 5 * Common dtsi for Verdin AM62 SoM on Dahlia carrier board 6 * 6 * 7 * https://www.toradex.com/computer-on-modules 7 * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62 8 * https://www.toradex.com/products/carrier-bo 8 * https://www.toradex.com/products/carrier-board/dahlia-carrier-board-kit 9 */ 9 */ 10 10 11 / { 11 / { 12 reg_1v8_sw: regulator-1v8-sw { 12 reg_1v8_sw: regulator-1v8-sw { 13 compatible = "regulator-fixed" 13 compatible = "regulator-fixed"; 14 regulator-max-microvolt = <180 14 regulator-max-microvolt = <1800000>; 15 regulator-min-microvolt = <180 15 regulator-min-microvolt = <1800000>; 16 regulator-name = "On-carrier + 16 regulator-name = "On-carrier +V1.8_SW"; 17 }; 17 }; 18 18 19 sound { 19 sound { 20 compatible = "simple-audio-car 20 compatible = "simple-audio-card"; 21 simple-audio-card,bitclock-mas 21 simple-audio-card,bitclock-master = <&codec_dai>; 22 simple-audio-card,format = "i2 22 simple-audio-card,format = "i2s"; 23 simple-audio-card,frame-master 23 simple-audio-card,frame-master = <&codec_dai>; 24 simple-audio-card,name = "verd 24 simple-audio-card,name = "verdin-wm8904"; 25 simple-audio-card,mclk-fs = <2 << 26 simple-audio-card,routing = 25 simple-audio-card,routing = 27 "Headphone Jack", "HPO 26 "Headphone Jack", "HPOUTL", 28 "Headphone Jack", "HPO 27 "Headphone Jack", "HPOUTR", 29 "IN2L", "Line In Jack" 28 "IN2L", "Line In Jack", 30 "IN2R", "Line In Jack" 29 "IN2R", "Line In Jack", 31 "Headphone Jack", "MIC 30 "Headphone Jack", "MICBIAS", 32 "IN1L", "Headphone Jac 31 "IN1L", "Headphone Jack"; 33 simple-audio-card,widgets = 32 simple-audio-card,widgets = 34 "Microphone", "Headpho 33 "Microphone", "Headphone Jack", 35 "Headphone", "Headphon 34 "Headphone", "Headphone Jack", 36 "Line", "Line In Jack" 35 "Line", "Line In Jack"; 37 36 38 codec_dai: simple-audio-card,c 37 codec_dai: simple-audio-card,codec { >> 38 clocks = <&audio_refclk1>; 39 sound-dai = <&wm8904_1 39 sound-dai = <&wm8904_1a>; 40 }; 40 }; 41 41 42 simple-audio-card,cpu { 42 simple-audio-card,cpu { 43 sound-dai = <&mcasp0>; 43 sound-dai = <&mcasp0>; 44 }; 44 }; 45 }; 45 }; 46 }; 46 }; 47 47 48 /* Verdin ETHs */ 48 /* Verdin ETHs */ 49 &cpsw3g { 49 &cpsw3g { 50 status = "okay"; 50 status = "okay"; 51 }; 51 }; 52 52 53 /* MDIO, shared by Verdin ETH_1 (On-module PHY 53 /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ 54 &cpsw3g_mdio { 54 &cpsw3g_mdio { 55 status = "okay"; 55 status = "okay"; 56 }; 56 }; 57 57 58 /* Verdin ETH_1 (On-module PHY) */ 58 /* Verdin ETH_1 (On-module PHY) */ 59 &cpsw_port1 { 59 &cpsw_port1 { 60 status = "okay"; 60 status = "okay"; 61 }; 61 }; 62 62 63 /* Verdin PWM_1, PWM_2 */ 63 /* Verdin PWM_1, PWM_2 */ 64 &epwm0 { 64 &epwm0 { 65 status = "okay"; 65 status = "okay"; 66 }; 66 }; 67 67 68 /* Verdin PWM_3_DSI */ 68 /* Verdin PWM_3_DSI */ 69 &epwm1 { 69 &epwm1 { 70 status = "okay"; 70 status = "okay"; 71 }; 71 }; 72 72 73 &main_gpio0 { 73 &main_gpio0 { 74 pinctrl-names = "default"; 74 pinctrl-names = "default"; 75 pinctrl-0 = <&pinctrl_ctrl_sleep_moci> 75 pinctrl-0 = <&pinctrl_ctrl_sleep_moci>, 76 <&pinctrl_gpio_5>, 76 <&pinctrl_gpio_5>, 77 <&pinctrl_gpio_6>, 77 <&pinctrl_gpio_6>, 78 <&pinctrl_gpio_7>, 78 <&pinctrl_gpio_7>, 79 <&pinctrl_gpio_8>; 79 <&pinctrl_gpio_8>; 80 }; 80 }; 81 81 82 /* Verdin I2C_1 */ 82 /* Verdin I2C_1 */ 83 &main_i2c1 { 83 &main_i2c1 { 84 status = "okay"; 84 status = "okay"; 85 85 86 /* Audio Codec */ 86 /* Audio Codec */ 87 wm8904_1a: audio-codec@1a { 87 wm8904_1a: audio-codec@1a { 88 compatible = "wlf,wm8904"; 88 compatible = "wlf,wm8904"; 89 reg = <0x1a>; 89 reg = <0x1a>; 90 pinctrl-names = "default"; 90 pinctrl-names = "default"; 91 pinctrl-0 = <&pinctrl_i2s1_mcl 91 pinctrl-0 = <&pinctrl_i2s1_mclk>; 92 #sound-dai-cells = <0>; 92 #sound-dai-cells = <0>; 93 clocks = <&audio_refclk1>; 93 clocks = <&audio_refclk1>; 94 clock-names = "mclk"; 94 clock-names = "mclk"; 95 AVDD-supply = <®_1v8_sw>; 95 AVDD-supply = <®_1v8_sw>; 96 CPVDD-supply = <®_1v8_sw>; 96 CPVDD-supply = <®_1v8_sw>; 97 DBVDD-supply = <®_1v8_sw>; 97 DBVDD-supply = <®_1v8_sw>; 98 DCVDD-supply = <®_1v8_sw>; 98 DCVDD-supply = <®_1v8_sw>; 99 MICVDD-supply = <®_1v8_sw>; 99 MICVDD-supply = <®_1v8_sw>; 100 }; 100 }; 101 101 102 /* Current measurement into module VCC 102 /* Current measurement into module VCC */ 103 hwmon@40 { 103 hwmon@40 { 104 compatible = "ti,ina219"; 104 compatible = "ti,ina219"; 105 reg = <0x40>; 105 reg = <0x40>; 106 shunt-resistor = <10000>; 106 shunt-resistor = <10000>; 107 }; 107 }; 108 108 109 /* Temperature sensor */ 109 /* Temperature sensor */ 110 sensor@4f { 110 sensor@4f { 111 compatible = "ti,tmp75c"; 111 compatible = "ti,tmp75c"; 112 reg = <0x4f>; 112 reg = <0x4f>; 113 }; 113 }; 114 114 115 /* EEPROM */ 115 /* EEPROM */ 116 eeprom@57 { 116 eeprom@57 { 117 compatible = "st,24c02"; 117 compatible = "st,24c02"; 118 reg = <0x57>; 118 reg = <0x57>; 119 pagesize = <16>; 119 pagesize = <16>; 120 }; 120 }; 121 }; 121 }; 122 122 123 /* Verdin I2C_2_DSI */ 123 /* Verdin I2C_2_DSI */ 124 &main_i2c2 { 124 &main_i2c2 { 125 status = "okay"; 125 status = "okay"; 126 }; 126 }; 127 127 128 /* Verdin I2C_4_CSI */ 128 /* Verdin I2C_4_CSI */ 129 &main_i2c3 { 129 &main_i2c3 { 130 status = "okay"; 130 status = "okay"; 131 }; 131 }; 132 132 133 /* Verdin CAN_1 */ 133 /* Verdin CAN_1 */ 134 &main_mcan0 { 134 &main_mcan0 { 135 status = "okay"; 135 status = "okay"; 136 }; 136 }; 137 137 138 /* Verdin SPI_1 */ 138 /* Verdin SPI_1 */ 139 &main_spi1 { 139 &main_spi1 { 140 status = "okay"; 140 status = "okay"; 141 }; 141 }; 142 142 143 /* Verdin UART_3 */ 143 /* Verdin UART_3 */ 144 &main_uart0 { 144 &main_uart0 { 145 status = "okay"; 145 status = "okay"; 146 }; 146 }; 147 147 148 /* Verdin UART_1 */ 148 /* Verdin UART_1 */ 149 &main_uart1 { 149 &main_uart1 { 150 status = "okay"; 150 status = "okay"; 151 }; 151 }; 152 152 153 /* Verdin I2S_1 */ 153 /* Verdin I2S_1 */ 154 &mcasp0 { 154 &mcasp0 { 155 status = "okay"; 155 status = "okay"; 156 }; 156 }; 157 157 158 &mcu_gpio0 { 158 &mcu_gpio0 { 159 pinctrl-names = "default"; 159 pinctrl-names = "default"; 160 pinctrl-0 = <&pinctrl_gpio_1>, 160 pinctrl-0 = <&pinctrl_gpio_1>, 161 <&pinctrl_gpio_2>, 161 <&pinctrl_gpio_2>, 162 <&pinctrl_gpio_3>, 162 <&pinctrl_gpio_3>, 163 <&pinctrl_gpio_4>, !! 163 <&pinctrl_gpio_4>; 164 <&pinctrl_pcie_1_reset>; << 165 }; 164 }; 166 165 167 /* Verdin I2C_3_HDMI */ 166 /* Verdin I2C_3_HDMI */ 168 &mcu_i2c0 { 167 &mcu_i2c0 { 169 status = "okay"; 168 status = "okay"; 170 }; 169 }; 171 170 172 /* Verdin CAN_2 */ 171 /* Verdin CAN_2 */ 173 &mcu_mcan0 { 172 &mcu_mcan0 { 174 status = "okay"; 173 status = "okay"; 175 }; 174 }; 176 175 177 /* Verdin UART_4 */ 176 /* Verdin UART_4 */ 178 &mcu_uart0 { 177 &mcu_uart0 { 179 status = "okay"; 178 status = "okay"; 180 }; 179 }; 181 180 182 /* Verdin QSPI_1 */ 181 /* Verdin QSPI_1 */ 183 &ospi0 { 182 &ospi0 { 184 status = "okay"; 183 status = "okay"; 185 }; 184 }; 186 185 187 /* Verdin SD_1 */ 186 /* Verdin SD_1 */ 188 &sdhci1 { 187 &sdhci1 { 189 status = "okay"; 188 status = "okay"; 190 }; 189 }; 191 190 192 /* Verdin USB_1 */ 191 /* Verdin USB_1 */ 193 &usbss0 { 192 &usbss0 { 194 status = "okay"; 193 status = "okay"; 195 }; 194 }; 196 195 197 &usb0 { 196 &usb0 { 198 status = "okay"; 197 status = "okay"; 199 }; 198 }; 200 199 201 /* Verdin USB_2 */ 200 /* Verdin USB_2 */ 202 &usbss1 { 201 &usbss1 { 203 status = "okay"; 202 status = "okay"; 204 }; 203 }; 205 204 206 &usb1 { 205 &usb1 { 207 status = "okay"; 206 status = "okay"; 208 }; 207 }; 209 208 210 /* Verdin CTRL_WAKE1_MICO# */ 209 /* Verdin CTRL_WAKE1_MICO# */ 211 &verdin_gpio_keys { 210 &verdin_gpio_keys { 212 status = "okay"; << 213 }; << 214 << 215 /* Verdin PCIE_1_RESET# */ << 216 &verdin_pcie_1_reset_hog { << 217 status = "okay"; 211 status = "okay"; 218 }; 212 }; 219 213 220 /* Verdin UART_2 */ 214 /* Verdin UART_2 */ 221 &wkup_uart0 { 215 &wkup_uart0 { 222 status = "okay"; 216 status = "okay"; 223 }; 217 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.