1a39ed23bSMarcel Ziswiler// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2a39ed23bSMarcel Ziswiler/* 3a39ed23bSMarcel Ziswiler * Copyright 2022 Toradex 4a39ed23bSMarcel Ziswiler */ 5a39ed23bSMarcel Ziswiler 6*87495891SFrancesco Dolcini/ { 7*87495891SFrancesco Dolcini sound { 8*87495891SFrancesco Dolcini compatible = "simple-audio-card"; 9*87495891SFrancesco Dolcini simple-audio-card,bitclock-master = <&codec_dai>; 10*87495891SFrancesco Dolcini simple-audio-card,format = "i2s"; 11*87495891SFrancesco Dolcini simple-audio-card,frame-master = <&codec_dai>; 12*87495891SFrancesco Dolcini simple-audio-card,mclk-fs = <256>; 13*87495891SFrancesco Dolcini simple-audio-card,name = "imx8mp-wm8904"; 14*87495891SFrancesco Dolcini simple-audio-card,routing = 15*87495891SFrancesco Dolcini "Headphone Jack", "HPOUTL", 16*87495891SFrancesco Dolcini "Headphone Jack", "HPOUTR", 17*87495891SFrancesco Dolcini "IN2L", "Line In Jack", 18*87495891SFrancesco Dolcini "IN2R", "Line In Jack", 19*87495891SFrancesco Dolcini "Headphone Jack", "MICBIAS", 20*87495891SFrancesco Dolcini "IN1L", "Headphone Jack"; 21*87495891SFrancesco Dolcini simple-audio-card,widgets = 22*87495891SFrancesco Dolcini "Microphone", "Headphone Jack", 23*87495891SFrancesco Dolcini "Headphone", "Headphone Jack", 24*87495891SFrancesco Dolcini "Line", "Line In Jack"; 25*87495891SFrancesco Dolcini 26*87495891SFrancesco Dolcini codec_dai: simple-audio-card,codec { 27*87495891SFrancesco Dolcini clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; 28*87495891SFrancesco Dolcini sound-dai = <&wm8904_1a>; 29*87495891SFrancesco Dolcini }; 30*87495891SFrancesco Dolcini 31*87495891SFrancesco Dolcini simple-audio-card,cpu { 32*87495891SFrancesco Dolcini sound-dai = <&sai1>; 33*87495891SFrancesco Dolcini }; 34*87495891SFrancesco Dolcini }; 35*87495891SFrancesco Dolcini}; 36a39ed23bSMarcel Ziswiler 37a39ed23bSMarcel Ziswiler&backlight { 38a39ed23bSMarcel Ziswiler power-supply = <®_3p3v>; 39a39ed23bSMarcel Ziswiler}; 40a39ed23bSMarcel Ziswiler 41a39ed23bSMarcel Ziswiler/* Verdin SPI_1 */ 42a39ed23bSMarcel Ziswiler&ecspi1 { 43a39ed23bSMarcel Ziswiler status = "okay"; 44a39ed23bSMarcel Ziswiler}; 45a39ed23bSMarcel Ziswiler 46a39ed23bSMarcel Ziswiler/* EEPROM on display adapter boards */ 47a39ed23bSMarcel Ziswiler&eeprom_display_adapter { 48a39ed23bSMarcel Ziswiler status = "okay"; 49a39ed23bSMarcel Ziswiler}; 50a39ed23bSMarcel Ziswiler 51a39ed23bSMarcel Ziswiler/* EEPROM on Verdin Development board */ 52a39ed23bSMarcel Ziswiler&eeprom_carrier_board { 53a39ed23bSMarcel Ziswiler status = "okay"; 54a39ed23bSMarcel Ziswiler}; 55a39ed23bSMarcel Ziswiler 56a39ed23bSMarcel Ziswiler&eqos { 57a39ed23bSMarcel Ziswiler status = "okay"; 58a39ed23bSMarcel Ziswiler}; 59a39ed23bSMarcel Ziswiler 60a39ed23bSMarcel Ziswiler&flexcan1 { 61a39ed23bSMarcel Ziswiler status = "okay"; 62a39ed23bSMarcel Ziswiler}; 63a39ed23bSMarcel Ziswiler 64a39ed23bSMarcel Ziswiler&flexcan2 { 65a39ed23bSMarcel Ziswiler status = "okay"; 66a39ed23bSMarcel Ziswiler}; 67a39ed23bSMarcel Ziswiler 68a39ed23bSMarcel Ziswiler/* Verdin QSPI_1 */ 69a39ed23bSMarcel Ziswiler&flexspi { 70a39ed23bSMarcel Ziswiler status = "okay"; 71a39ed23bSMarcel Ziswiler}; 72a39ed23bSMarcel Ziswiler 73a39ed23bSMarcel Ziswiler/* Current measurement into module VCC */ 74a39ed23bSMarcel Ziswiler&hwmon { 75a39ed23bSMarcel Ziswiler status = "okay"; 76a39ed23bSMarcel Ziswiler}; 77a39ed23bSMarcel Ziswiler 78a39ed23bSMarcel Ziswiler&hwmon_temp { 79a39ed23bSMarcel Ziswiler vs-supply = <®_1p8v>; 80a39ed23bSMarcel Ziswiler status = "okay"; 81a39ed23bSMarcel Ziswiler}; 82a39ed23bSMarcel Ziswiler 83a39ed23bSMarcel Ziswiler/* Verdin I2C_2_DSI */ 84a39ed23bSMarcel Ziswiler&i2c2 { 85a39ed23bSMarcel Ziswiler status = "okay"; 86a39ed23bSMarcel Ziswiler}; 87a39ed23bSMarcel Ziswiler 88a39ed23bSMarcel Ziswiler&i2c3 { 89a39ed23bSMarcel Ziswiler status = "okay"; 90a39ed23bSMarcel Ziswiler}; 91a39ed23bSMarcel Ziswiler 92a39ed23bSMarcel Ziswiler/* Verdin I2C_1 */ 93a39ed23bSMarcel Ziswiler&i2c4 { 94a39ed23bSMarcel Ziswiler status = "okay"; 95a39ed23bSMarcel Ziswiler 96*87495891SFrancesco Dolcini /* Audio Codec */ 97*87495891SFrancesco Dolcini wm8904_1a: audio-codec@1a { 98*87495891SFrancesco Dolcini compatible = "wlf,wm8904"; 99*87495891SFrancesco Dolcini reg = <0x1a>; 100*87495891SFrancesco Dolcini pinctrl-names = "default"; 101*87495891SFrancesco Dolcini pinctrl-0 = <&pinctrl_sai1>; 102*87495891SFrancesco Dolcini #sound-dai-cells = <0>; 103*87495891SFrancesco Dolcini clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; 104*87495891SFrancesco Dolcini clock-names = "mclk"; 105*87495891SFrancesco Dolcini AVDD-supply = <®_1p8v>; 106*87495891SFrancesco Dolcini CPVDD-supply = <®_1p8v>; 107*87495891SFrancesco Dolcini DBVDD-supply = <®_1p8v>; 108*87495891SFrancesco Dolcini DCVDD-supply = <®_1p8v>; 109*87495891SFrancesco Dolcini MICVDD-supply = <®_1p8v>; 110*87495891SFrancesco Dolcini }; 111a39ed23bSMarcel Ziswiler}; 112a39ed23bSMarcel Ziswiler 11393ba667dSMarcel Ziswiler/* Verdin PCIE_1 */ 11493ba667dSMarcel Ziswiler&pcie { 11593ba667dSMarcel Ziswiler status = "okay"; 11693ba667dSMarcel Ziswiler}; 11793ba667dSMarcel Ziswiler 11893ba667dSMarcel Ziswiler&pcie_phy { 11993ba667dSMarcel Ziswiler status = "okay"; 12093ba667dSMarcel Ziswiler}; 121a39ed23bSMarcel Ziswiler 122a39ed23bSMarcel Ziswiler/* Verdin PWM_1 */ 123a39ed23bSMarcel Ziswiler&pwm1 { 124a39ed23bSMarcel Ziswiler status = "okay"; 125a39ed23bSMarcel Ziswiler}; 126a39ed23bSMarcel Ziswiler 127a39ed23bSMarcel Ziswiler/* Verdin PWM_2 */ 128a39ed23bSMarcel Ziswiler&pwm2 { 129a39ed23bSMarcel Ziswiler status = "okay"; 130a39ed23bSMarcel Ziswiler}; 131a39ed23bSMarcel Ziswiler 132a39ed23bSMarcel Ziswiler/* Verdin PWM_3_DSI */ 133a39ed23bSMarcel Ziswiler&pwm3 { 134a39ed23bSMarcel Ziswiler status = "okay"; 135a39ed23bSMarcel Ziswiler}; 136a39ed23bSMarcel Ziswiler 137a39ed23bSMarcel Ziswiler®_usdhc2_vmmc { 138a39ed23bSMarcel Ziswiler vin-supply = <®_3p3v>; 139a39ed23bSMarcel Ziswiler}; 140a39ed23bSMarcel Ziswiler 141*87495891SFrancesco Dolcini/* Verdin I2S_1 */ 142*87495891SFrancesco Dolcini&sai1 { 143*87495891SFrancesco Dolcini assigned-clocks = <&clk IMX8MP_CLK_SAI1>; 144*87495891SFrancesco Dolcini assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; 145*87495891SFrancesco Dolcini assigned-clock-rates = <24576000>; 146*87495891SFrancesco Dolcini fsl,sai-mclk-direction-output; 147*87495891SFrancesco Dolcini status = "okay"; 148*87495891SFrancesco Dolcini}; 149a39ed23bSMarcel Ziswiler 150a39ed23bSMarcel Ziswiler/* Verdin UART_1 */ 151a39ed23bSMarcel Ziswiler&uart1 { 152a39ed23bSMarcel Ziswiler status = "okay"; 153a39ed23bSMarcel Ziswiler}; 154a39ed23bSMarcel Ziswiler 155a39ed23bSMarcel Ziswiler/* Verdin UART_2 */ 156a39ed23bSMarcel Ziswiler&uart2 { 157a39ed23bSMarcel Ziswiler status = "okay"; 158a39ed23bSMarcel Ziswiler}; 159a39ed23bSMarcel Ziswiler 160a39ed23bSMarcel Ziswiler/* Verdin UART_3, used as the Linux Console */ 161a39ed23bSMarcel Ziswiler&uart3 { 162a39ed23bSMarcel Ziswiler status = "okay"; 163a39ed23bSMarcel Ziswiler}; 164a39ed23bSMarcel Ziswiler 165a39ed23bSMarcel Ziswiler/* Verdin USB_1 */ 166a39ed23bSMarcel Ziswiler&usb3_0 { 167a39ed23bSMarcel Ziswiler status = "okay"; 168a39ed23bSMarcel Ziswiler}; 169a39ed23bSMarcel Ziswiler 170a39ed23bSMarcel Ziswiler&usb3_phy0 { 171a39ed23bSMarcel Ziswiler status = "okay"; 172a39ed23bSMarcel Ziswiler}; 173a39ed23bSMarcel Ziswiler 174a39ed23bSMarcel Ziswiler/* Verdin USB_2 */ 175a39ed23bSMarcel Ziswiler&usb3_1 { 176237f7d58SMarcel Ziswiler fsl,permanently-attached; 177a39ed23bSMarcel Ziswiler status = "okay"; 178a39ed23bSMarcel Ziswiler}; 179a39ed23bSMarcel Ziswiler 180a39ed23bSMarcel Ziswiler&usb3_phy1 { 181a39ed23bSMarcel Ziswiler status = "okay"; 182a39ed23bSMarcel Ziswiler}; 183a39ed23bSMarcel Ziswiler 184a39ed23bSMarcel Ziswiler/* Verdin SD_1 */ 185a39ed23bSMarcel Ziswiler&usdhc2 { 186a39ed23bSMarcel Ziswiler status = "okay"; 187a39ed23bSMarcel Ziswiler}; 188