14f03fd6dSJan Remmet// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 24f03fd6dSJan Remmet/* 34f03fd6dSJan Remmet * Copyright (C) 2025 PHYTEC Messtechnik GmbH 44f03fd6dSJan Remmet */ 54f03fd6dSJan Remmet 64f03fd6dSJan Remmet#include <dt-bindings/clock/imx8mm-clock.h> 74f03fd6dSJan Remmet#include <dt-bindings/gpio/gpio.h> 84f03fd6dSJan Remmet#include "imx8mm-pinfunc.h" 94f03fd6dSJan Remmet 104f03fd6dSJan Remmet&{/} { 114f03fd6dSJan Remmet backlight: backlight { 124f03fd6dSJan Remmet compatible = "pwm-backlight"; 134f03fd6dSJan Remmet pinctrl-names = "default"; 144f03fd6dSJan Remmet pinctrl-0 = <&pinctrl_lcd>; 154f03fd6dSJan Remmet power-supply = <®_vdd_3v3_s>; 164f03fd6dSJan Remmet status = "disabled"; 174f03fd6dSJan Remmet }; 184f03fd6dSJan Remmet 194f03fd6dSJan Remmet panel: panel { 204f03fd6dSJan Remmet backlight = <&backlight>; 214f03fd6dSJan Remmet power-supply = <®_vcc_3v3>; 224f03fd6dSJan Remmet status = "disabled"; 234f03fd6dSJan Remmet 244f03fd6dSJan Remmet port { 254f03fd6dSJan Remmet panel_in: endpoint { 264f03fd6dSJan Remmet remote-endpoint = <&bridge_out>; 274f03fd6dSJan Remmet }; 284f03fd6dSJan Remmet }; 294f03fd6dSJan Remmet }; 304f03fd6dSJan Remmet 314f03fd6dSJan Remmet reg_sound_1v8: regulator-1v8 { 324f03fd6dSJan Remmet compatible = "regulator-fixed"; 334f03fd6dSJan Remmet regulator-name = "VCC_1V8_Audio"; 344f03fd6dSJan Remmet regulator-min-microvolt = <1800000>; 354f03fd6dSJan Remmet regulator-max-microvolt = <1800000>; 364f03fd6dSJan Remmet }; 374f03fd6dSJan Remmet 384f03fd6dSJan Remmet reg_sound_3v3: regulator-3v3 { 394f03fd6dSJan Remmet compatible = "regulator-fixed"; 404f03fd6dSJan Remmet regulator-name = "VCC_3V3_Analog"; 414f03fd6dSJan Remmet regulator-min-microvolt = <3300000>; 424f03fd6dSJan Remmet regulator-max-microvolt = <3300000>; 434f03fd6dSJan Remmet }; 444f03fd6dSJan Remmet 454f03fd6dSJan Remmet sound-peb-av-10 { 464f03fd6dSJan Remmet compatible = "simple-audio-card"; 474f03fd6dSJan Remmet simple-audio-card,name = "snd-peb-av-10"; 484f03fd6dSJan Remmet simple-audio-card,format = "i2s"; 494f03fd6dSJan Remmet simple-audio-card,bitclock-master = <&dailink_master>; 504f03fd6dSJan Remmet simple-audio-card,frame-master = <&dailink_master>; 514f03fd6dSJan Remmet simple-audio-card,mclk-fs = <32>; 524f03fd6dSJan Remmet simple-audio-card,widgets = 534f03fd6dSJan Remmet "Line", "Line In", 544f03fd6dSJan Remmet "Speaker", "Speaker", 554f03fd6dSJan Remmet "Microphone", "Microphone Jack", 564f03fd6dSJan Remmet "Headphone", "Headphone Jack"; 574f03fd6dSJan Remmet simple-audio-card,routing = 584f03fd6dSJan Remmet "Speaker", "SPOP", 594f03fd6dSJan Remmet "Speaker", "SPOM", 604f03fd6dSJan Remmet "Headphone Jack", "HPLOUT", 614f03fd6dSJan Remmet "Headphone Jack", "HPROUT", 624f03fd6dSJan Remmet "LINE1L", "Line In", 634f03fd6dSJan Remmet "LINE1R", "Line In", 644f03fd6dSJan Remmet "MIC3R", "Microphone Jack", 654f03fd6dSJan Remmet "Microphone Jack", "Mic Bias"; 664f03fd6dSJan Remmet 674f03fd6dSJan Remmet simple-audio-card,cpu { 684f03fd6dSJan Remmet sound-dai = <&sai5>; 694f03fd6dSJan Remmet }; 704f03fd6dSJan Remmet 714f03fd6dSJan Remmet dailink_master: simple-audio-card,codec { 724f03fd6dSJan Remmet sound-dai = <&codec>; 734f03fd6dSJan Remmet clocks = <&clk IMX8MM_CLK_SAI5>; 744f03fd6dSJan Remmet }; 754f03fd6dSJan Remmet }; 764f03fd6dSJan Remmet}; 774f03fd6dSJan Remmet 784f03fd6dSJan Remmet&bridge_out { 794f03fd6dSJan Remmet remote-endpoint = <&panel_in>; 804f03fd6dSJan Remmet}; 814f03fd6dSJan Remmet 824f03fd6dSJan Remmet&i2c3 { 834f03fd6dSJan Remmet clock-frequency = <400000>; 844f03fd6dSJan Remmet pinctrl-names = "default", "gpio"; 854f03fd6dSJan Remmet pinctrl-0 = <&pinctrl_i2c3>; 864f03fd6dSJan Remmet pinctrl-1 = <&pinctrl_i2c3_gpio>; 874f03fd6dSJan Remmet sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 884f03fd6dSJan Remmet scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 894f03fd6dSJan Remmet #address-cells = <1>; 904f03fd6dSJan Remmet #size-cells = <0>; 914f03fd6dSJan Remmet status = "okay"; 924f03fd6dSJan Remmet 934f03fd6dSJan Remmet codec: codec@18 { 944f03fd6dSJan Remmet compatible = "ti,tlv320aic3007"; 954f03fd6dSJan Remmet pinctrl-names = "default"; 964f03fd6dSJan Remmet pinctrl-0 = <&pinctrl_tlv320>; 974f03fd6dSJan Remmet #sound-dai-cells = <0>; 984f03fd6dSJan Remmet reg = <0x18>; 994f03fd6dSJan Remmet reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>; 1004f03fd6dSJan Remmet ai3x-gpio-func = <0xd 0x0>; 1014f03fd6dSJan Remmet ai3x-micbias-vg = <2>; 1024f03fd6dSJan Remmet AVDD-supply = <®_sound_3v3>; 1034f03fd6dSJan Remmet IOVDD-supply = <®_sound_3v3>; 1044f03fd6dSJan Remmet DRVDD-supply = <®_sound_3v3>; 1054f03fd6dSJan Remmet DVDD-supply = <®_sound_1v8>; 1064f03fd6dSJan Remmet }; 1074f03fd6dSJan Remmet 1084f03fd6dSJan Remmet eeprom@57 { 1094f03fd6dSJan Remmet compatible = "atmel,24c32"; 1104f03fd6dSJan Remmet pagesize = <32>; 1114f03fd6dSJan Remmet reg = <0x57>; 1124f03fd6dSJan Remmet vcc-supply = <®_vdd_3v3_s>; 1134f03fd6dSJan Remmet }; 1144f03fd6dSJan Remmet 1154f03fd6dSJan Remmet eeprom@5f { 1164f03fd6dSJan Remmet compatible = "atmel,24c32"; 1174f03fd6dSJan Remmet pagesize = <32>; 1184f03fd6dSJan Remmet reg = <0x5f>; 1194f03fd6dSJan Remmet size = <32>; 1204f03fd6dSJan Remmet vcc-supply = <®_vdd_3v3_s>; 1214f03fd6dSJan Remmet }; 1224f03fd6dSJan Remmet}; 1234f03fd6dSJan Remmet 1244f03fd6dSJan Remmet&pwm4 { 1254f03fd6dSJan Remmet pinctrl-names = "default"; 1264f03fd6dSJan Remmet pinctrl-0 = <&pinctrl_pwm4>; 1274f03fd6dSJan Remmet}; 1284f03fd6dSJan Remmet 1294f03fd6dSJan Remmet&sai5 { 1304f03fd6dSJan Remmet assigned-clocks = <&clk IMX8MM_CLK_SAI5>; 1314f03fd6dSJan Remmet assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL2_OUT>; 1324f03fd6dSJan Remmet assigned-clock-rates = <11289600>; 1334f03fd6dSJan Remmet clocks = <&clk IMX8MM_CLK_SAI5_IPG>, <&clk IMX8MM_CLK_DUMMY>, 1344f03fd6dSJan Remmet <&clk IMX8MM_CLK_SAI5_ROOT>, <&clk IMX8MM_CLK_DUMMY>, 1354f03fd6dSJan Remmet <&clk IMX8MM_CLK_DUMMY>, <&clk IMX8MM_AUDIO_PLL1_OUT>, 1364f03fd6dSJan Remmet <&clk IMX8MM_AUDIO_PLL2_OUT>; 1374f03fd6dSJan Remmet clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", 1384f03fd6dSJan Remmet "pll11k"; 1394f03fd6dSJan Remmet fsl,sai-mclk-direction-output; 1404f03fd6dSJan Remmet pinctrl-names = "default"; 1414f03fd6dSJan Remmet pinctrl-0 = <&pinctrl_sai5>; 1424f03fd6dSJan Remmet #sound-dai-cells = <0>; 1434f03fd6dSJan Remmet status = "okay"; 1444f03fd6dSJan Remmet}; 1454f03fd6dSJan Remmet 1464f03fd6dSJan Remmet&iomuxc { 1474f03fd6dSJan Remmet 1484f03fd6dSJan Remmet pinctrl_i2c3: i2c3grp { 1494f03fd6dSJan Remmet fsl,pins = < 1504f03fd6dSJan Remmet MX8MM_IOMUXC_I2C3_SCL_I2C3_SCL 0x400001c2 1514f03fd6dSJan Remmet MX8MM_IOMUXC_I2C3_SDA_I2C3_SDA 0x400001c2 1524f03fd6dSJan Remmet >; 1534f03fd6dSJan Remmet }; 1544f03fd6dSJan Remmet 1554f03fd6dSJan Remmet pinctrl_i2c3_gpio: i2c3gpiogrp { 1564f03fd6dSJan Remmet fsl,pins = < 1574f03fd6dSJan Remmet MX8MM_IOMUXC_I2C3_SCL_GPIO5_IO18 0x1e2 1584f03fd6dSJan Remmet MX8MM_IOMUXC_I2C3_SDA_GPIO5_IO19 0x1e2 1594f03fd6dSJan Remmet >; 1604f03fd6dSJan Remmet }; 1614f03fd6dSJan Remmet pinctrl_lcd: lcd0grp { 1624f03fd6dSJan Remmet fsl,pins = < 1634f03fd6dSJan Remmet MX8MM_IOMUXC_SAI3_TXD_GPIO5_IO1 0x12 1644f03fd6dSJan Remmet >; 1654f03fd6dSJan Remmet }; 1664f03fd6dSJan Remmet 1674f03fd6dSJan Remmet pinctrl_pwm4: pwm4grp { 1684f03fd6dSJan Remmet fsl,pins = < 1694f03fd6dSJan Remmet MX8MM_IOMUXC_SAI3_MCLK_PWM4_OUT 0x12 1704f03fd6dSJan Remmet >; 1714f03fd6dSJan Remmet }; 1724f03fd6dSJan Remmet 1734f03fd6dSJan Remmet pinctrl_sai5: sai5grp { 1744f03fd6dSJan Remmet fsl,pins = < 1754f03fd6dSJan Remmet MX8MM_IOMUXC_SAI5_MCLK_SAI5_MCLK 0xd6 1764f03fd6dSJan Remmet MX8MM_IOMUXC_SAI5_RXD0_SAI5_RX_DATA0 0xd6 1774f03fd6dSJan Remmet MX8MM_IOMUXC_SAI5_RXD1_SAI5_TX_SYNC 0xd6 1784f03fd6dSJan Remmet MX8MM_IOMUXC_SAI5_RXD2_SAI5_TX_BCLK 0xd6 1794f03fd6dSJan Remmet MX8MM_IOMUXC_SAI5_RXD3_SAI5_TX_DATA0 0xd6 1804f03fd6dSJan Remmet >; 1814f03fd6dSJan Remmet }; 1824f03fd6dSJan Remmet 1834f03fd6dSJan Remmet pinctrl_tlv320: tlv320grp { 1844f03fd6dSJan Remmet fsl,pins = < 185*3b0bf065STeresa Remmet MX8MM_IOMUXC_SAI3_RXFS_GPIO4_IO28 0x116 1864f03fd6dSJan Remmet MX8MM_IOMUXC_SAI5_RXC_GPIO3_IO20 0x16 1874f03fd6dSJan Remmet >; 1884f03fd6dSJan Remmet }; 1894f03fd6dSJan Remmet}; 190