13bfec2d4SStefano Radaelli// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 23bfec2d4SStefano Radaelli/* 33bfec2d4SStefano Radaelli * Variscite Sonata carrier board for DART-MX93 43bfec2d4SStefano Radaelli * 53bfec2d4SStefano Radaelli * Link: https://variscite.com/carrier-boards/sonata-board/ 63bfec2d4SStefano Radaelli * 73bfec2d4SStefano Radaelli * Copyright (C) 2026 Variscite Ltd. - https://www.variscite.com/ 83bfec2d4SStefano Radaelli * 93bfec2d4SStefano Radaelli */ 103bfec2d4SStefano Radaelli 113bfec2d4SStefano Radaelli/dts-v1/; 123bfec2d4SStefano Radaelli 133bfec2d4SStefano Radaelli#include <dt-bindings/leds/common.h> 143bfec2d4SStefano Radaelli#include "imx93-var-dart.dtsi" 153bfec2d4SStefano Radaelli 163bfec2d4SStefano Radaelli/ { 173bfec2d4SStefano Radaelli model = "Variscite DART-MX93 on Sonata-Board"; 183bfec2d4SStefano Radaelli compatible = "variscite,var-dart-mx93-sonata", 193bfec2d4SStefano Radaelli "variscite,var-dart-mx93", 203bfec2d4SStefano Radaelli "fsl,imx93"; 213bfec2d4SStefano Radaelli 223bfec2d4SStefano Radaelli aliases { 233bfec2d4SStefano Radaelli ethernet0 = &eqos; 243bfec2d4SStefano Radaelli ethernet1 = &fec; 253bfec2d4SStefano Radaelli gpio0 = &gpio1; 263bfec2d4SStefano Radaelli gpio1 = &gpio2; 273bfec2d4SStefano Radaelli gpio2 = &gpio3; 283bfec2d4SStefano Radaelli i2c0 = &lpi2c1; 293bfec2d4SStefano Radaelli i2c1 = &lpi2c2; 303bfec2d4SStefano Radaelli i2c2 = &lpi2c3; 313bfec2d4SStefano Radaelli i2c3 = &lpi2c4; 323bfec2d4SStefano Radaelli i2c4 = &lpi2c5; 333bfec2d4SStefano Radaelli mmc0 = &usdhc1; 343bfec2d4SStefano Radaelli mmc1 = &usdhc2; 353bfec2d4SStefano Radaelli serial0 = &lpuart1; 363bfec2d4SStefano Radaelli serial1 = &lpuart2; 373bfec2d4SStefano Radaelli serial2 = &lpuart3; 383bfec2d4SStefano Radaelli serial3 = &lpuart4; 393bfec2d4SStefano Radaelli serial4 = &lpuart5; 403bfec2d4SStefano Radaelli serial5 = &lpuart6; 413bfec2d4SStefano Radaelli serial6 = &lpuart7; 423bfec2d4SStefano Radaelli }; 433bfec2d4SStefano Radaelli 443bfec2d4SStefano Radaelli chosen { 453bfec2d4SStefano Radaelli stdout-path = &lpuart1; 463bfec2d4SStefano Radaelli }; 473bfec2d4SStefano Radaelli 483bfec2d4SStefano Radaelli gpio-keys { 493bfec2d4SStefano Radaelli compatible = "gpio-keys"; 503bfec2d4SStefano Radaelli 513bfec2d4SStefano Radaelli button-home { 523bfec2d4SStefano Radaelli label = "Home"; 533bfec2d4SStefano Radaelli linux,code = <KEY_HOME>; 543bfec2d4SStefano Radaelli gpios = <&pca6408_1 4 GPIO_ACTIVE_LOW>; 553bfec2d4SStefano Radaelli wakeup-source; 563bfec2d4SStefano Radaelli }; 573bfec2d4SStefano Radaelli 583bfec2d4SStefano Radaelli button-up { 593bfec2d4SStefano Radaelli label = "Up"; 603bfec2d4SStefano Radaelli linux,code = <KEY_UP>; 613bfec2d4SStefano Radaelli gpios = <&pca6408_1 5 GPIO_ACTIVE_LOW>; 623bfec2d4SStefano Radaelli wakeup-source; 633bfec2d4SStefano Radaelli }; 643bfec2d4SStefano Radaelli 653bfec2d4SStefano Radaelli button-down { 663bfec2d4SStefano Radaelli label = "Down"; 673bfec2d4SStefano Radaelli linux,code = <KEY_DOWN>; 683bfec2d4SStefano Radaelli gpios = <&pca6408_1 6 GPIO_ACTIVE_LOW>; 693bfec2d4SStefano Radaelli wakeup-source; 703bfec2d4SStefano Radaelli }; 713bfec2d4SStefano Radaelli 723bfec2d4SStefano Radaelli button-back { 733bfec2d4SStefano Radaelli label = "Back"; 743bfec2d4SStefano Radaelli linux,code = <KEY_BACK>; 753bfec2d4SStefano Radaelli gpios = <&pca6408_1 7 GPIO_ACTIVE_LOW>; 763bfec2d4SStefano Radaelli wakeup-source; 773bfec2d4SStefano Radaelli }; 783bfec2d4SStefano Radaelli }; 793bfec2d4SStefano Radaelli 803bfec2d4SStefano Radaelli gpio-leds { 813bfec2d4SStefano Radaelli compatible = "gpio-leds"; 823bfec2d4SStefano Radaelli pinctrl-names = "default"; 833bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_leds_gpio>; 843bfec2d4SStefano Radaelli 853bfec2d4SStefano Radaelli led-emmc { 863bfec2d4SStefano Radaelli gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>; 873bfec2d4SStefano Radaelli label = "eMMC"; 883bfec2d4SStefano Radaelli linux,default-trigger = "mmc0"; 893bfec2d4SStefano Radaelli }; 903bfec2d4SStefano Radaelli }; 913bfec2d4SStefano Radaelli 923bfec2d4SStefano Radaelli clk40m: oscillator { 933bfec2d4SStefano Radaelli compatible = "fixed-clock"; 943bfec2d4SStefano Radaelli #clock-cells = <0>; 953bfec2d4SStefano Radaelli clock-frequency = <40000000>; 963bfec2d4SStefano Radaelli clock-output-names = "can_osc"; 973bfec2d4SStefano Radaelli }; 983bfec2d4SStefano Radaelli 993bfec2d4SStefano Radaelli reg_vref_1v8: regulator-adc-vref { 1003bfec2d4SStefano Radaelli compatible = "regulator-fixed"; 1013bfec2d4SStefano Radaelli regulator-name = "vref_1v8"; 1023bfec2d4SStefano Radaelli regulator-max-microvolt = <1800000>; 1033bfec2d4SStefano Radaelli regulator-min-microvolt = <1800000>; 1043bfec2d4SStefano Radaelli }; 1053bfec2d4SStefano Radaelli 106*43c17d86SStefano Radaelli reg_phy1_supply: regulator-phy1 { 107*43c17d86SStefano Radaelli compatible = "regulator-fixed"; 108*43c17d86SStefano Radaelli regulator-name = "SUPPLY_PHY1"; 109*43c17d86SStefano Radaelli regulator-min-microvolt = <3300000>; 110*43c17d86SStefano Radaelli regulator-max-microvolt = <3300000>; 111*43c17d86SStefano Radaelli gpio = <&pca6408_2 0 GPIO_ACTIVE_HIGH>; 112*43c17d86SStefano Radaelli enable-active-high; 113*43c17d86SStefano Radaelli startup-delay-us = <10000>; 114*43c17d86SStefano Radaelli regulator-always-on; 115*43c17d86SStefano Radaelli }; 116*43c17d86SStefano Radaelli 1173bfec2d4SStefano Radaelli reg_usdhc2_vmmc: regulator-vmmc-usdhc2 { 1183bfec2d4SStefano Radaelli compatible = "regulator-fixed"; 1193bfec2d4SStefano Radaelli regulator-name = "VDD_SD2_3V3"; 1203bfec2d4SStefano Radaelli off-on-delay-us = <20000>; 1213bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>; 1223bfec2d4SStefano Radaelli pinctrl-names = "default"; 1233bfec2d4SStefano Radaelli regulator-max-microvolt = <3300000>; 1243bfec2d4SStefano Radaelli regulator-min-microvolt = <3300000>; 1253bfec2d4SStefano Radaelli gpio = <&gpio2 18 GPIO_ACTIVE_HIGH>; 1263bfec2d4SStefano Radaelli enable-active-high; 1273bfec2d4SStefano Radaelli }; 1283bfec2d4SStefano Radaelli 1293bfec2d4SStefano Radaelli reserved-memory { 1303bfec2d4SStefano Radaelli #address-cells = <2>; 1313bfec2d4SStefano Radaelli #size-cells = <2>; 1323bfec2d4SStefano Radaelli ranges; 1333bfec2d4SStefano Radaelli 1343bfec2d4SStefano Radaelli ethosu_mem: ethosu-region@88000000 { 1353bfec2d4SStefano Radaelli compatible = "shared-dma-pool"; 1363bfec2d4SStefano Radaelli reusable; 1373bfec2d4SStefano Radaelli reg = <0x0 0x88000000 0x0 0x8000000>; 1383bfec2d4SStefano Radaelli }; 1393bfec2d4SStefano Radaelli 1403bfec2d4SStefano Radaelli vdev0vring0: vdev0vring0@87ee0000 { 1413bfec2d4SStefano Radaelli reg = <0 0x87ee0000 0 0x8000>; 1423bfec2d4SStefano Radaelli no-map; 1433bfec2d4SStefano Radaelli }; 1443bfec2d4SStefano Radaelli 1453bfec2d4SStefano Radaelli vdev0vring1: vdev0vring1@87ee8000 { 1463bfec2d4SStefano Radaelli reg = <0 0x87ee8000 0 0x8000>; 1473bfec2d4SStefano Radaelli no-map; 1483bfec2d4SStefano Radaelli }; 1493bfec2d4SStefano Radaelli 1503bfec2d4SStefano Radaelli vdev1vring0: vdev1vring0@87ef0000 { 1513bfec2d4SStefano Radaelli reg = <0 0x87ef0000 0 0x8000>; 1523bfec2d4SStefano Radaelli no-map; 1533bfec2d4SStefano Radaelli }; 1543bfec2d4SStefano Radaelli 1553bfec2d4SStefano Radaelli vdev1vring1: vdev1vring1@87ef8000 { 1563bfec2d4SStefano Radaelli reg = <0 0x87ef8000 0 0x8000>; 1573bfec2d4SStefano Radaelli no-map; 1583bfec2d4SStefano Radaelli }; 1593bfec2d4SStefano Radaelli 1603bfec2d4SStefano Radaelli rsc_table: rsc-table@2021e000 { 1613bfec2d4SStefano Radaelli reg = <0 0x2021e000 0 0x1000>; 1623bfec2d4SStefano Radaelli no-map; 1633bfec2d4SStefano Radaelli }; 1643bfec2d4SStefano Radaelli 1653bfec2d4SStefano Radaelli vdevbuffer: vdevbuffer@87f00000 { 1663bfec2d4SStefano Radaelli compatible = "shared-dma-pool"; 1673bfec2d4SStefano Radaelli reg = <0 0x87f00000 0 0x100000>; 1683bfec2d4SStefano Radaelli no-map; 1693bfec2d4SStefano Radaelli }; 1703bfec2d4SStefano Radaelli 1713bfec2d4SStefano Radaelli ele_reserved: ele-reserved@87de0000 { 1723bfec2d4SStefano Radaelli compatible = "shared-dma-pool"; 1733bfec2d4SStefano Radaelli reg = <0 0x87de0000 0 0x100000>; 1743bfec2d4SStefano Radaelli no-map; 1753bfec2d4SStefano Radaelli }; 1763bfec2d4SStefano Radaelli }; 1773bfec2d4SStefano Radaelli}; 1783bfec2d4SStefano Radaelli 1793bfec2d4SStefano Radaelli&adc1 { 1803bfec2d4SStefano Radaelli vref-supply = <®_vref_1v8>; 1813bfec2d4SStefano Radaelli status = "okay"; 1823bfec2d4SStefano Radaelli}; 1833bfec2d4SStefano Radaelli 1843bfec2d4SStefano Radaelli/* Use external instead of internal RTC */ 1853bfec2d4SStefano Radaelli&bbnsm_rtc { 1863bfec2d4SStefano Radaelli status = "disabled"; 1873bfec2d4SStefano Radaelli}; 1883bfec2d4SStefano Radaelli 1893bfec2d4SStefano Radaelli&eqos { 1903bfec2d4SStefano Radaelli mdio { 1913bfec2d4SStefano Radaelli ethphy1: ethernet-phy@1 { 1923bfec2d4SStefano Radaelli compatible = "ethernet-phy-ieee802.3-c22"; 1933bfec2d4SStefano Radaelli reg = <1>; 1943bfec2d4SStefano Radaelli 1953bfec2d4SStefano Radaelli leds { 1963bfec2d4SStefano Radaelli #address-cells = <1>; 1973bfec2d4SStefano Radaelli #size-cells = <0>; 1983bfec2d4SStefano Radaelli 1993bfec2d4SStefano Radaelli led@0 { 2003bfec2d4SStefano Radaelli reg = <0>; 2013bfec2d4SStefano Radaelli color = <LED_COLOR_ID_YELLOW>; 2023bfec2d4SStefano Radaelli function = LED_FUNCTION_LAN; 2033bfec2d4SStefano Radaelli linux,default-trigger = "netdev"; 2043bfec2d4SStefano Radaelli }; 2053bfec2d4SStefano Radaelli 2063bfec2d4SStefano Radaelli led@1 { 2073bfec2d4SStefano Radaelli reg = <1>; 2083bfec2d4SStefano Radaelli color = <LED_COLOR_ID_GREEN>; 2093bfec2d4SStefano Radaelli function = LED_FUNCTION_LAN; 2103bfec2d4SStefano Radaelli linux,default-trigger = "netdev"; 2113bfec2d4SStefano Radaelli }; 2123bfec2d4SStefano Radaelli }; 2133bfec2d4SStefano Radaelli }; 2143bfec2d4SStefano Radaelli }; 2153bfec2d4SStefano Radaelli}; 2163bfec2d4SStefano Radaelli 2173bfec2d4SStefano Radaelliðphy0 { 2183bfec2d4SStefano Radaelli leds { 2193bfec2d4SStefano Radaelli #address-cells = <1>; 2203bfec2d4SStefano Radaelli #size-cells = <0>; 2213bfec2d4SStefano Radaelli 2223bfec2d4SStefano Radaelli led@0 { 2233bfec2d4SStefano Radaelli reg = <0>; 2243bfec2d4SStefano Radaelli color = <LED_COLOR_ID_YELLOW>; 2253bfec2d4SStefano Radaelli function = LED_FUNCTION_LAN; 2263bfec2d4SStefano Radaelli linux,default-trigger = "netdev"; 2273bfec2d4SStefano Radaelli }; 2283bfec2d4SStefano Radaelli 2293bfec2d4SStefano Radaelli led@1 { 2303bfec2d4SStefano Radaelli reg = <1>; 2313bfec2d4SStefano Radaelli color = <LED_COLOR_ID_GREEN>; 2323bfec2d4SStefano Radaelli function = LED_FUNCTION_LAN; 2333bfec2d4SStefano Radaelli linux,default-trigger = "netdev"; 2343bfec2d4SStefano Radaelli }; 2353bfec2d4SStefano Radaelli }; 2363bfec2d4SStefano Radaelli}; 2373bfec2d4SStefano Radaelli 2383bfec2d4SStefano Radaelli&fec { 2393bfec2d4SStefano Radaelli pinctrl-names = "default", "sleep"; 2403bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_fec>; 2413bfec2d4SStefano Radaelli pinctrl-1 = <&pinctrl_fec_sleep>; 2423bfec2d4SStefano Radaelli /* 2433bfec2d4SStefano Radaelli * The required RGMII TX and RX 2ns delays are implemented directly 2443bfec2d4SStefano Radaelli * in hardware via passive delay elements on the SOM PCB. 2453bfec2d4SStefano Radaelli * No delay configuration is needed in software via PHY driver. 2463bfec2d4SStefano Radaelli */ 2473bfec2d4SStefano Radaelli phy-mode = "rgmii"; 2483bfec2d4SStefano Radaelli phy-handle = <ðphy1>; 2493bfec2d4SStefano Radaelli status = "okay"; 2503bfec2d4SStefano Radaelli}; 2513bfec2d4SStefano Radaelli 2523bfec2d4SStefano Radaelli&flexcan1 { 2533bfec2d4SStefano Radaelli pinctrl-names = "default"; 2543bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_flexcan1>; 2553bfec2d4SStefano Radaelli status = "okay"; 2563bfec2d4SStefano Radaelli}; 2573bfec2d4SStefano Radaelli 2583bfec2d4SStefano Radaelli&lpi2c1 { 2593bfec2d4SStefano Radaelli clock-frequency = <400000>; 2603bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_lpi2c1>; 2613bfec2d4SStefano Radaelli pinctrl-1 = <&pinctrl_lpi2c1_gpio>; 2623bfec2d4SStefano Radaelli pinctrl-2 = <&pinctrl_lpi2c1_gpio>; 2633bfec2d4SStefano Radaelli pinctrl-names = "default", "sleep", "gpio"; 2643bfec2d4SStefano Radaelli scl-gpios = <&gpio1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 2653bfec2d4SStefano Radaelli sda-gpios = <&gpio1 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 2663bfec2d4SStefano Radaelli status = "okay"; 2673bfec2d4SStefano Radaelli 2683bfec2d4SStefano Radaelli pca9534: gpio@22 { 2693bfec2d4SStefano Radaelli compatible = "nxp,pca9534"; 2703bfec2d4SStefano Radaelli reg = <0x22>; 2713bfec2d4SStefano Radaelli gpio-controller; 2723bfec2d4SStefano Radaelli #gpio-cells = <2>; 2733bfec2d4SStefano Radaelli interrupt-parent = <&gpio1>; 2743bfec2d4SStefano Radaelli interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 2753bfec2d4SStefano Radaelli }; 2763bfec2d4SStefano Radaelli 2773bfec2d4SStefano Radaelli /* Capacitive touch controller */ 2783bfec2d4SStefano Radaelli ft5x06_ts: touchscreen@38 { 2793bfec2d4SStefano Radaelli compatible = "edt,edt-ft5206"; 2803bfec2d4SStefano Radaelli reg = <0x38>; 2813bfec2d4SStefano Radaelli interrupt-parent = <&gpio3>; 2823bfec2d4SStefano Radaelli interrupts = <27 IRQ_TYPE_EDGE_FALLING>; 2833bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_captouch>; 2843bfec2d4SStefano Radaelli pinctrl-names = "default"; 2853bfec2d4SStefano Radaelli reset-gpios = <&pca6408_2 4 GPIO_ACTIVE_LOW>; 2863bfec2d4SStefano Radaelli touchscreen-inverted-x; 2873bfec2d4SStefano Radaelli touchscreen-inverted-y; 2883bfec2d4SStefano Radaelli touchscreen-size-x = <800>; 2893bfec2d4SStefano Radaelli touchscreen-size-y = <480>; 2903bfec2d4SStefano Radaelli wakeup-source; 2913bfec2d4SStefano Radaelli }; 2923bfec2d4SStefano Radaelli 2933bfec2d4SStefano Radaelli /* USB Type-C Controller */ 2943bfec2d4SStefano Radaelli typec@3d { 2953bfec2d4SStefano Radaelli compatible = "nxp,ptn5150"; 2963bfec2d4SStefano Radaelli reg = <0x3d>; 2973bfec2d4SStefano Radaelli interrupt-parent = <&gpio4>; 2983bfec2d4SStefano Radaelli interrupts = <29 IRQ_TYPE_LEVEL_HIGH>; 2993bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_extcon>; 3003bfec2d4SStefano Radaelli pinctrl-names = "default"; 3013bfec2d4SStefano Radaelli 3023bfec2d4SStefano Radaelli port { 3033bfec2d4SStefano Radaelli typec1_dr_sw: endpoint { 3043bfec2d4SStefano Radaelli remote-endpoint = <&usb1_drd_sw>; 3053bfec2d4SStefano Radaelli }; 3063bfec2d4SStefano Radaelli }; 3073bfec2d4SStefano Radaelli }; 3083bfec2d4SStefano Radaelli 3093bfec2d4SStefano Radaelli rtc@68 { 3103bfec2d4SStefano Radaelli compatible = "dallas,ds1337"; 3113bfec2d4SStefano Radaelli reg = <0x68>; 3123bfec2d4SStefano Radaelli interrupt-parent = <&gpio2>; 3133bfec2d4SStefano Radaelli interrupts = <2 IRQ_TYPE_EDGE_FALLING>; 3143bfec2d4SStefano Radaelli pinctrl-names = "default"; 3153bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_rtc>; 3163bfec2d4SStefano Radaelli wakeup-source; 3173bfec2d4SStefano Radaelli }; 3183bfec2d4SStefano Radaelli}; 3193bfec2d4SStefano Radaelli 3203bfec2d4SStefano Radaelli&lpi2c5 { 3213bfec2d4SStefano Radaelli clock-frequency = <400000>; 3223bfec2d4SStefano Radaelli pinctrl-names = "default", "sleep", "gpio"; 3233bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_lpi2c5>; 3243bfec2d4SStefano Radaelli pinctrl-1 = <&pinctrl_lpi2c5_gpio>; 3253bfec2d4SStefano Radaelli pinctrl-2 = <&pinctrl_lpi2c5_gpio>; 3263bfec2d4SStefano Radaelli scl-gpios = <&gpio2 23 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 3273bfec2d4SStefano Radaelli sda-gpios = <&gpio2 22 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 3283bfec2d4SStefano Radaelli status = "okay"; 3293bfec2d4SStefano Radaelli}; 3303bfec2d4SStefano Radaelli 3313bfec2d4SStefano Radaelli&lpi2c7 { 3323bfec2d4SStefano Radaelli clock-frequency = <400000>; 3333bfec2d4SStefano Radaelli pinctrl-names = "default", "sleep", "gpio"; 3343bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_lpi2c7>; 3353bfec2d4SStefano Radaelli pinctrl-1 = <&pinctrl_lpi2c7_gpio>; 3363bfec2d4SStefano Radaelli pinctrl-2 = <&pinctrl_lpi2c7_gpio>; 3373bfec2d4SStefano Radaelli scl-gpios = <&gpio2 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 3383bfec2d4SStefano Radaelli sda-gpios = <&gpio2 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 3393bfec2d4SStefano Radaelli status = "okay"; 3403bfec2d4SStefano Radaelli 3413bfec2d4SStefano Radaelli pca6408_1: gpio@20 { 3423bfec2d4SStefano Radaelli compatible = "nxp,pcal6408"; 3433bfec2d4SStefano Radaelli reg = <0x20>; 3443bfec2d4SStefano Radaelli gpio-controller; 3453bfec2d4SStefano Radaelli #gpio-cells = <2>; 3463bfec2d4SStefano Radaelli interrupt-parent = <&gpio1>; 3473bfec2d4SStefano Radaelli interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 3483bfec2d4SStefano Radaelli }; 3493bfec2d4SStefano Radaelli 3503bfec2d4SStefano Radaelli pca6408_2: gpio@21 { 3513bfec2d4SStefano Radaelli compatible = "nxp,pcal6408"; 3523bfec2d4SStefano Radaelli reg = <0x21>; 3533bfec2d4SStefano Radaelli gpio-controller; 3543bfec2d4SStefano Radaelli #gpio-cells = <2>; 3553bfec2d4SStefano Radaelli interrupt-parent = <&gpio1>; 3563bfec2d4SStefano Radaelli interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 3573bfec2d4SStefano Radaelli }; 3583bfec2d4SStefano Radaelli 3593bfec2d4SStefano Radaelli st33ktpm2xi2c: tpm@2e { 3603bfec2d4SStefano Radaelli compatible = "st,st33ktpm2xi2c", "tcg,tpm-tis-i2c"; 3613bfec2d4SStefano Radaelli reg = <0x2e>; 3623bfec2d4SStefano Radaelli }; 3633bfec2d4SStefano Radaelli}; 3643bfec2d4SStefano Radaelli 3653bfec2d4SStefano Radaelli&lpspi8 { 3663bfec2d4SStefano Radaelli pinctrl-names = "default"; 3673bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_lpspi8>; 3683bfec2d4SStefano Radaelli cs-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>; 3693bfec2d4SStefano Radaelli status = "okay"; 3703bfec2d4SStefano Radaelli 3713bfec2d4SStefano Radaelli /* CAN controller */ 3723bfec2d4SStefano Radaelli can0: can@0 { 3733bfec2d4SStefano Radaelli compatible = "microchip,mcp251xfd"; 3743bfec2d4SStefano Radaelli reg = <0>; 3753bfec2d4SStefano Radaelli clocks = <&clk40m>; 3763bfec2d4SStefano Radaelli interrupt-parent = <&gpio2>; 3773bfec2d4SStefano Radaelli interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 3783bfec2d4SStefano Radaelli pinctrl-names = "default"; 3793bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_can>; 3803bfec2d4SStefano Radaelli spi-max-frequency = <1000000>; 3813bfec2d4SStefano Radaelli }; 3823bfec2d4SStefano Radaelli}; 3833bfec2d4SStefano Radaelli 3843bfec2d4SStefano Radaelli/* Console (J10) */ 3853bfec2d4SStefano Radaelli&lpuart1 { 3863bfec2d4SStefano Radaelli pinctrl-names = "default"; 3873bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_uart1>; 3883bfec2d4SStefano Radaelli status = "okay"; 3893bfec2d4SStefano Radaelli}; 3903bfec2d4SStefano Radaelli 3913bfec2d4SStefano Radaelli/* Header (J12.4, J12.6) */ 3923bfec2d4SStefano Radaelli&lpuart6 { 3933bfec2d4SStefano Radaelli pinctrl-names = "default"; 3943bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_uart6>; 3953bfec2d4SStefano Radaelli status = "okay"; 3963bfec2d4SStefano Radaelli}; 3973bfec2d4SStefano Radaelli 3983bfec2d4SStefano Radaelli/* Header (J12.11, J12.13) */ 3993bfec2d4SStefano Radaelli&lpuart7 { 4003bfec2d4SStefano Radaelli pinctrl-names = "default"; 4013bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_uart7>; 4023bfec2d4SStefano Radaelli status = "okay"; 4033bfec2d4SStefano Radaelli}; 4043bfec2d4SStefano Radaelli 4053bfec2d4SStefano Radaelli&tpm3 { 4063bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_tpm3>; 4073bfec2d4SStefano Radaelli pinctrl-names = "default"; 4083bfec2d4SStefano Radaelli status = "okay"; 4093bfec2d4SStefano Radaelli}; 4103bfec2d4SStefano Radaelli 4113bfec2d4SStefano Radaelli&usbotg1 { 4123bfec2d4SStefano Radaelli dr_mode = "otg"; 4133bfec2d4SStefano Radaelli hnp-disable; 4143bfec2d4SStefano Radaelli srp-disable; 4153bfec2d4SStefano Radaelli adp-disable; 4163bfec2d4SStefano Radaelli usb-role-switch; 4173bfec2d4SStefano Radaelli disable-over-current; 4183bfec2d4SStefano Radaelli samsung,picophy-pre-emp-curr-control = <3>; 4193bfec2d4SStefano Radaelli samsung,picophy-dc-vol-level-adjust = <7>; 4203bfec2d4SStefano Radaelli status = "okay"; 4213bfec2d4SStefano Radaelli 4223bfec2d4SStefano Radaelli port { 4233bfec2d4SStefano Radaelli usb1_drd_sw: endpoint { 4243bfec2d4SStefano Radaelli remote-endpoint = <&typec1_dr_sw>; 4253bfec2d4SStefano Radaelli }; 4263bfec2d4SStefano Radaelli }; 4273bfec2d4SStefano Radaelli}; 4283bfec2d4SStefano Radaelli 4293bfec2d4SStefano Radaelli&usbotg2 { 4303bfec2d4SStefano Radaelli disable-over-current; 4313bfec2d4SStefano Radaelli dr_mode = "host"; 4323bfec2d4SStefano Radaelli status = "okay"; 4333bfec2d4SStefano Radaelli}; 4343bfec2d4SStefano Radaelli 4353bfec2d4SStefano Radaelli/* SD */ 4363bfec2d4SStefano Radaelli&usdhc2 { 4373bfec2d4SStefano Radaelli pinctrl-names = "default", "state_100mhz", "state_200mhz"; 4383bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 4393bfec2d4SStefano Radaelli pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 4403bfec2d4SStefano Radaelli pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 4413bfec2d4SStefano Radaelli cd-gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; 4423bfec2d4SStefano Radaelli vmmc-supply = <®_usdhc2_vmmc>; 4433bfec2d4SStefano Radaelli bus-width = <4>; 4443bfec2d4SStefano Radaelli no-sdio; 4453bfec2d4SStefano Radaelli no-mmc; 4463bfec2d4SStefano Radaelli status = "okay"; 4473bfec2d4SStefano Radaelli}; 4483bfec2d4SStefano Radaelli 4493bfec2d4SStefano Radaelli&wdog3 { 4503bfec2d4SStefano Radaelli status = "okay"; 4513bfec2d4SStefano Radaelli}; 4523bfec2d4SStefano Radaelli 4533bfec2d4SStefano Radaelli&iomuxc { 4543bfec2d4SStefano Radaelli pinctrl-names = "default"; 4553bfec2d4SStefano Radaelli pinctrl-0 = <&pinctrl_hog>; 4563bfec2d4SStefano Radaelli 4573bfec2d4SStefano Radaelli pinctrl_can: cangrp { 4583bfec2d4SStefano Radaelli fsl,pins = < 4593bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO03__GPIO2_IO03 0x31e 4603bfec2d4SStefano Radaelli >; 4613bfec2d4SStefano Radaelli }; 4623bfec2d4SStefano Radaelli 4633bfec2d4SStefano Radaelli pinctrl_captouch: captouchgrp { 4643bfec2d4SStefano Radaelli fsl,pins = < 4653bfec2d4SStefano Radaelli MX93_PAD_CCM_CLKO2__GPIO3_IO27 0x31e 4663bfec2d4SStefano Radaelli >; 4673bfec2d4SStefano Radaelli }; 4683bfec2d4SStefano Radaelli 4693bfec2d4SStefano Radaelli pinctrl_extcon: extcongrp { 4703bfec2d4SStefano Radaelli fsl,pins = < 4713bfec2d4SStefano Radaelli MX93_PAD_CCM_CLKO4__GPIO4_IO29 0x31e 4723bfec2d4SStefano Radaelli >; 4733bfec2d4SStefano Radaelli }; 4743bfec2d4SStefano Radaelli 4753bfec2d4SStefano Radaelli pinctrl_fec: fecgrp { 4763bfec2d4SStefano Radaelli fsl,pins = < 4773bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0 0x57e 4783bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1 0x57e 4793bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD2__ENET1_RGMII_RD2 0x57e 4803bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD3__ENET1_RGMII_RD3 0x37e 4813bfec2d4SStefano Radaelli MX93_PAD_ENET2_RXC__ENET1_RGMII_RXC 0x58e 4823bfec2d4SStefano Radaelli MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL 0x57e 4833bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0 0x57e 4843bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1 0x57e 4853bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD2__ENET1_RGMII_TD2 0x57e 4863bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD3__ENET1_RGMII_TD3 0x57e 4873bfec2d4SStefano Radaelli MX93_PAD_ENET2_TXC__ENET1_RGMII_TXC 0x58e 4883bfec2d4SStefano Radaelli MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL 0x57e 4893bfec2d4SStefano Radaelli >; 4903bfec2d4SStefano Radaelli }; 4913bfec2d4SStefano Radaelli 4923bfec2d4SStefano Radaelli pinctrl_fec_sleep: fecsleepgrp { 4933bfec2d4SStefano Radaelli fsl,pins = < 4943bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD0__GPIO4_IO24 0x51e 4953bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD1__GPIO4_IO25 0x51e 4963bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD2__GPIO4_IO26 0x51e 4973bfec2d4SStefano Radaelli MX93_PAD_ENET2_RD3__GPIO4_IO27 0x51e 4983bfec2d4SStefano Radaelli MX93_PAD_ENET2_RXC__GPIO4_IO23 0x51e 4993bfec2d4SStefano Radaelli MX93_PAD_ENET2_RX_CTL__GPIO4_IO22 0x51e 5003bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD0__GPIO4_IO19 0x51e 5013bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD1__GPIO4_IO18 0x51e 5023bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD2__GPIO4_IO17 0x51e 5033bfec2d4SStefano Radaelli MX93_PAD_ENET2_TD3__GPIO4_IO16 0x51e 5043bfec2d4SStefano Radaelli MX93_PAD_ENET2_TXC__GPIO4_IO21 0x51e 5053bfec2d4SStefano Radaelli MX93_PAD_ENET2_TX_CTL__GPIO4_IO20 0x51e 5063bfec2d4SStefano Radaelli >; 5073bfec2d4SStefano Radaelli }; 5083bfec2d4SStefano Radaelli 5093bfec2d4SStefano Radaelli pinctrl_flexcan1: flexcan1grp { 5103bfec2d4SStefano Radaelli fsl,pins = < 5113bfec2d4SStefano Radaelli MX93_PAD_PDM_CLK__CAN1_TX 0x139e 5123bfec2d4SStefano Radaelli MX93_PAD_PDM_BIT_STREAM0__CAN1_RX 0x139e 5133bfec2d4SStefano Radaelli >; 5143bfec2d4SStefano Radaelli }; 5153bfec2d4SStefano Radaelli 5163bfec2d4SStefano Radaelli pinctrl_hog: hoggrp { 5173bfec2d4SStefano Radaelli fsl,pins = < 5183bfec2d4SStefano Radaelli /* GPIO Expanders shared IRQ */ 5193bfec2d4SStefano Radaelli MX93_PAD_PDM_BIT_STREAM1__GPIO1_IO10 0x31e 5203bfec2d4SStefano Radaelli >; 5213bfec2d4SStefano Radaelli }; 5223bfec2d4SStefano Radaelli 5233bfec2d4SStefano Radaelli pinctrl_leds_gpio: ledgrp { 5243bfec2d4SStefano Radaelli fsl,pins = < 5253bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO11__GPIO2_IO11 0x31e 5263bfec2d4SStefano Radaelli >; 5273bfec2d4SStefano Radaelli }; 5283bfec2d4SStefano Radaelli 5293bfec2d4SStefano Radaelli pinctrl_lpi2c1: lpi2c1grp { 5303bfec2d4SStefano Radaelli fsl,pins = < 5313bfec2d4SStefano Radaelli MX93_PAD_I2C1_SCL__LPI2C1_SCL 0x40000b9e 5323bfec2d4SStefano Radaelli MX93_PAD_I2C1_SDA__LPI2C1_SDA 0x40000b9e 5333bfec2d4SStefano Radaelli >; 5343bfec2d4SStefano Radaelli }; 5353bfec2d4SStefano Radaelli 5363bfec2d4SStefano Radaelli pinctrl_lpi2c1_gpio: lpi2c1-gpiogrp { 5373bfec2d4SStefano Radaelli fsl,pins = < 5383bfec2d4SStefano Radaelli MX93_PAD_I2C1_SCL__GPIO1_IO00 0x31e 5393bfec2d4SStefano Radaelli MX93_PAD_I2C1_SDA__GPIO1_IO01 0x31e 5403bfec2d4SStefano Radaelli >; 5413bfec2d4SStefano Radaelli }; 5423bfec2d4SStefano Radaelli 5433bfec2d4SStefano Radaelli pinctrl_lpi2c5: lpi2c5grp { 5443bfec2d4SStefano Radaelli fsl,pins = < 5453bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO22__LPI2C5_SDA 0x40000b9e 5463bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO23__LPI2C5_SCL 0x40000b9e 5473bfec2d4SStefano Radaelli >; 5483bfec2d4SStefano Radaelli }; 5493bfec2d4SStefano Radaelli 5503bfec2d4SStefano Radaelli pinctrl_lpi2c5_gpio: lpi2c5-gpiogrp { 5513bfec2d4SStefano Radaelli fsl,pins = < 5523bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO22__GPIO2_IO22 0x31e 5533bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO23__GPIO2_IO23 0x31e 5543bfec2d4SStefano Radaelli >; 5553bfec2d4SStefano Radaelli }; 5563bfec2d4SStefano Radaelli 5573bfec2d4SStefano Radaelli pinctrl_lpi2c7: lpi2c7grp { 5583bfec2d4SStefano Radaelli fsl,pins = < 5593bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO07__LPI2C7_SCL 0x40000b9e 5603bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO06__LPI2C7_SDA 0x40000b9e 5613bfec2d4SStefano Radaelli >; 5623bfec2d4SStefano Radaelli }; 5633bfec2d4SStefano Radaelli 5643bfec2d4SStefano Radaelli pinctrl_lpi2c7_gpio: lpi2c7-gpiogrp { 5653bfec2d4SStefano Radaelli fsl,pins = < 5663bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO07__GPIO2_IO07 0x31e 5673bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO06__GPIO2_IO06 0x31e 5683bfec2d4SStefano Radaelli >; 5693bfec2d4SStefano Radaelli }; 5703bfec2d4SStefano Radaelli 5713bfec2d4SStefano Radaelli pinctrl_lpspi8: lpspi8grp { 5723bfec2d4SStefano Radaelli fsl,pins = < 5733bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO00__GPIO2_IO00 0x31e 5743bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO01__GPIO2_IO01 0x31e 5753bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO12__GPIO2_IO12 0x31e 5763bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO13__LPSPI8_SIN 0x31e 5773bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO14__LPSPI8_SOUT 0x31e 5783bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO15__LPSPI8_SCK 0x31e 5793bfec2d4SStefano Radaelli >; 5803bfec2d4SStefano Radaelli }; 5813bfec2d4SStefano Radaelli 5823bfec2d4SStefano Radaelli pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp { 5833bfec2d4SStefano Radaelli fsl,pins = < 5843bfec2d4SStefano Radaelli MX93_PAD_CCM_CLKO3__GPIO4_IO28 0x31e 5853bfec2d4SStefano Radaelli >; 5863bfec2d4SStefano Radaelli }; 5873bfec2d4SStefano Radaelli 5883bfec2d4SStefano Radaelli pinctrl_rtc: rtcgrp { 5893bfec2d4SStefano Radaelli fsl,pins = < 5903bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO02__GPIO2_IO02 0x31e 5913bfec2d4SStefano Radaelli >; 5923bfec2d4SStefano Radaelli }; 5933bfec2d4SStefano Radaelli 5943bfec2d4SStefano Radaelli pinctrl_tpm3: tpm3grp { 5953bfec2d4SStefano Radaelli fsl,pins = < 5963bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO24__TPM3_CH3 0x51e 5973bfec2d4SStefano Radaelli >; 5983bfec2d4SStefano Radaelli }; 5993bfec2d4SStefano Radaelli 6003bfec2d4SStefano Radaelli pinctrl_uart1: uart1grp { 6013bfec2d4SStefano Radaelli fsl,pins = < 6023bfec2d4SStefano Radaelli MX93_PAD_UART1_RXD__LPUART1_RX 0x31e 6033bfec2d4SStefano Radaelli MX93_PAD_UART1_TXD__LPUART1_TX 0x31e 6043bfec2d4SStefano Radaelli >; 6053bfec2d4SStefano Radaelli }; 6063bfec2d4SStefano Radaelli 6073bfec2d4SStefano Radaelli pinctrl_uart6: uart6grp { 6083bfec2d4SStefano Radaelli fsl,pins = < 6093bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO05__LPUART6_RX 0x31e 6103bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO04__LPUART6_TX 0x31e 6113bfec2d4SStefano Radaelli >; 6123bfec2d4SStefano Radaelli }; 6133bfec2d4SStefano Radaelli 6143bfec2d4SStefano Radaelli pinctrl_uart7: uart7grp { 6153bfec2d4SStefano Radaelli fsl,pins = < 6163bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO09__LPUART7_RX 0x31e 6173bfec2d4SStefano Radaelli MX93_PAD_GPIO_IO08__LPUART7_TX 0x31e 6183bfec2d4SStefano Radaelli >; 6193bfec2d4SStefano Radaelli }; 6203bfec2d4SStefano Radaelli 6213bfec2d4SStefano Radaelli pinctrl_usdhc2: usdhc2grp { 6223bfec2d4SStefano Radaelli fsl,pins = < 6233bfec2d4SStefano Radaelli MX93_PAD_SD2_CLK__USDHC2_CLK 0x1582 6243bfec2d4SStefano Radaelli MX93_PAD_SD2_CMD__USDHC2_CMD 0x40001382 6253bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x40001382 6263bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x40001382 6273bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x40001382 6283bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x40001382 6293bfec2d4SStefano Radaelli MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 6303bfec2d4SStefano Radaelli >; 6313bfec2d4SStefano Radaelli }; 6323bfec2d4SStefano Radaelli 6333bfec2d4SStefano Radaelli pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp { 6343bfec2d4SStefano Radaelli fsl,pins = < 6353bfec2d4SStefano Radaelli MX93_PAD_SD2_CLK__USDHC2_CLK 0x158e 6363bfec2d4SStefano Radaelli MX93_PAD_SD2_CMD__USDHC2_CMD 0x4000138e 6373bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x4000138e 6383bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x4000138e 6393bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x4000138e 6403bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x4000138e 6413bfec2d4SStefano Radaelli MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 6423bfec2d4SStefano Radaelli >; 6433bfec2d4SStefano Radaelli }; 6443bfec2d4SStefano Radaelli 6453bfec2d4SStefano Radaelli pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp { 6463bfec2d4SStefano Radaelli fsl,pins = < 6473bfec2d4SStefano Radaelli MX93_PAD_SD2_CLK__USDHC2_CLK 0x15fe 6483bfec2d4SStefano Radaelli MX93_PAD_SD2_CMD__USDHC2_CMD 0x400013fe 6493bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x400013fe 6503bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x400013fe 6513bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x400013fe 6523bfec2d4SStefano Radaelli MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x400013fe 6533bfec2d4SStefano Radaelli MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 6543bfec2d4SStefano Radaelli >; 6553bfec2d4SStefano Radaelli }; 6563bfec2d4SStefano Radaelli 6573bfec2d4SStefano Radaelli pinctrl_usdhc2_gpio: usdhc2gpiogrp { 6583bfec2d4SStefano Radaelli fsl,pins = < 6593bfec2d4SStefano Radaelli MX93_PAD_SD2_CD_B__GPIO3_IO00 0x31e 6603bfec2d4SStefano Radaelli >; 6613bfec2d4SStefano Radaelli }; 6623bfec2d4SStefano Radaelli}; 663