Home
last modified time | relevance | path

Searched refs:mdio (Results 1 – 25 of 685) sorted by relevance

12345678910>>...28

/Linux-v4.19/drivers/net/
Dmdio.c29 int mdio45_probe(struct mdio_if_info *mdio, int prtad) in mdio45_probe() argument
37 stat2 = mdio->mdio_read(mdio->dev, prtad, mmd, MDIO_STAT2); in mdio45_probe()
43 devs1 = mdio->mdio_read(mdio->dev, prtad, mmd, MDIO_DEVS1); in mdio45_probe()
44 devs2 = mdio->mdio_read(mdio->dev, prtad, mmd, MDIO_DEVS2); in mdio45_probe()
48 mdio->prtad = prtad; in mdio45_probe()
49 mdio->mmds = devs1 | (devs2 << 16); in mdio45_probe()
69 int mdio_set_flag(const struct mdio_if_info *mdio, in mdio_set_flag() argument
73 int old_val = mdio->mdio_read(mdio->dev, prtad, devad, addr); in mdio_set_flag()
84 return mdio->mdio_write(mdio->dev, prtad, devad, addr, new_val); in mdio_set_flag()
97 int mdio45_links_ok(const struct mdio_if_info *mdio, u32 mmd_mask) in mdio45_links_ok() argument
[all …]
/Linux-v4.19/Documentation/devicetree/bindings/net/
Ddwmac-sun8i.txt41 - mdio bus node: should be named mdio with compatible "snps,dwmac-mdio"
43 Required properties of the mdio node:
48 of the mdio node. See phy.txt for the generic PHY bindings.
50 The following compatibles require that the emac node have a mdio-mux child
51 node called "mdio-mux":
54 Required properties for the mdio-mux node:
55 - compatible = "allwinner,sun8i-h3-mdio-mux"
56 - mdio-parent-bus: a phandle to EMAC mdio
57 - one child mdio for the integrated mdio with the compatible
58 "allwinner,sun8i-h3-mdio-internal"
[all …]
Dbrcm,unimac-mdio.txt4 - compatible: should one from "brcm,genet-mdio-v1", "brcm,genet-mdio-v2",
5 "brcm,genet-mdio-v3", "brcm,genet-mdio-v4", "brcm,genet-mdio-v5" or
6 "brcm,unimac-mdio"
10 - reg-names: name(s) of the register must be "mdio" and optional "mdio_indir_rw"
17 are two separate interrupts, first one must be "mdio done" and second must be
18 for "mdio error"
28 mdio@403c0 {
29 compatible = "brcm,unimac-mdio";
31 reg-names = "mdio", "mdio_indir_rw";
Dhisilicon-hns-mdio.txt5 "hisilicon,hns-mdio"
6 "hisilicon,mdio"
7 "hisilicon,hns-mdio" is recommended to be used for hip05 and later SOCs,
8 while "hisilicon,mdio" is optional for backwards compatibility only on
17 mdio@803c0000 {
20 compatible = "hisilicon,hns-mdio","hisilicon,mdio";
Dcavium-mdio.txt6 "cavium,octeon-3860-mdio": Compatibility with all cn3XXX, cn5XXX
9 "cavium,thunder-8890-mdio": Compatibility with all cn8XXX SOCs.
20 mdio@1180000001800 {
21 compatible = "cavium,octeon-3860-mdio";
35 Several mdio buses may be gathered as children of a single PCI
40 - compatible: "cavium,thunder-8890-mdio-nexus";
54 mdio-nexus@1,3 {
55 compatible = "cavium,thunder-8890-mdio-nexus";
63 compatible = "cavium,thunder-8890-mdio";
74 compatible = "cavium,thunder-8890-mdio";
Dapm-xgene-mdio.txt6 - compatible: Must be "apm,xgene-mdio-rgmii" or "apm,xgene-mdio-xfi"
12 For the phys on the mdio bus, there must be a node with the following fields:
18 mdio: mdio@17020000 {
19 compatible = "apm,xgene-mdio-rgmii";
27 &mdio {
Dmdio-mux-mmioreg.txt4 like an FPGA, is used to control which child bus is connected. The mdio-mux
10 - compatible : string, must contain "mdio-mux-mmioreg"
18 'reg' property of each child mdio-mux node must be constrained by
36 mdio-mux-emi2 {
37 compatible = "mdio-mux-mmioreg", "mdio-mux";
38 mdio-parent-bus = <&xmdio0>;
44 emi2_slot1: mdio@0 { // Slot 1 XAUI (FM2)
55 emi2_slot2: mdio@2 { // Slot 2 XAUI (FM1)
69 xmdio0: mdio@f1000 {
Dbrcm,mdio-mux-iproc.txt11 - compatible: brcm,mdio-mux-iproc.
17 - clocks: phandle of the core clock which drives the mdio block.
20 at- Documentation/devicetree/bindings/net/mdio-mux.txt
24 mdio_mux_iproc: mdio-mux@66020000 {
25 compatible = "brcm,mdio-mux-iproc";
30 mdio@0 {
42 mdio@7 {
53 mdio@10 {
Dmdio-gpio.txt4 - virtual,gpio-mdio
11 Note: Each gpio-mdio bus should have an alias correctly numbered in "aliases"
17 mdio-gpio0 = &mdio0;
20 mdio0: mdio {
21 compatible = "virtual,mdio-gpio";
Dallwinner,sun4i-mdio.txt4 - compatible: should be "allwinner,sun4i-a10-mdio"
5 (Deprecated: "allwinner,sun4i-mdio").
12 mdio@1c0b080 {
13 compatible = "allwinner,sun4i-a10-mdio";
21 mdio@1c0b080 {
Dbrcm,bcmgenet.txt35 - mdio bus node: this node should always be present regardless of the PHY
40 - compatible: should contain one of "brcm,genet-mdio-v1", "brcm,genet-mdio-v2"
41 "brcm,genet-mdio-v3", "brcm,genet-mdio-v4", "brcm,genet-mdio-v5", the version
43 with brcm,genet-mdio-v4)
65 mdio@e14 {
66 compatible = "brcm,genet-mdio-v4";
91 mdio@e14 {
92 compatible = "brcm,genet-mdio-v4";
112 mdio@e14 {
113 compatible = "brcm,genet-mdio-v4";
Dmdio-mux-gpio.txt8 - compatible : mdio-mux-gpio.
15 smi1: mdio@1180000001900 {
16 compatible = "cavium,octeon-3860-mdio";
27 mdio-mux {
28 compatible = "mdio-mux-gpio";
30 mdio-parent-bus = <&smi1>;
34 mdio@2 {
77 mdio@3 {
Dmdio-mux.txt12 - mdio-parent-bus : phandle to the parent MDIO bus.
25 smi1: mdio@1180000001900 {
26 compatible = "cavium,octeon-3860-mdio";
37 mdio-mux {
38 compatible = "mdio-mux-gpio";
40 mdio-parent-bus = <&smi1>;
44 mdio@2 {
87 mdio@3 {
/Linux-v4.19/drivers/of/
Dof_mdio.c47 static int of_mdiobus_register_phy(struct mii_bus *mdio, in of_mdiobus_register_phy() argument
59 phy = phy_device_create(mdio, addr, phy_id, 0, NULL); in of_mdiobus_register_phy()
61 phy = get_phy_device(mdio, addr, is_c45); in of_mdiobus_register_phy()
72 mdio->irq[addr] = rc; in of_mdiobus_register_phy()
74 phy->irq = mdio->irq[addr]; in of_mdiobus_register_phy()
78 mdio->phy_ignore_ta_mask |= 1 << addr; in of_mdiobus_register_phy()
81 &phy->mdio.reset_assert_delay); in of_mdiobus_register_phy()
83 &phy->mdio.reset_deassert_delay); in of_mdiobus_register_phy()
88 phy->mdio.dev.of_node = child; in of_mdiobus_register_phy()
89 phy->mdio.dev.fwnode = of_fwnode_handle(child); in of_mdiobus_register_phy()
[all …]
/Linux-v4.19/drivers/net/phy/
DMakefile5 mdio-bus-y += mdio_bus.o mdio_device.o
8 obj-y += mdio-boardinfo.o
15 libphy-y += $(mdio-bus-y)
17 obj-$(CONFIG_MDIO_DEVICE) += mdio-bus.o
25 obj-$(CONFIG_MDIO_BCM_IPROC) += mdio-bcm-iproc.o
26 obj-$(CONFIG_MDIO_BCM_UNIMAC) += mdio-bcm-unimac.o
27 obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o
28 obj-$(CONFIG_MDIO_BUS_MUX) += mdio-mux.o
29 obj-$(CONFIG_MDIO_BUS_MUX_BCM_IPROC) += mdio-mux-bcm-iproc.o
30 obj-$(CONFIG_MDIO_BUS_MUX_GPIO) += mdio-mux-gpio.o
[all …]
Dicplus.c56 err = mdiobus_write(phydev->mdio.bus, 30, 0, 0x175c); in ip175c_config_init()
61 err = mdiobus_read(phydev->mdio.bus, 30, 0); in ip175c_config_init()
67 err = mdiobus_write(phydev->mdio.bus, 29, 31, 0x175c); in ip175c_config_init()
72 err = mdiobus_write(phydev->mdio.bus, 29, 22, 0x420); in ip175c_config_init()
78 err = mdiobus_write(phydev->mdio.bus, i, in ip175c_config_init()
85 err = mdiobus_read(phydev->mdio.bus, i, MII_BMCR); in ip175c_config_init()
92 if (phydev->mdio.addr != 4) { in ip175c_config_init()
187 if (phydev->mdio.addr == 4) /* WAN port */ in ip175c_read_status()
198 if (phydev->mdio.addr == 4) /* WAN port */ in ip175c_config_aneg()
253 MODULE_DEVICE_TABLE(mdio, icplus_tbl);
Dmdio-gpio.c34 struct gpio_desc *mdc, *mdio, *mdo; member
45 bitbang->mdio = devm_gpiod_get_index(dev, NULL, MDIO_GPIO_MDIO, in mdio_gpio_get_data()
47 if (IS_ERR(bitbang->mdio)) in mdio_gpio_get_data()
48 return PTR_ERR(bitbang->mdio); in mdio_gpio_get_data()
71 gpiod_direction_output(bitbang->mdio, 1); in mdio_dir()
73 gpiod_direction_input(bitbang->mdio); in mdio_dir()
81 return gpiod_get_value(bitbang->mdio); in mdio_get()
92 gpiod_set_value(bitbang->mdio, what); in mdio_set()
/Linux-v4.19/drivers/net/ethernet/chelsio/cxgb/
Dcphy.h105 struct mdio_if_info mdio; member
113 int rc = cphy->mdio.mdio_read(cphy->mdio.dev, cphy->mdio.prtad, mmd, in cphy_mdio_read()
122 return cphy->mdio.mdio_write(cphy->mdio.dev, cphy->mdio.prtad, mmd, in cphy_mdio_write()
147 phy->mdio.prtad = phy_addr; in cphy_init()
148 phy->mdio.mmds = phy_ops->mmds; in cphy_init()
149 phy->mdio.mode_support = mdio_ops->mode_support; in cphy_init()
150 phy->mdio.mdio_read = mdio_ops->read; in cphy_init()
151 phy->mdio.mdio_write = mdio_ops->write; in cphy_init()
153 phy->mdio.dev = dev; in cphy_init()
/Linux-v4.19/drivers/net/usb/
Dax88172a.c31 struct mii_bus *mdio; member
103 priv->mdio = mdiobus_alloc(); in ax88172a_init_mdio()
104 if (!priv->mdio) { in ax88172a_init_mdio()
109 priv->mdio->priv = (void *)dev; in ax88172a_init_mdio()
110 priv->mdio->read = &asix_mdio_bus_read; in ax88172a_init_mdio()
111 priv->mdio->write = &asix_mdio_bus_write; in ax88172a_init_mdio()
112 priv->mdio->name = "Asix MDIO Bus"; in ax88172a_init_mdio()
114 snprintf(priv->mdio->id, MII_BUS_ID_SIZE, "usb-%03d:%03d", in ax88172a_init_mdio()
117 ret = mdiobus_register(priv->mdio); in ax88172a_init_mdio()
123 netdev_info(dev->net, "registered mdio bus %s\n", priv->mdio->id); in ax88172a_init_mdio()
[all …]
/Linux-v4.19/include/linux/
Dmdio.h131 extern int mdio45_probe(struct mdio_if_info *mdio, int prtad);
132 extern int mdio_set_flag(const struct mdio_if_info *mdio,
135 extern int mdio45_links_ok(const struct mdio_if_info *mdio, u32 mmds);
136 extern int mdio45_nway_restart(const struct mdio_if_info *mdio);
137 extern void mdio45_ethtool_gset_npage(const struct mdio_if_info *mdio,
141 mdio45_ethtool_ksettings_get_npage(const struct mdio_if_info *mdio,
155 static inline void mdio45_ethtool_gset(const struct mdio_if_info *mdio, in mdio45_ethtool_gset() argument
158 mdio45_ethtool_gset_npage(mdio, ecmd, 0, 0); in mdio45_ethtool_gset()
172 mdio45_ethtool_ksettings_get(const struct mdio_if_info *mdio, in mdio45_ethtool_ksettings_get() argument
175 mdio45_ethtool_ksettings_get_npage(mdio, cmd, 0, 0); in mdio45_ethtool_ksettings_get()
[all …]
/Linux-v4.19/Documentation/devicetree/bindings/soc/fsl/cpm_qe/
Dnetwork.txt26 fsl,pq1-fec-mdio (reg is same as first resource of FEC device)
27 fsl,cpm2-mdio-bitbang (reg is port C registers)
29 Properties for fsl,cpm2-mdio-bitbang:
30 fsl,mdio-pin : pin of port C controlling mdio data
31 fsl,mdc-pin : pin of port C controlling mdio clock
34 mdio@10d40 {
35 compatible = "fsl,mpc8272ads-mdio-bitbang",
36 "fsl,mpc8272-mdio-bitbang",
37 "fsl,cpm2-mdio-bitbang";
41 fsl,mdio-pin = <12>;
/Linux-v4.19/drivers/net/ethernet/sfc/falcon/
Dmdio_10g.h27 return efx->mdio.mdio_read(efx->net_dev, efx->mdio.prtad, devad, addr); in ef4_mdio_read()
33 efx->mdio.mdio_write(efx->net_dev, efx->mdio.prtad, devad, addr, value); in ef4_mdio_write()
105 mdio_set_flag(&efx->mdio, efx->mdio.prtad, devad, addr, mask, state); in ef4_mdio_set_flag()
/Linux-v4.19/Documentation/devicetree/bindings/net/dsa/
Dmarvell.txt11 placed as a child node of an mdio device.
41 - mdio : Container of PHY and devices on the switches MDIO
43 - mdio? : Container of PHYs and devices on the external MDIO
45 "marvell,mv88e6xxx-mdio-external"
49 mdio {
62 mdio {
74 mdio {
87 mdio {
98 compatible = "marvell,mv88e6xxx-mdio-external";
/Linux-v4.19/drivers/net/dsa/
Drealtek-smi.c60 gpiod_direction_output(smi->mdio, 1); in realtek_smi_start()
72 gpiod_set_value(smi->mdio, 0); in realtek_smi_start()
76 gpiod_set_value(smi->mdio, 1); in realtek_smi_start()
82 gpiod_set_value(smi->mdio, 0); in realtek_smi_stop()
85 gpiod_set_value(smi->mdio, 1); in realtek_smi_stop()
100 gpiod_direction_input(smi->mdio); in realtek_smi_stop()
110 gpiod_set_value(smi->mdio, !!(data & (1 << (len - 1)))); in realtek_smi_write_bits()
122 gpiod_direction_input(smi->mdio); in realtek_smi_read_bits()
132 u = !!gpiod_get_value(smi->mdio); in realtek_smi_read_bits()
138 gpiod_direction_output(smi->mdio, 0); in realtek_smi_read_bits()
[all …]
/Linux-v4.19/arch/powerpc/boot/dts/fsl/
Dt2081qds.dts100 mdio-mux-emi1 {
101 compatible = "mdio-mux-mmioreg", "mdio-mux";
102 mdio-parent-bus = <&mdio0>;
108 t2081mdio0: mdio@0 {
118 t2081mdio1: mdio@20 {
128 t2081mdio2: mdio@40 {
150 t2081mdio3: mdio@60 {
172 t2081mdio4: mdio@80 {
195 t2081mdio5: mdio@a0 {
218 t2081mdio6: mdio@c0 {
[all …]

12345678910>>...28