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 native-hdmi-connector { << 8 compatible = "hdmi-connector"; << 9 label = "X21"; << 10 type = "a"; << 11 << 12 port { << 13 native_hdmi_connector_ << 14 remote-endpoin << 15 }; << 16 }; << 17 }; << 18 << 19 sound { 7 sound { 20 compatible = "simple-audio-car 8 compatible = "simple-audio-card"; 21 simple-audio-card,bitclock-mas 9 simple-audio-card,bitclock-master = <&codec_dai>; 22 simple-audio-card,format = "i2 10 simple-audio-card,format = "i2s"; 23 simple-audio-card,frame-master 11 simple-audio-card,frame-master = <&codec_dai>; 24 simple-audio-card,mclk-fs = <2 12 simple-audio-card,mclk-fs = <256>; 25 simple-audio-card,name = "verd !! 13 simple-audio-card,name = "imx8mp-wm8904"; 26 simple-audio-card,routing = 14 simple-audio-card,routing = 27 "Headphone Jack", "HPO 15 "Headphone Jack", "HPOUTL", 28 "Headphone Jack", "HPO 16 "Headphone Jack", "HPOUTR", 29 "IN2L", "Line In Jack" 17 "IN2L", "Line In Jack", 30 "IN2R", "Line In Jack" 18 "IN2R", "Line In Jack", 31 "Headphone Jack", "MIC 19 "Headphone Jack", "MICBIAS", 32 "IN1L", "Headphone Jac 20 "IN1L", "Headphone Jack"; 33 simple-audio-card,widgets = 21 simple-audio-card,widgets = 34 "Microphone", "Headpho 22 "Microphone", "Headphone Jack", 35 "Headphone", "Headphon 23 "Headphone", "Headphone Jack", 36 "Line", "Line In Jack" 24 "Line", "Line In Jack"; 37 25 38 codec_dai: simple-audio-card,c 26 codec_dai: simple-audio-card,codec { 39 clocks = <&audio_blk_c 27 clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; 40 sound-dai = <&wm8904_1 28 sound-dai = <&wm8904_1a>; 41 }; 29 }; 42 30 43 simple-audio-card,cpu { 31 simple-audio-card,cpu { 44 sound-dai = <&sai1>; 32 sound-dai = <&sai1>; 45 }; 33 }; 46 }; 34 }; 47 << 48 reg_usb_hub: regulator-usb-hub { << 49 compatible = "regulator-fixed" << 50 enable-active-high; << 51 /* Verdin CTRL_SLEEP_MOCI# (SO << 52 gpio = <&gpio4 29 GPIO_ACTIVE_ << 53 regulator-boot-on; << 54 regulator-name = "HUB_PWR_EN"; << 55 }; << 56 << 57 reg_pcie: regulator-pcie { << 58 compatible = "regulator-fixed" << 59 enable-active-high; << 60 /* Verdin CTRL_SLEEP_MOCI# (SO << 61 gpio = <&gpio4 29 GPIO_ACTIVE_ << 62 regulator-boot-on; << 63 regulator-name = "PCIE_1_PWR_E << 64 startup-delay-us = <100000>; << 65 }; << 66 }; << 67 << 68 /* Verdin HDMI_1 Audio */ << 69 &aud2htx { << 70 status = "okay"; << 71 }; 35 }; 72 36 73 &backlight { 37 &backlight { 74 power-supply = <®_3p3v>; 38 power-supply = <®_3p3v>; 75 }; 39 }; 76 40 77 /* Verdin SPI_1 */ 41 /* Verdin SPI_1 */ 78 &ecspi1 { 42 &ecspi1 { 79 status = "okay"; 43 status = "okay"; 80 }; 44 }; 81 45 82 /* EEPROM on display adapter boards */ 46 /* EEPROM on display adapter boards */ 83 &eeprom_display_adapter { 47 &eeprom_display_adapter { 84 status = "okay"; 48 status = "okay"; 85 }; 49 }; 86 50 87 /* EEPROM on Verdin Development board */ 51 /* EEPROM on Verdin Development board */ 88 &eeprom_carrier_board { 52 &eeprom_carrier_board { 89 status = "okay"; 53 status = "okay"; 90 }; 54 }; 91 55 92 &eqos { 56 &eqos { 93 status = "okay"; 57 status = "okay"; 94 }; 58 }; 95 59 96 &flexcan1 { 60 &flexcan1 { 97 status = "okay"; 61 status = "okay"; 98 }; 62 }; 99 63 100 &flexcan2 { 64 &flexcan2 { 101 status = "okay"; 65 status = "okay"; 102 }; 66 }; 103 67 104 /* Verdin QSPI_1 */ 68 /* Verdin QSPI_1 */ 105 &flexspi { 69 &flexspi { 106 status = "okay"; 70 status = "okay"; 107 }; 71 }; 108 72 109 &gpio4 { << 110 pinctrl-names = "default"; << 111 pinctrl-0 = <&pinctrl_ctrl_sleep_moci> << 112 }; << 113 << 114 /* Verdin HDMI_1 */ << 115 &hdmi_pvi { << 116 status = "okay"; << 117 }; << 118 << 119 &hdmi_tx { << 120 status = "okay"; << 121 << 122 ports { << 123 port@1 { << 124 hdmi_tx_out: endpoint << 125 remote-endpoin << 126 }; << 127 }; << 128 }; << 129 }; << 130 << 131 &hdmi_tx_phy { << 132 status = "okay"; << 133 }; << 134 << 135 /* Current measurement into module VCC */ 73 /* Current measurement into module VCC */ 136 &hwmon { 74 &hwmon { 137 status = "okay"; 75 status = "okay"; 138 }; 76 }; 139 77 140 &hwmon_temp { 78 &hwmon_temp { 141 vs-supply = <®_1p8v>; 79 vs-supply = <®_1p8v>; 142 status = "okay"; 80 status = "okay"; 143 }; 81 }; 144 82 145 /* Verdin I2C_2_DSI */ 83 /* Verdin I2C_2_DSI */ 146 &i2c2 { 84 &i2c2 { 147 status = "okay"; 85 status = "okay"; 148 }; 86 }; 149 87 150 &i2c3 { 88 &i2c3 { 151 status = "okay"; 89 status = "okay"; 152 }; 90 }; 153 91 154 /* Verdin I2C_1 */ 92 /* Verdin I2C_1 */ 155 &i2c4 { 93 &i2c4 { 156 status = "okay"; 94 status = "okay"; 157 95 158 /* Audio Codec */ 96 /* Audio Codec */ 159 wm8904_1a: audio-codec@1a { 97 wm8904_1a: audio-codec@1a { 160 compatible = "wlf,wm8904"; 98 compatible = "wlf,wm8904"; 161 reg = <0x1a>; 99 reg = <0x1a>; 162 pinctrl-names = "default"; 100 pinctrl-names = "default"; 163 pinctrl-0 = <&pinctrl_sai1>; 101 pinctrl-0 = <&pinctrl_sai1>; 164 #sound-dai-cells = <0>; 102 #sound-dai-cells = <0>; 165 clocks = <&audio_blk_ctrl IMX8 103 clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; 166 clock-names = "mclk"; 104 clock-names = "mclk"; 167 AVDD-supply = <®_1p8v>; 105 AVDD-supply = <®_1p8v>; 168 CPVDD-supply = <®_1p8v>; 106 CPVDD-supply = <®_1p8v>; 169 DBVDD-supply = <®_1p8v>; 107 DBVDD-supply = <®_1p8v>; 170 DCVDD-supply = <®_1p8v>; 108 DCVDD-supply = <®_1p8v>; 171 MICVDD-supply = <®_1p8v>; 109 MICVDD-supply = <®_1p8v>; 172 }; 110 }; 173 }; 111 }; 174 112 175 /* Verdin I2C_3_HDMI */ << 176 &i2c5 { << 177 status = "okay"; << 178 }; << 179 << 180 &lcdif3 { << 181 status = "okay"; << 182 }; << 183 << 184 /* Verdin PCIE_1 */ 113 /* Verdin PCIE_1 */ 185 &pcie { 114 &pcie { 186 vpcie-supply = <®_pcie>; << 187 status = "okay"; 115 status = "okay"; 188 }; 116 }; 189 117 190 &pcie_phy { 118 &pcie_phy { 191 status = "okay"; 119 status = "okay"; 192 }; 120 }; 193 121 194 /* Verdin PWM_1 */ 122 /* Verdin PWM_1 */ 195 &pwm1 { 123 &pwm1 { 196 status = "okay"; 124 status = "okay"; 197 }; 125 }; 198 126 199 /* Verdin PWM_2 */ 127 /* Verdin PWM_2 */ 200 &pwm2 { 128 &pwm2 { 201 status = "okay"; 129 status = "okay"; 202 }; 130 }; 203 131 204 /* Verdin PWM_3_DSI */ 132 /* Verdin PWM_3_DSI */ 205 &pwm3 { 133 &pwm3 { 206 status = "okay"; 134 status = "okay"; 207 }; 135 }; 208 136 209 ®_usdhc2_vmmc { 137 ®_usdhc2_vmmc { 210 vin-supply = <®_3p3v>; 138 vin-supply = <®_3p3v>; 211 }; 139 }; 212 140 213 /* We support turning off sleep moci on Dahlia << 214 ®_force_sleep_moci { << 215 status = "disabled"; << 216 }; << 217 << 218 /* Verdin I2S_1 */ 141 /* Verdin I2S_1 */ 219 &sai1 { 142 &sai1 { 220 assigned-clocks = <&clk IMX8MP_CLK_SAI 143 assigned-clocks = <&clk IMX8MP_CLK_SAI1>; 221 assigned-clock-parents = <&clk IMX8MP_ 144 assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; 222 assigned-clock-rates = <24576000>; 145 assigned-clock-rates = <24576000>; 223 fsl,sai-mclk-direction-output; 146 fsl,sai-mclk-direction-output; 224 status = "okay"; 147 status = "okay"; 225 }; 148 }; 226 149 227 /* Verdin HDMI_1 Audio */ << 228 &sound_hdmi { << 229 status = "okay"; << 230 }; << 231 << 232 /* Verdin UART_1 */ 150 /* Verdin UART_1 */ 233 &uart1 { 151 &uart1 { 234 status = "okay"; 152 status = "okay"; 235 }; 153 }; 236 154 237 /* Verdin UART_2 */ 155 /* Verdin UART_2 */ 238 &uart2 { 156 &uart2 { 239 status = "okay"; 157 status = "okay"; 240 }; 158 }; 241 159 242 /* Verdin UART_3, used as the Linux Console */ 160 /* Verdin UART_3, used as the Linux Console */ 243 &uart3 { 161 &uart3 { 244 status = "okay"; 162 status = "okay"; 245 }; 163 }; 246 164 247 /* Verdin USB_1 */ 165 /* Verdin USB_1 */ 248 &usb3_0 { 166 &usb3_0 { 249 status = "okay"; 167 status = "okay"; 250 }; 168 }; 251 169 252 &usb3_phy0 { 170 &usb3_phy0 { 253 status = "okay"; 171 status = "okay"; 254 }; 172 }; 255 173 256 /* Verdin USB_2 */ 174 /* Verdin USB_2 */ 257 &usb3_1 { 175 &usb3_1 { 258 fsl,permanently-attached; 176 fsl,permanently-attached; 259 status = "okay"; 177 status = "okay"; 260 }; 178 }; 261 179 262 &usb3_phy1 { 180 &usb3_phy1 { 263 status = "okay"; 181 status = "okay"; 264 }; << 265 << 266 &usb_dwc3_1 { << 267 #address-cells = <1>; << 268 #size-cells = <0>; << 269 << 270 usb_hub_3_0: usb-hub@1 { << 271 compatible = "usb424,5744"; << 272 reg = <1>; << 273 peer-hub = <&usb_hub_2_0>; << 274 vdd-supply = <®_usb_hub>; << 275 }; << 276 << 277 usb_hub_2_0: usb-hub@2 { << 278 compatible = "usb424,2744"; << 279 reg = <2>; << 280 peer-hub = <&usb_hub_3_0>; << 281 vdd-supply = <®_usb_hub>; << 282 }; << 283 }; 182 }; 284 183 285 /* Verdin SD_1 */ 184 /* Verdin SD_1 */ 286 &usdhc2 { 185 &usdhc2 { 287 status = "okay"; 186 status = "okay"; 288 }; 187 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.