Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

Properties for an MDIO bus multiplexer found in Broadcom iProc based SoCs.

This MDIO bus multiplexer defines buses that could be internal as well as
external to SoCs and could accept MDIO transaction compatible to C-22 or
C-45 Clause. When child bus is selected, one needs to select these two
properties as well to generate desired MDIO transaction on appropriate bus.

Required properties in addition to the generic multiplexer properties:

MDIO multiplexer node:
- compatible: brcm,mdio-mux-iproc.

Every non-ethernet PHY requires a compatible so that it could be probed based
on this compatible string.

Optional properties:
- clocks: phandle of the core clock which drives the mdio block.

Additional information regarding generic multiplexer properties can be found
at- Documentation/devicetree/bindings/net/mdio-mux.txt


for example:
		mdio_mux_iproc: mdio-mux@66020000 {
			compatible = "brcm,mdio-mux-iproc";
			reg = <0x66020000 0x250>;
			#address-cells = <1>;
			#size-cells = <0>;

			mdio@0 {
				reg = <0x0>;
				#address-cells = <1>;
				#size-cells = <0>;

				pci_phy0: pci-phy@0 {
					compatible = "brcm,ns2-pcie-phy";
					reg = <0x0>;
					#phy-cells = <0>;
				};
			};

			mdio@7 {
				reg = <0x7>;
				#address-cells = <1>;
				#size-cells = <0>;

				pci_phy1: pci-phy@0 {
					compatible = "brcm,ns2-pcie-phy";
					reg = <0x0>;
					#phy-cells = <0>;
				};
			};
			mdio@10 {
				reg = <0x10>;
				#address-cells = <1>;
				#size-cells = <0>;

				gphy0: eth-phy@10 {
					reg = <0x10>;
				};
			};
		};