// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
/*
 * QorIQ FMan v3 device tree nodes for ls1046
 *
 * Copyright 2015-2016 Freescale Semiconductor Inc.
 *
 */

&soc {

/* include used FMan blocks */
#include "qoriq-fman3-0.dtsi"
#include "qoriq-fman3-0-1g-0.dtsi"
#include "qoriq-fman3-0-1g-1.dtsi"
#include "qoriq-fman3-0-1g-2.dtsi"
#include "qoriq-fman3-0-1g-3.dtsi"
#include "qoriq-fman3-0-1g-4.dtsi"
#include "qoriq-fman3-0-1g-5.dtsi"
#include "qoriq-fman3-0-10g-0.dtsi"
#include "qoriq-fman3-0-10g-1.dtsi"
};

&fman0 {
	/* these aliases provide the FMan ports mapping */
	enet0: ethernet@e0000 {
		pcsphy-handle = <&qsgmiib_pcs3>;
		pcs-handle = <&qsgmiib_pcs3>;
		pcs-handle-names = "qsgmii";
	};

	enet1: ethernet@e2000 {
	};

	enet2: ethernet@e4000 {
	};

	enet3: ethernet@e6000 {
	};

	enet4: ethernet@e8000 {
		pcsphy-handle = <&pcsphy4>, <&qsgmiib_pcs1>;
		pcs-handle = <&pcsphy4>, <&qsgmiib_pcs1>;
		pcs-handle-names = "sgmii", "qsgmii";
	};

	enet5: ethernet@ea000 {
		pcsphy-handle = <&pcsphy5>, <&pcsphy5>;
		pcs-handle = <&pcsphy5>, <&pcsphy5>;
		pcs-handle-names = "sgmii", "qsgmii";
	};

	enet6: ethernet@f0000 {
	};

	enet7: ethernet@f2000 {
		pcsphy-handle = <&pcsphy7>, <&qsgmiib_pcs2>, <&pcsphy7>;
		pcs-handle = <&pcsphy7>, <&qsgmiib_pcs2>, <&pcsphy7>;
		pcs-handle-names = "sgmii", "qsgmii", "xfi";
	};

	mdio@eb000 {
		qsgmiib_pcs1: ethernet-pcs@1 {
			compatible = "fsl,lynx-pcs";
			reg = <0x1>;
		};

		qsgmiib_pcs2: ethernet-pcs@2 {
			compatible = "fsl,lynx-pcs";
			reg = <0x2>;
		};

		qsgmiib_pcs3: ethernet-pcs@3 {
			compatible = "fsl,lynx-pcs";
			reg = <0x3>;
		};
	};
};
