/Linux-v4.19/drivers/net/ |
D | mdio.c | 29 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/ |
D | dwmac-sun8i.txt | 41 - 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 …]
|
D | brcm,unimac-mdio.txt | 4 - 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";
|
D | hisilicon-hns-mdio.txt | 5 "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";
|
D | cavium-mdio.txt | 6 "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";
|
D | apm-xgene-mdio.txt | 6 - 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 {
|
D | mdio-mux-mmioreg.txt | 4 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 {
|
D | brcm,mdio-mux-iproc.txt | 11 - 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 {
|
D | mdio-gpio.txt | 4 - 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";
|
D | allwinner,sun4i-mdio.txt | 4 - compatible: should be "allwinner,sun4i-a10-mdio" 5 (Deprecated: "allwinner,sun4i-mdio"). 12 mdio@1c0b080 { 13 compatible = "allwinner,sun4i-a10-mdio"; 21 mdio@1c0b080 {
|
D | brcm,bcmgenet.txt | 35 - 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";
|
D | mdio-mux-gpio.txt | 8 - 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 {
|
D | mdio-mux.txt | 12 - 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/ |
D | of_mdio.c | 47 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/ |
D | Makefile | 5 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 …]
|
D | icplus.c | 56 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);
|
D | mdio-gpio.c | 34 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/ |
D | cphy.h | 105 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/ |
D | ax88172a.c | 31 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/ |
D | mdio.h | 131 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/ |
D | network.txt | 26 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/ |
D | mdio_10g.h | 27 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/ |
D | marvell.txt | 11 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/ |
D | realtek-smi.c | 60 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/ |
D | t2081qds.dts | 100 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 …]
|