| // SPDX-License-Identifier: (GPL-2.0+ OR MIT) | |
| /* | |
| * lan966x-pcb8290.dts - Device Tree file for LAN966X-PCB8290 board | |
| * | |
| * Copyright (C) 2022 Microchip Technology Inc. and its subsidiaries | |
| * | |
| * Author: Horatiu Vultur <horatiu.vultur@microchip.com> | |
| */ | |
| /dts-v1/; | |
| #include "lan966x.dtsi" | |
| #include "dt-bindings/phy/phy-lan966x-serdes.h" | |
| / { | |
| model = "Microchip EVB LAN9668"; | |
| compatible = "microchip,lan9668-pcb8290", "microchip,lan9668", "microchip,lan966"; | |
| gpio-restart { | |
| compatible = "gpio-restart"; | |
| gpios = <&gpio 56 GPIO_ACTIVE_LOW>; | |
| priority = <200>; | |
| }; | |
| }; | |
| &aes { | |
| status = "disabled"; /* Reserved by secure OS */ | |
| }; | |
| &gpio { | |
| miim_a_pins: mdio-pins { | |
| /* MDC, MDIO */ | |
| pins = "GPIO_28", "GPIO_29"; | |
| function = "miim_a"; | |
| }; | |
| pps_out_pins: pps-out-pins { | |
| /* 1pps output */ | |
| pins = "GPIO_38"; | |
| function = "ptpsync_3"; | |
| }; | |
| ptp_ext_pins: ptp-ext-pins { | |
| /* 1pps input */ | |
| pins = "GPIO_35"; | |
| function = "ptpsync_0"; | |
| }; | |
| udc_pins: ucd-pins { | |
| /* VBUS_DET B */ | |
| pins = "GPIO_8"; | |
| function = "usb_slave_b"; | |
| }; | |
| }; | |
| &mdio0 { | |
| pinctrl-0 = <&miim_a_pins>; | |
| pinctrl-names = "default"; | |
| reset-gpios = <&gpio 53 GPIO_ACTIVE_LOW>; | |
| status = "okay"; | |
| ext_phy0: ethernet-phy@7 { | |
| reg = <7>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy1: ethernet-phy@8 { | |
| reg = <8>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy2: ethernet-phy@9 { | |
| reg = <9>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy3: ethernet-phy@10 { | |
| reg = <10>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy4: ethernet-phy@15 { | |
| reg = <15>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy5: ethernet-phy@16 { | |
| reg = <16>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy6: ethernet-phy@17 { | |
| reg = <17>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| ext_phy7: ethernet-phy@18 { | |
| reg = <18>; | |
| interrupts = <24 IRQ_TYPE_LEVEL_LOW>; | |
| interrupt-parent = <&gpio>; | |
| coma-mode-gpios = <&gpio 60 GPIO_OPEN_DRAIN>; | |
| }; | |
| }; | |
| &port0 { | |
| reg = <2>; | |
| phy-handle = <&ext_phy2>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 0 SERDES6G(1)>; | |
| status = "okay"; | |
| }; | |
| &port1 { | |
| reg = <3>; | |
| phy-handle = <&ext_phy3>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 1 SERDES6G(1)>; | |
| status = "okay"; | |
| }; | |
| &port2 { | |
| reg = <0>; | |
| phy-handle = <&ext_phy0>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 2 SERDES6G(1)>; | |
| status = "okay"; | |
| }; | |
| &port3 { | |
| reg = <1>; | |
| phy-handle = <&ext_phy1>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 3 SERDES6G(1)>; | |
| status = "okay"; | |
| }; | |
| &port4 { | |
| reg = <6>; | |
| phy-handle = <&ext_phy6>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 4 SERDES6G(2)>; | |
| status = "okay"; | |
| }; | |
| &port5 { | |
| reg = <7>; | |
| phy-handle = <&ext_phy7>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 5 SERDES6G(2)>; | |
| status = "okay"; | |
| }; | |
| &port6 { | |
| reg = <4>; | |
| phy-handle = <&ext_phy4>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 6 SERDES6G(2)>; | |
| status = "okay"; | |
| }; | |
| &port7 { | |
| reg = <5>; | |
| phy-handle = <&ext_phy5>; | |
| phy-mode = "qsgmii"; | |
| phys = <&serdes 7 SERDES6G(2)>; | |
| status = "okay"; | |
| }; | |
| &serdes { | |
| status = "okay"; | |
| }; | |
| &switch { | |
| pinctrl-0 = <&pps_out_pins>, <&ptp_ext_pins>; | |
| pinctrl-names = "default"; | |
| status = "okay"; | |
| }; | |
| &udc { | |
| pinctrl-0 = <&udc_pins>; | |
| pinctrl-names = "default"; | |
| atmel,vbus-gpio = <&gpio 8 GPIO_ACTIVE_HIGH>; | |
| status = "okay"; | |
| }; |