Lines Matching refs:phy
49 struct phy *phy; member
71 static int rcar_gen2_phy_init(struct phy *p) in rcar_gen2_phy_init()
73 struct rcar_gen2_phy *phy = phy_get_drvdata(p); in rcar_gen2_phy_init() local
74 struct rcar_gen2_channel *channel = phy->channel; in rcar_gen2_phy_init()
85 if (cmpxchg(&channel->selected_phy, -1, phy->number) != -1) in rcar_gen2_phy_init()
93 ugctrl2 |= phy->select_value; in rcar_gen2_phy_init()
99 static int rcar_gen2_phy_exit(struct phy *p) in rcar_gen2_phy_exit()
101 struct rcar_gen2_phy *phy = phy_get_drvdata(p); in rcar_gen2_phy_exit() local
102 struct rcar_gen2_channel *channel = phy->channel; in rcar_gen2_phy_exit()
111 static int rcar_gen2_phy_power_on(struct phy *p) in rcar_gen2_phy_power_on()
113 struct rcar_gen2_phy *phy = phy_get_drvdata(p); in rcar_gen2_phy_power_on() local
114 struct rcar_gen2_phy_driver *drv = phy->channel->drv; in rcar_gen2_phy_power_on()
121 if (phy->select_value != USBHS_UGCTRL2_USB0SEL_HS_USB) in rcar_gen2_phy_power_on()
155 static int rcar_gen2_phy_power_off(struct phy *p) in rcar_gen2_phy_power_off()
157 struct rcar_gen2_phy *phy = phy_get_drvdata(p); in rcar_gen2_phy_power_off() local
158 struct rcar_gen2_phy_driver *drv = phy->channel->drv; in rcar_gen2_phy_power_off()
164 if (phy->select_value != USBHS_UGCTRL2_USB0SEL_HS_USB) in rcar_gen2_phy_power_off()
202 static struct phy *rcar_gen2_phy_xlate(struct device *dev, in rcar_gen2_phy_xlate()
226 return drv->channels[i].phys[args->args[0]].phy; in rcar_gen2_phy_xlate()
300 struct rcar_gen2_phy *phy = &channel->phys[n]; in rcar_gen2_phy_probe() local
302 phy->channel = channel; in rcar_gen2_phy_probe()
303 phy->number = n; in rcar_gen2_phy_probe()
304 phy->select_value = select_value[channel_num][n]; in rcar_gen2_phy_probe()
306 phy->phy = devm_phy_create(dev, NULL, in rcar_gen2_phy_probe()
308 if (IS_ERR(phy->phy)) { in rcar_gen2_phy_probe()
310 return PTR_ERR(phy->phy); in rcar_gen2_phy_probe()
312 phy_set_drvdata(phy->phy, phy); in rcar_gen2_phy_probe()