// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-or-later
/*
 * QorIQ FMan v3 10g port #2 device tree stub [ controller @ offset 0x400000 ]
 *
 * Copyright 2022 Sean Anderson <sean.anderson@seco.com>
 * Copyright 2012 - 2015 Freescale Semiconductor Inc.
 */

fman@400000 {
	fman0_rx_0x08: port@88000 {
		cell-index = <0x8>;
		compatible = "fsl,fman-v3-port-rx";
		reg = <0x88000 0x1000>;
		fsl,fman-10g-port;
	};

	fman0_tx_0x28: port@a8000 {
		cell-index = <0x28>;
		compatible = "fsl,fman-v3-port-tx";
		reg = <0xa8000 0x1000>;
		fsl,fman-10g-port;
	};

	ethernet@e0000 {
		cell-index = <0>;
		compatible = "fsl,fman-memac";
		reg = <0xe0000 0x1000>;
		fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
		ptp-timer = <&ptp_timer0>;
		pcsphy-handle = <&pcsphy0>;
	};

	mdio@e1000 {
		#address-cells = <1>;
		#size-cells = <0>;
		compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
		reg = <0xe1000 0x1000>;
		fsl,erratum-a011043; /* must ignore read errors */

		pcsphy0: ethernet-phy@0 {
			reg = <0x0>;
		};
	};
};
