// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Copyright (C) 2025 Fedor Ross */ #include #include "imx8mn-pinfunc.h" &ecspi1 { #address-cells = <1>; #size-cells = <0>; status = "okay"; ksz8794: ethernet-switch@1 { compatible = "microchip,ksz8794"; pinctrl-names = "default", "reset"; pinctrl-0 = <&pinctrl_ks8794>; pinctrl-1 = <&pinctrl_ks8794>; reg = <1>; reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>; spi-max-frequency = <5000000>; ethernet-ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; label = "lan1"; }; port@1 { reg = <1>; label = "lan2"; }; port@2 { reg = <2>; label = "lan3"; }; port@4 { reg = <4>; label = "cpu"; ethernet = <&fec1>; phy-mode = "rgmii-id"; rx-internal-delay-ps = <2000>; tx-internal-delay-ps = <2000>; fixed-link { full-duplex; speed = <1000>; }; }; }; }; }; &fec1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_fec1>; phy-mode = "rgmii-id"; status = "okay"; fixed-link { full-duplex; speed = <1000>; }; }; &iomuxc { pinctrl_fec1: fec1-grp { fsl,pins = < MX8MN_IOMUXC_ENET_MDC_ENET1_MDC 0x16 MX8MN_IOMUXC_ENET_MDIO_ENET1_MDIO 0x96 MX8MN_IOMUXC_ENET_TD3_ENET1_RGMII_TD3 0x16 MX8MN_IOMUXC_ENET_TD2_ENET1_RGMII_TD2 0x16 MX8MN_IOMUXC_ENET_TD1_ENET1_RGMII_TD1 0x16 MX8MN_IOMUXC_ENET_TD0_ENET1_RGMII_TD0 0x16 MX8MN_IOMUXC_ENET_RD3_ENET1_RGMII_RD3 0x96 MX8MN_IOMUXC_ENET_RD2_ENET1_RGMII_RD2 0x96 MX8MN_IOMUXC_ENET_RD1_ENET1_RGMII_RD1 0x96 MX8MN_IOMUXC_ENET_RD0_ENET1_RGMII_RD0 0x96 MX8MN_IOMUXC_ENET_TXC_ENET1_RGMII_TXC 0x10 MX8MN_IOMUXC_ENET_RXC_ENET1_RGMII_RXC 0x96 MX8MN_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL 0x96 MX8MN_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL 0x16 MX8MN_IOMUXC_SAI3_TXFS_GPIO4_IO31 0x1d6 >; }; pinctrl_ks8794: ks8794-grp { fsl,pins = < /* KSZ8794 reset line */ MX8MN_IOMUXC_SAI3_RXFS_GPIO4_IO28 0x16 >; }; };