blob: 58b8a8016227a0d11bd00a07eb840aee0b087010 [file] [log] [blame]
/*
* Copyright 2023 NXP
*
* Experimental ENET binding overlay
*/
/ {
soc {
/delete-node/ ethernet@40424000;
enet: ethernet@40424000 {
compatible = "nxp,enet";
reg = <0x40424000 0x628>;
clocks = <&ccm IMX_CCM_ENET_CLK 0 0>;
enet_mac: ethernet {
compatible = "nxp,enet-mac";
interrupts = <137 0>;
interrupt-names = "COMMON";
nxp,mdio = <&enet_mdio>;
nxp,ptp-clock = <&enet_ptp_clock>;
status = "disabled";
};
enet_mdio: mdio {
compatible = "nxp,enet-mdio";
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
enet_ptp_clock: ptp_clock {
compatible = "nxp,enet-ptp-clock";
interrupts = <138 0>;
status = "disabled";
clocks = <&ccm IMX_CCM_ENET_PLL 0 0>;
};
};
};
};
&enet_mac {
status = "okay";
pinctrl-0 = <&pinmux_enet>;
pinctrl-names = "default";
phy-handle = <&phy>;
phy-connection-type = "rmii";
};
&enet_mdio {
status = "okay";
pinctrl-0 = <&pinmux_enet_mdio>;
pinctrl-names = "default";
phy: phy@0 {
compatible = "microchip,ksz8081";
reg = <0>;
status = "okay";
mc,reset-gpio = <&gpio12 12 GPIO_ACTIVE_HIGH>;
mc,interrupt-gpio = <&gpio9 11 GPIO_ACTIVE_HIGH>;
mc,interface-type = "rmii";
};
};
&enet_ptp_clock {
status = "okay";
pinctrl-0 = <&pinmux_ptp>;
pinctrl-names = "default";
};
&pinctrl {
/delete-node/ pinmux_ptp;
/delete-node/ pinmux_enet;
pinmux_enet: pinmux_enet {
group0 {
pinmux = <&iomuxc_gpio_ad_12_gpio9_io11>,
<&iomuxc_gpio_disp_b2_08_enet_rx_en>,
<&iomuxc_gpio_disp_b2_09_enet_rx_er>;
drive-strength = "high";
bias-pull-down;
slew-rate = "fast";
};
group1 {
pinmux = <&iomuxc_gpio_disp_b2_06_enet_rdata00>,
<&iomuxc_gpio_disp_b2_07_enet_rdata01>;
drive-strength = "high";
bias-pull-down;
slew-rate = "fast";
input-enable;
};
group2 {
pinmux = <&iomuxc_lpsr_gpio_lpsr_12_gpio12_io12>;
drive-strength = "high";
bias-pull-up;
slew-rate = "fast";
};
group3 {
pinmux = <&iomuxc_gpio_disp_b2_02_enet_tdata00>,
<&iomuxc_gpio_disp_b2_03_enet_tdata01>,
<&iomuxc_gpio_disp_b2_04_enet_tx_en>;
drive-strength = "high";
slew-rate = "fast";
};
group4 {
pinmux = <&iomuxc_gpio_disp_b2_05_enet_ref_clk>;
drive-strength = "high";
slew-rate = "slow";
input-enable;
};
};
pinmux_enet_mdio: pinmux_enet_mdio {
group0 {
pinmux = <&iomuxc_gpio_ad_32_enet_mdc>,
<&iomuxc_gpio_ad_33_enet_mdio>;
drive-strength = "high";
slew-rate = "fast";
};
};
pinmux_ptp: pinmux_ptp {
};
};