| /Linux-v5.15/drivers/net/phy/ |
| D | mdio_device.c | 25 void mdio_device_free(struct mdio_device *mdiodev) in mdio_device_free() argument 27 put_device(&mdiodev->dev); in mdio_device_free() 38 struct mdio_device *mdiodev = to_mdio_device(dev); in mdio_device_bus_match() local 44 return strcmp(mdiodev->modalias, drv->name) == 0; in mdio_device_bus_match() 49 struct mdio_device *mdiodev; in mdio_device_create() local 52 mdiodev = kzalloc(sizeof(*mdiodev), GFP_KERNEL); in mdio_device_create() 53 if (!mdiodev) in mdio_device_create() 56 mdiodev->dev.release = mdio_device_release; in mdio_device_create() 57 mdiodev->dev.parent = &bus->dev; in mdio_device_create() 58 mdiodev->dev.bus = &mdio_bus_type; in mdio_device_create() [all …]
|
| D | mdio_bus.c | 43 static int mdiobus_register_gpiod(struct mdio_device *mdiodev) in mdiobus_register_gpiod() argument 46 mdiodev->reset_gpio = gpiod_get_optional(&mdiodev->dev, in mdiobus_register_gpiod() 48 if (IS_ERR(mdiodev->reset_gpio)) in mdiobus_register_gpiod() 49 return PTR_ERR(mdiodev->reset_gpio); in mdiobus_register_gpiod() 51 if (mdiodev->reset_gpio) in mdiobus_register_gpiod() 52 gpiod_set_consumer_name(mdiodev->reset_gpio, "PHY reset"); in mdiobus_register_gpiod() 57 static int mdiobus_register_reset(struct mdio_device *mdiodev) in mdiobus_register_reset() argument 61 reset = reset_control_get_optional_exclusive(&mdiodev->dev, "phy"); in mdiobus_register_reset() 65 mdiodev->reset_ctrl = reset; in mdiobus_register_reset() 70 int mdiobus_register_device(struct mdio_device *mdiodev) in mdiobus_register_device() argument [all …]
|
| D | xilinx_gmii2rgmii.c | 83 static int xgmiitorgmii_probe(struct mdio_device *mdiodev) in xgmiitorgmii_probe() argument 85 struct device *dev = &mdiodev->dev; in xgmiitorgmii_probe() 111 priv->mdio = mdiodev; in xgmiitorgmii_probe()
|
| D | phy_device.c | 208 static void phy_mdio_device_free(struct mdio_device *mdiodev) in phy_mdio_device_free() argument 212 phydev = container_of(mdiodev, struct phy_device, mdio); in phy_mdio_device_free() 221 static void phy_mdio_device_remove(struct mdio_device *mdiodev) in phy_mdio_device_remove() argument 225 phydev = container_of(mdiodev, struct phy_device, mdio); in phy_mdio_device_remove() 573 struct mdio_device *mdiodev; in phy_device_create() local 581 mdiodev = &dev->mdio; in phy_device_create() 582 mdiodev->dev.parent = &bus->dev; in phy_device_create() 583 mdiodev->dev.bus = &mdio_bus_type; in phy_device_create() 584 mdiodev->dev.type = &mdio_bus_phy_type; in phy_device_create() 585 mdiodev->bus = bus; in phy_device_create() [all …]
|
| /Linux-v5.15/drivers/net/dsa/xrs700x/ |
| D | xrs700x_mdio.c | 27 struct mdio_device *mdiodev = context; in xrs700x_mdio_reg_read() local 28 struct device *dev = &mdiodev->dev; in xrs700x_mdio_reg_read() 34 ret = mdiobus_write(mdiodev->bus, mdiodev->addr, XRS_MDIO_IBA1, uval); in xrs700x_mdio_reg_read() 42 ret = mdiobus_write(mdiodev->bus, mdiodev->addr, XRS_MDIO_IBA0, uval); in xrs700x_mdio_reg_read() 48 ret = mdiobus_read(mdiodev->bus, mdiodev->addr, XRS_MDIO_IBD); in xrs700x_mdio_reg_read() 62 struct mdio_device *mdiodev = context; in xrs700x_mdio_reg_write() local 63 struct device *dev = &mdiodev->dev; in xrs700x_mdio_reg_write() 67 ret = mdiobus_write(mdiodev->bus, mdiodev->addr, XRS_MDIO_IBD, (u16)val); in xrs700x_mdio_reg_write() 75 ret = mdiobus_write(mdiodev->bus, mdiodev->addr, XRS_MDIO_IBA1, uval); in xrs700x_mdio_reg_write() 83 ret = mdiobus_write(mdiodev->bus, mdiodev->addr, XRS_MDIO_IBA0, uval); in xrs700x_mdio_reg_write() [all …]
|
| /Linux-v5.15/drivers/net/dsa/ |
| D | lan9303_mdio.c | 99 static int lan9303_mdio_probe(struct mdio_device *mdiodev) in lan9303_mdio_probe() argument 104 sw_dev = devm_kzalloc(&mdiodev->dev, sizeof(struct lan9303_mdio), in lan9303_mdio_probe() 109 sw_dev->chip.regmap = devm_regmap_init(&mdiodev->dev, NULL, sw_dev, in lan9303_mdio_probe() 113 dev_err(&mdiodev->dev, "regmap init failed: %d\n", ret); in lan9303_mdio_probe() 118 sw_dev->device = mdiodev; in lan9303_mdio_probe() 119 dev_set_drvdata(&mdiodev->dev, sw_dev); in lan9303_mdio_probe() 120 sw_dev->chip.dev = &mdiodev->dev; in lan9303_mdio_probe() 124 ret = lan9303_probe(&sw_dev->chip, mdiodev->dev.of_node); in lan9303_mdio_probe() 128 dev_info(&mdiodev->dev, "LAN9303 MDIO driver loaded successfully\n"); in lan9303_mdio_probe() 133 static void lan9303_mdio_remove(struct mdio_device *mdiodev) in lan9303_mdio_remove() argument [all …]
|
| D | dsa_loop.c | 298 static int dsa_loop_drv_probe(struct mdio_device *mdiodev) in dsa_loop_drv_probe() argument 300 struct dsa_loop_pdata *pdata = mdiodev->dev.platform_data; in dsa_loop_drv_probe() 308 ds = devm_kzalloc(&mdiodev->dev, sizeof(*ds), GFP_KERNEL); in dsa_loop_drv_probe() 312 ds->dev = &mdiodev->dev; in dsa_loop_drv_probe() 315 ps = devm_kzalloc(&mdiodev->dev, sizeof(*ps), GFP_KERNEL); in dsa_loop_drv_probe() 325 ds->dev = &mdiodev->dev; in dsa_loop_drv_probe() 328 ps->bus = mdiodev->bus; in dsa_loop_drv_probe() 330 dev_set_drvdata(&mdiodev->dev, ds); in dsa_loop_drv_probe() 334 dev_info(&mdiodev->dev, "%s: 0x%0x\n", in dsa_loop_drv_probe() 340 static void dsa_loop_drv_remove(struct mdio_device *mdiodev) in dsa_loop_drv_remove() argument [all …]
|
| D | mv88e6060.c | 254 static int mv88e6060_probe(struct mdio_device *mdiodev) in mv88e6060_probe() argument 256 struct device *dev = &mdiodev->dev; in mv88e6060_probe() 265 priv->bus = mdiodev->bus; in mv88e6060_probe() 266 priv->sw_addr = mdiodev->addr; in mv88e6060_probe() 289 static void mv88e6060_remove(struct mdio_device *mdiodev) in mv88e6060_remove() argument 291 struct dsa_switch *ds = dev_get_drvdata(&mdiodev->dev); in mv88e6060_remove() 298 dev_set_drvdata(&mdiodev->dev, NULL); in mv88e6060_remove() 301 static void mv88e6060_shutdown(struct mdio_device *mdiodev) in mv88e6060_shutdown() argument 303 struct dsa_switch *ds = dev_get_drvdata(&mdiodev->dev); in mv88e6060_shutdown() 310 dev_set_drvdata(&mdiodev->dev, NULL); in mv88e6060_shutdown()
|
| D | qca8k.c | 1828 qca8k_sw_probe(struct mdio_device *mdiodev) in qca8k_sw_probe() argument 1836 priv = devm_kzalloc(&mdiodev->dev, sizeof(*priv), GFP_KERNEL); in qca8k_sw_probe() 1840 priv->bus = mdiodev->bus; in qca8k_sw_probe() 1841 priv->dev = &mdiodev->dev; in qca8k_sw_probe() 1862 priv->ds = devm_kzalloc(&mdiodev->dev, sizeof(*priv->ds), GFP_KERNEL); in qca8k_sw_probe() 1866 priv->ds->dev = &mdiodev->dev; in qca8k_sw_probe() 1872 dev_set_drvdata(&mdiodev->dev, priv); in qca8k_sw_probe() 1878 qca8k_sw_remove(struct mdio_device *mdiodev) in qca8k_sw_remove() argument 1880 struct qca8k_priv *priv = dev_get_drvdata(&mdiodev->dev); in qca8k_sw_remove() 1891 dev_set_drvdata(&mdiodev->dev, NULL); in qca8k_sw_remove() [all …]
|
| D | mt7530.c | 3192 mt7530_probe(struct mdio_device *mdiodev) in mt7530_probe() argument 3197 dn = mdiodev->dev.of_node; in mt7530_probe() 3199 priv = devm_kzalloc(&mdiodev->dev, sizeof(*priv), GFP_KERNEL); in mt7530_probe() 3203 priv->ds = devm_kzalloc(&mdiodev->dev, sizeof(*priv->ds), GFP_KERNEL); in mt7530_probe() 3207 priv->ds->dev = &mdiodev->dev; in mt7530_probe() 3215 dev_info(&mdiodev->dev, "MT7530 adapts as multi-chip module\n"); in mt7530_probe() 3217 priv->rstc = devm_reset_control_get(&mdiodev->dev, "mcm"); in mt7530_probe() 3219 dev_err(&mdiodev->dev, "Couldn't get our reset line\n"); in mt7530_probe() 3227 priv->info = of_device_get_match_data(&mdiodev->dev); in mt7530_probe() 3244 priv->core_pwr = devm_regulator_get(&mdiodev->dev, "core"); in mt7530_probe() [all …]
|
| /Linux-v5.15/drivers/net/dsa/microchip/ |
| D | ksz8863_smi.c | 141 static int ksz8863_smi_probe(struct mdio_device *mdiodev) in ksz8863_smi_probe() argument 149 ksz8 = devm_kzalloc(&mdiodev->dev, sizeof(struct ksz8), GFP_KERNEL); in ksz8863_smi_probe() 153 ksz8->priv = mdiodev; in ksz8863_smi_probe() 155 dev = ksz_switch_alloc(&mdiodev->dev, ksz8); in ksz8863_smi_probe() 162 dev->regmap[i] = devm_regmap_init(&mdiodev->dev, in ksz8863_smi_probe() 167 dev_err(&mdiodev->dev, in ksz8863_smi_probe() 174 if (mdiodev->dev.platform_data) in ksz8863_smi_probe() 175 dev->pdata = mdiodev->dev.platform_data; in ksz8863_smi_probe() 183 dev_set_drvdata(&mdiodev->dev, dev); in ksz8863_smi_probe() 188 static void ksz8863_smi_remove(struct mdio_device *mdiodev) in ksz8863_smi_remove() argument [all …]
|
| /Linux-v5.15/drivers/phy/broadcom/ |
| D | phy-bcm-ns2-pcie.c | 28 struct mdio_device *mdiodev = phy_get_drvdata(p); in ns2_pci_phy_init() local 32 rc = mdiobus_write(mdiodev->bus, mdiodev->addr, in ns2_pci_phy_init() 38 rc = mdiobus_write(mdiodev->bus, mdiodev->addr, in ns2_pci_phy_init() 46 dev_err(&mdiodev->dev, "Error %d writing to phy\n", rc); in ns2_pci_phy_init() 55 static int ns2_pci_phy_probe(struct mdio_device *mdiodev) in ns2_pci_phy_probe() argument 57 struct device *dev = &mdiodev->dev; in ns2_pci_phy_probe() 67 phy_set_drvdata(phy, mdiodev); in ns2_pci_phy_probe()
|
| D | phy-bcm-ns-usb3.c | 52 struct mdio_device *mdiodev; member 184 struct mdio_device *mdiodev = usb3->mdiodev; in bcm_ns_usb3_mdio_phy_write() local 186 return mdiobus_write(mdiodev->bus, mdiodev->addr, reg, value); in bcm_ns_usb3_mdio_phy_write() 189 static int bcm_ns_usb3_mdio_probe(struct mdio_device *mdiodev) in bcm_ns_usb3_mdio_probe() argument 191 struct device *dev = &mdiodev->dev; in bcm_ns_usb3_mdio_probe() 204 usb3->mdiodev = mdiodev; in bcm_ns_usb3_mdio_probe()
|
| /Linux-v5.15/drivers/net/dsa/b53/ |
| D | b53_mdio.c | 290 static int b53_mdio_probe(struct mdio_device *mdiodev) in b53_mdio_probe() argument 299 if (mdiodev->addr != BRCM_PSEUDO_PHY_ADDR && mdiodev->addr != 0) { in b53_mdio_probe() 300 dev_err(&mdiodev->dev, "leaving address %d to PHY\n", in b53_mdio_probe() 301 mdiodev->addr); in b53_mdio_probe() 306 phy_id = mdiobus_read(mdiodev->bus, 0, 2) << 16; in b53_mdio_probe() 307 phy_id |= mdiobus_read(mdiodev->bus, 0, 3); in b53_mdio_probe() 317 dev_err(&mdiodev->dev, "Unsupported device: 0x%08x\n", phy_id); in b53_mdio_probe() 329 strcmp(mdiodev->bus->name, "sf2 slave mii")) in b53_mdio_probe() 332 dev = b53_switch_alloc(&mdiodev->dev, &b53_mdio_ops, mdiodev->bus); in b53_mdio_probe() 338 dev->bus = mdiodev->bus; in b53_mdio_probe() [all …]
|
| /Linux-v5.15/include/linux/ |
| D | mdio.h | 41 void (*device_free)(struct mdio_device *mdiodev); 42 void (*device_remove)(struct mdio_device *mdiodev); 79 int (*probe)(struct mdio_device *mdiodev); 82 void (*remove)(struct mdio_device *mdiodev); 85 void (*shutdown)(struct mdio_device *mdiodev); 106 void mdio_device_free(struct mdio_device *mdiodev); 108 int mdio_device_register(struct mdio_device *mdiodev); 109 void mdio_device_remove(struct mdio_device *mdiodev); 110 void mdio_device_reset(struct mdio_device *mdiodev, int value); 383 int mdiobus_register_device(struct mdio_device *mdiodev); [all …]
|
| /Linux-v5.15/drivers/net/mdio/ |
| D | of_mdio.c | 55 struct mdio_device *mdiodev; in of_mdiobus_register_device() local 58 mdiodev = mdio_device_create(mdio, addr); in of_mdiobus_register_device() 59 if (IS_ERR(mdiodev)) in of_mdiobus_register_device() 60 return PTR_ERR(mdiodev); in of_mdiobus_register_device() 66 device_set_node(&mdiodev->dev, fwnode); in of_mdiobus_register_device() 69 rc = mdio_device_register(mdiodev); in of_mdiobus_register_device() 71 mdio_device_free(mdiodev); in of_mdiobus_register_device()
|
| /Linux-v5.15/drivers/net/dsa/qca/ |
| D | ar9331.c | 1022 static int ar9331_sw_probe(struct mdio_device *mdiodev) in ar9331_sw_probe() argument 1028 priv = devm_kzalloc(&mdiodev->dev, sizeof(*priv), GFP_KERNEL); in ar9331_sw_probe() 1032 priv->regmap = devm_regmap_init(&mdiodev->dev, &ar9331_sw_bus, priv, in ar9331_sw_probe() 1036 dev_err(&mdiodev->dev, "regmap init failed: %d\n", ret); in ar9331_sw_probe() 1040 priv->sw_reset = devm_reset_control_get(&mdiodev->dev, "switch"); in ar9331_sw_probe() 1042 dev_err(&mdiodev->dev, "missing switch reset\n"); in ar9331_sw_probe() 1046 priv->sbus = mdiodev->bus; in ar9331_sw_probe() 1047 priv->dev = &mdiodev->dev; in ar9331_sw_probe() 1054 ds->dev = &mdiodev->dev; in ar9331_sw_probe() 1059 dev_set_drvdata(&mdiodev->dev, priv); in ar9331_sw_probe() [all …]
|
| /Linux-v5.15/include/linux/pcs/ |
| D | pcs-xpcs.h | 24 struct mdio_device *mdiodev; member 38 struct dw_xpcs *xpcs_create(struct mdio_device *mdiodev,
|
| /Linux-v5.15/drivers/net/dsa/sja1105/ |
| D | sja1105_mdio.c | 422 struct mdio_device *mdiodev; in sja1105_mdiobus_pcs_register() local 432 mdiodev = mdio_device_create(bus, port); in sja1105_mdiobus_pcs_register() 433 if (IS_ERR(mdiodev)) { in sja1105_mdiobus_pcs_register() 434 rc = PTR_ERR(mdiodev); in sja1105_mdiobus_pcs_register() 438 xpcs = xpcs_create(mdiodev, priv->phy_mode[port]); in sja1105_mdiobus_pcs_register() 456 mdio_device_free(priv->xpcs[port]->mdiodev); in sja1105_mdiobus_pcs_register() 479 mdio_device_free(priv->xpcs[port]->mdiodev); in sja1105_mdiobus_pcs_unregister()
|
| /Linux-v5.15/drivers/net/ethernet/freescale/dpaa2/ |
| D | dpaa2-mac.c | 256 struct mdio_device *mdiodev; in dpaa2_pcs_create() local 272 mdiodev = fwnode_mdio_find_device(node); in dpaa2_pcs_create() 274 if (!mdiodev) in dpaa2_pcs_create() 277 mac->pcs = lynx_pcs_create(mdiodev); in dpaa2_pcs_create() 280 put_device(&mdiodev->dev); in dpaa2_pcs_create()
|
| /Linux-v5.15/drivers/net/ethernet/stmicro/stmmac/ |
| D | stmmac_mdio.c | 403 struct mdio_device *mdiodev; in stmmac_xpcs_setup() local 413 mdiodev = mdio_device_create(bus, addr); in stmmac_xpcs_setup() 414 if (IS_ERR(mdiodev)) in stmmac_xpcs_setup() 417 xpcs = xpcs_create(mdiodev, mode); in stmmac_xpcs_setup() 419 mdio_device_free(mdiodev); in stmmac_xpcs_setup() 564 mdio_device_free(priv->hw->xpcs->mdiodev); in stmmac_mdio_unregister()
|
| /Linux-v5.15/drivers/net/pcs/ |
| D | pcs-xpcs.c | 179 struct mii_bus *bus = xpcs->mdiodev->bus; in xpcs_read() 180 int addr = xpcs->mdiodev->addr; in xpcs_read() 188 struct mii_bus *bus = xpcs->mdiodev->bus; in xpcs_write() 189 int addr = xpcs->mdiodev->addr; in xpcs_write() 258 dev_warn(&(__xpcs)->mdiodev->dev, ##__args); \ 1114 struct dw_xpcs *xpcs_create(struct mdio_device *mdiodev, in xpcs_create() argument 1125 xpcs->mdiodev = mdiodev; in xpcs_create()
|
| /Linux-v5.15/drivers/net/dsa/mv88e6xxx/ |
| D | chip.c | 6345 static int mv88e6xxx_probe(struct mdio_device *mdiodev) in mv88e6xxx_probe() argument 6347 struct dsa_mv88e6xxx_pdata *pdata = mdiodev->dev.platform_data; in mv88e6xxx_probe() 6349 struct device *dev = &mdiodev->dev; in mv88e6xxx_probe() 6388 err = mv88e6xxx_smi_init(chip, mdiodev->bus, mdiodev->addr); in mv88e6xxx_probe() 6495 static void mv88e6xxx_remove(struct mdio_device *mdiodev) in mv88e6xxx_remove() argument 6497 struct dsa_switch *ds = dev_get_drvdata(&mdiodev->dev); in mv88e6xxx_remove() 6525 dev_set_drvdata(&mdiodev->dev, NULL); in mv88e6xxx_remove() 6528 static void mv88e6xxx_shutdown(struct mdio_device *mdiodev) in mv88e6xxx_shutdown() argument 6530 struct dsa_switch *ds = dev_get_drvdata(&mdiodev->dev); in mv88e6xxx_shutdown() 6537 dev_set_drvdata(&mdiodev->dev, NULL); in mv88e6xxx_shutdown()
|