// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* * Copyright 2022 Toradex */ / { native-hdmi-connector { compatible = "hdmi-connector"; label = "X21"; type = "a"; port { native_hdmi_connector_in: endpoint { remote-endpoint = <&hdmi_tx_out>; }; }; }; sound { compatible = "simple-audio-card"; simple-audio-card,bitclock-master = <&codec_dai>; simple-audio-card,format = "i2s"; simple-audio-card,frame-master = <&codec_dai>; simple-audio-card,mclk-fs = <256>; simple-audio-card,name = "verdin-wm8904"; simple-audio-card,routing = "Headphone Jack", "HPOUTL", "Headphone Jack", "HPOUTR", "IN2L", "Line In Jack", "IN2R", "Line In Jack", "Headphone Jack", "MICBIAS", "IN1L", "Headphone Jack"; simple-audio-card,widgets = "Microphone", "Headphone Jack", "Headphone", "Headphone Jack", "Line", "Line In Jack"; codec_dai: simple-audio-card,codec { clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; sound-dai = <&wm8904_1a>; }; simple-audio-card,cpu { sound-dai = <&sai1>; }; }; reg_usb_hub: regulator-usb-hub { compatible = "regulator-fixed"; enable-active-high; /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>; regulator-boot-on; regulator-name = "HUB_PWR_EN"; }; reg_pcie: regulator-pcie { compatible = "regulator-fixed"; enable-active-high; /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>; regulator-boot-on; regulator-name = "PCIE_1_PWR_EN"; startup-delay-us = <100000>; }; }; /* Verdin HDMI_1 Audio */ &aud2htx { status = "okay"; }; &backlight { power-supply = <®_3p3v>; }; /* Verdin SPI_1 */ &ecspi1 { status = "okay"; }; /* EEPROM on display adapter boards */ &eeprom_display_adapter { status = "okay"; }; /* EEPROM on Verdin Development board */ &eeprom_carrier_board { status = "okay"; }; &eqos { status = "okay"; }; &flexcan1 { status = "okay"; }; &flexcan2 { status = "okay"; }; /* Verdin QSPI_1 */ &flexspi { status = "okay"; }; &gpio4 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; }; /* Verdin HDMI_1 */ &hdmi_pvi { status = "okay"; }; &hdmi_tx { status = "okay"; ports { port@1 { hdmi_tx_out: endpoint { remote-endpoint = <&native_hdmi_connector_in>; }; }; }; }; &hdmi_tx_phy { status = "okay"; }; /* Current measurement into module VCC */ &hwmon { status = "okay"; }; &hwmon_temp { vs-supply = <®_1p8v>; status = "okay"; }; /* Verdin I2C_2_DSI */ &i2c2 { status = "okay"; }; &i2c3 { status = "okay"; }; /* Verdin I2C_1 */ &i2c4 { status = "okay"; /* Audio Codec */ wm8904_1a: audio-codec@1a { compatible = "wlf,wm8904"; reg = <0x1a>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_sai1>; #sound-dai-cells = <0>; clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>; clock-names = "mclk"; AVDD-supply = <®_1p8v>; CPVDD-supply = <®_1p8v>; DBVDD-supply = <®_1p8v>; DCVDD-supply = <®_1p8v>; MICVDD-supply = <®_1p8v>; }; }; /* Verdin I2C_3_HDMI */ &i2c5 { status = "okay"; }; &lcdif3 { status = "okay"; }; /* Verdin PCIE_1 */ &pcie { vpcie-supply = <®_pcie>; status = "okay"; }; &pcie_phy { status = "okay"; }; /* Verdin PWM_1 */ &pwm1 { status = "okay"; }; /* Verdin PWM_2 */ &pwm2 { status = "okay"; }; /* Verdin PWM_3_DSI */ &pwm3 { status = "okay"; }; ®_usdhc2_vmmc { vin-supply = <®_3p3v>; }; /* We support turning off sleep moci on Dahlia */ ®_force_sleep_moci { status = "disabled"; }; /* Verdin I2S_1 */ &sai1 { assigned-clocks = <&clk IMX8MP_CLK_SAI1>; assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; assigned-clock-rates = <24576000>; fsl,sai-mclk-direction-output; status = "okay"; }; /* Verdin HDMI_1 Audio */ &sound_hdmi { status = "okay"; }; /* Verdin UART_1 */ &uart1 { status = "okay"; }; /* Verdin UART_2 */ &uart2 { status = "okay"; }; /* Verdin UART_3, used as the Linux Console */ &uart3 { status = "okay"; }; /* Verdin USB_1 */ &usb3_0 { status = "okay"; }; &usb3_phy0 { status = "okay"; }; /* Verdin USB_2 */ &usb3_1 { fsl,permanently-attached; status = "okay"; }; &usb3_phy1 { status = "okay"; }; &usb_dwc3_1 { #address-cells = <1>; #size-cells = <0>; usb_hub_3_0: usb-hub@1 { compatible = "usb424,5744"; reg = <1>; peer-hub = <&usb_hub_2_0>; vdd-supply = <®_usb_hub>; }; usb_hub_2_0: usb-hub@2 { compatible = "usb424,2744"; reg = <2>; peer-hub = <&usb_hub_3_0>; vdd-supply = <®_usb_hub>; }; }; /* Verdin SD_1 */ &usdhc2 { status = "okay"; };