18c2ecf20Sopenharmony_ciProperties for an MDIO bus multiplexer found in Broadcom iProc based SoCs.
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciThis MDIO bus multiplexer defines buses that could be internal as well as
48c2ecf20Sopenharmony_ciexternal to SoCs and could accept MDIO transaction compatible to C-22 or
58c2ecf20Sopenharmony_ciC-45 Clause. When child bus is selected, one needs to select these two
68c2ecf20Sopenharmony_ciproperties as well to generate desired MDIO transaction on appropriate bus.
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciRequired properties in addition to the generic multiplexer properties:
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciMDIO multiplexer node:
118c2ecf20Sopenharmony_ci- compatible: brcm,mdio-mux-iproc.
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciEvery non-ethernet PHY requires a compatible so that it could be probed based
148c2ecf20Sopenharmony_cion this compatible string.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciOptional properties:
178c2ecf20Sopenharmony_ci- clocks: phandle of the core clock which drives the mdio block.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciAdditional information regarding generic multiplexer properties can be found
208c2ecf20Sopenharmony_ciat- Documentation/devicetree/bindings/net/mdio-mux.txt
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_cifor example:
248c2ecf20Sopenharmony_ci		mdio_mux_iproc: mdio-mux@66020000 {
258c2ecf20Sopenharmony_ci			compatible = "brcm,mdio-mux-iproc";
268c2ecf20Sopenharmony_ci			reg = <0x66020000 0x250>;
278c2ecf20Sopenharmony_ci			#address-cells = <1>;
288c2ecf20Sopenharmony_ci			#size-cells = <0>;
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci			mdio@0 {
318c2ecf20Sopenharmony_ci				reg = <0x0>;
328c2ecf20Sopenharmony_ci				#address-cells = <1>;
338c2ecf20Sopenharmony_ci				#size-cells = <0>;
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci				pci_phy0: pci-phy@0 {
368c2ecf20Sopenharmony_ci					compatible = "brcm,ns2-pcie-phy";
378c2ecf20Sopenharmony_ci					reg = <0x0>;
388c2ecf20Sopenharmony_ci					#phy-cells = <0>;
398c2ecf20Sopenharmony_ci				};
408c2ecf20Sopenharmony_ci			};
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci			mdio@7 {
438c2ecf20Sopenharmony_ci				reg = <0x7>;
448c2ecf20Sopenharmony_ci				#address-cells = <1>;
458c2ecf20Sopenharmony_ci				#size-cells = <0>;
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci				pci_phy1: pci-phy@0 {
488c2ecf20Sopenharmony_ci					compatible = "brcm,ns2-pcie-phy";
498c2ecf20Sopenharmony_ci					reg = <0x0>;
508c2ecf20Sopenharmony_ci					#phy-cells = <0>;
518c2ecf20Sopenharmony_ci				};
528c2ecf20Sopenharmony_ci			};
538c2ecf20Sopenharmony_ci			mdio@10 {
548c2ecf20Sopenharmony_ci				reg = <0x10>;
558c2ecf20Sopenharmony_ci				#address-cells = <1>;
568c2ecf20Sopenharmony_ci				#size-cells = <0>;
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci				gphy0: eth-phy@10 {
598c2ecf20Sopenharmony_ci					reg = <0x10>;
608c2ecf20Sopenharmony_ci				};
618c2ecf20Sopenharmony_ci			};
628c2ecf20Sopenharmony_ci		};
63