Lines Matching refs:mdio_dev

153 static int mdio_sc_cfg_reg_write(struct hns_mdio_device *mdio_dev,  in mdio_sc_cfg_reg_write()  argument
160 regmap_write(mdio_dev->subctrl_vbase, cfg_reg, set_val); in mdio_sc_cfg_reg_write()
163 regmap_read(mdio_dev->subctrl_vbase, st_reg, &reg_value); in mdio_sc_cfg_reg_write()
177 struct hns_mdio_device *mdio_dev = bus->priv; in hns_mdio_wait_ready() local
184 cmd_reg_value = MDIO_GET_REG_BIT(mdio_dev, in hns_mdio_wait_ready()
196 static void hns_mdio_cmd_write(struct hns_mdio_device *mdio_dev, in hns_mdio_cmd_write() argument
209 MDIO_WRITE_REG(mdio_dev, MDIO_COMMAND_REG, cmd_reg_value); in hns_mdio_cmd_write()
225 struct hns_mdio_device *mdio_dev = (struct hns_mdio_device *)bus->priv; in hns_mdio_write() local
233 bus->id, mdio_dev->vbase); in hns_mdio_write()
249 MDIO_SET_REG_FIELD(mdio_dev, MDIO_ADDR_REG, MDIO_ADDR_DATA_M, in hns_mdio_write()
252 hns_mdio_cmd_write(mdio_dev, is_c45, in hns_mdio_write()
267 MDIO_SET_REG_FIELD(mdio_dev, MDIO_WDATA_REG, MDIO_WDATA_DATA_M, in hns_mdio_write()
270 hns_mdio_cmd_write(mdio_dev, is_c45, op, phy_id, cmd_reg_cfg); in hns_mdio_write()
291 struct hns_mdio_device *mdio_dev = (struct hns_mdio_device *)bus->priv; in hns_mdio_read() local
294 bus->id, mdio_dev->vbase); in hns_mdio_read()
306 hns_mdio_cmd_write(mdio_dev, is_c45, in hns_mdio_read()
309 MDIO_SET_REG_FIELD(mdio_dev, MDIO_ADDR_REG, MDIO_ADDR_DATA_M, in hns_mdio_read()
313 hns_mdio_cmd_write(mdio_dev, is_c45, in hns_mdio_read()
323 hns_mdio_cmd_write(mdio_dev, is_c45, in hns_mdio_read()
335 reg_val = MDIO_GET_REG_BIT(mdio_dev, MDIO_STA_REG, MDIO_STATE_STA_B); in hns_mdio_read()
342 reg_val = (u16)MDIO_GET_REG_FIELD(mdio_dev, MDIO_RDATA_REG, in hns_mdio_read()
356 struct hns_mdio_device *mdio_dev = (struct hns_mdio_device *)bus->priv; in hns_mdio_reset() local
361 if (!mdio_dev->subctrl_vbase) { in hns_mdio_reset()
366 sc_reg = &mdio_dev->sc_reg; in hns_mdio_reset()
368 ret = mdio_sc_cfg_reg_write(mdio_dev, sc_reg->mdio_reset_req, in hns_mdio_reset()
377 ret = mdio_sc_cfg_reg_write(mdio_dev, sc_reg->mdio_clk_dis, in hns_mdio_reset()
386 ret = mdio_sc_cfg_reg_write(mdio_dev, sc_reg->mdio_reset_dreq, in hns_mdio_reset()
395 ret = mdio_sc_cfg_reg_write(mdio_dev, sc_reg->mdio_clk_en, in hns_mdio_reset()
426 struct hns_mdio_device *mdio_dev; in hns_mdio_probe() local
436 mdio_dev = devm_kzalloc(&pdev->dev, sizeof(*mdio_dev), GFP_KERNEL); in hns_mdio_probe()
437 if (!mdio_dev) in hns_mdio_probe()
450 new_bus->priv = mdio_dev; in hns_mdio_probe()
454 mdio_dev->vbase = devm_ioremap_resource(&pdev->dev, res); in hns_mdio_probe()
455 if (IS_ERR(mdio_dev->vbase)) { in hns_mdio_probe()
456 ret = PTR_ERR(mdio_dev->vbase); in hns_mdio_probe()
472 mdio_dev->subctrl_vbase = in hns_mdio_probe()
474 if (IS_ERR(mdio_dev->subctrl_vbase)) { in hns_mdio_probe()
476 mdio_dev->subctrl_vbase = NULL; in hns_mdio_probe()
479 mdio_dev->sc_reg.mdio_clk_en = in hns_mdio_probe()
481 mdio_dev->sc_reg.mdio_clk_dis = in hns_mdio_probe()
483 mdio_dev->sc_reg.mdio_reset_req = in hns_mdio_probe()
485 mdio_dev->sc_reg.mdio_reset_dreq = in hns_mdio_probe()
487 mdio_dev->sc_reg.mdio_clk_st = in hns_mdio_probe()
489 mdio_dev->sc_reg.mdio_reset_st = in hns_mdio_probe()
493 mdio_dev->sc_reg.mdio_clk_en = in hns_mdio_probe()
495 mdio_dev->sc_reg.mdio_clk_dis = in hns_mdio_probe()
497 mdio_dev->sc_reg.mdio_reset_req = in hns_mdio_probe()
499 mdio_dev->sc_reg.mdio_reset_dreq = in hns_mdio_probe()
501 mdio_dev->sc_reg.mdio_clk_st = in hns_mdio_probe()
503 mdio_dev->sc_reg.mdio_reset_st = in hns_mdio_probe()
509 mdio_dev->subctrl_vbase = NULL; in hns_mdio_probe()