Query about Implementing Device tree for Networking on HPE BMC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greetings Rob and Krzysztof,

I am attempting to describe the HPE GXP BMCs networking interfaces for
the device tree.

Here are the details: The GXP contains two Ethernet MACs that can be
connected externally to several physical devices. From an external
interface perspective the BMC provides two SERDES interface connections
capable of either SGMII or 1000Base-X operation. The BMC also provides
a RMII interface for sideband connections to external Ethernet controllers.

The primary MAC (umac0) can be mapped to either SGMII/1000-BaseX
SERDES interface.  The secondary MAC (umac1) can be mapped to only
the second SGMII/1000-Base X Serdes interface or it can be mapped for
RMII sideband.

The MDIO(mdio0) interface from the primary MAC (umac0) is used for
external PHY status and configuration. The MDIO(mdio1) interface from
the secondary MAC (umac1) is routed to the SGMII/100Base-X IP blocks
on the two SERDES interface connections.

I cannot find any examples of something currently like this in linux and
I am looking for suggestions.

Below is this previous attempt that was used to describe this architecture:

mdio0: mdio@4080 {
	compatible = "hpe,gxp-umac-mdio";
	reg = <0x4080 0x10>;
	#address-cells = <1>;
	#size-cells = <0>;
	ext_phy0: ethernt-phy@0 {
		compatible = "marvell,88e1415","ethernet-phy-ieee802.3-c22";
		phy-mode = "sgmii";
		reg = <0>;
	};
};

mdio1: mdio@5080 {
	compatible = "hpe,gxp-umac-mdio";
	reg = <0x5080 0x10>;
	#address-cells = <1>;
	#size-cells = <0>;
	int_phy0: ethernt-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c22";
		phy-mode = "gmii";
                             reg = <0>;
	};

	int_phy1: ethernt-phy@1 {
		compatible = "ethernet-phy-ieee802.3-c22";
		phy-mode = "gmii";
		reg = <1>;
	};
};

umac0: umac@4000 {
	compatible = "hpe, gxp-umac";
 	reg = <0x4000 0x80>;
	interrupts = <10>;
	interrupt-parent = <&vic0>;
	mac-address = [94 18 82 16 04 d8];
	phy-handle = <&ext_phy0>;
	int-phy-handle = <&int_phy0>;
};

umac1: umac@5000 {
	compatible = "hpe, gxp-umac";
 	use-ncsi;
	reg = <0x5000 0x80>;
	interrupts = <11>;
	interrupt-parent = <&vic0>;
	mac-address = [94 18 82 16 04 d9];
	phy-handle = <&int_phy1>;
};

Thank you for your help.

-Nick Hawkins





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux