Lines Matching refs:rptr

98 static int eusb2_repeater_init_vregs(struct eusb2_repeater *rptr)  in eusb2_repeater_init_vregs()  argument
100 int num = rptr->cfg->num_vregs; in eusb2_repeater_init_vregs()
101 struct device *dev = rptr->dev; in eusb2_repeater_init_vregs()
104 rptr->vregs = devm_kcalloc(dev, num, sizeof(*rptr->vregs), GFP_KERNEL); in eusb2_repeater_init_vregs()
105 if (!rptr->vregs) in eusb2_repeater_init_vregs()
109 rptr->vregs[i].supply = rptr->cfg->vreg_list[i]; in eusb2_repeater_init_vregs()
111 return devm_regulator_bulk_get(dev, num, rptr->vregs); in eusb2_repeater_init_vregs()
116 struct eusb2_repeater *rptr = phy_get_drvdata(phy); in eusb2_repeater_init() local
117 struct device_node *np = rptr->dev->of_node; in eusb2_repeater_init()
118 struct regmap *regmap = rptr->regmap; in eusb2_repeater_init()
119 const u32 *init_tbl = rptr->cfg->init_tbl; in eusb2_repeater_init()
123 u32 base = rptr->base; in eusb2_repeater_init()
131 ret = regulator_bulk_enable(rptr->cfg->num_vregs, rptr->vregs); in eusb2_repeater_init()
153 dev_err(rptr->dev, "initialization timed-out\n"); in eusb2_repeater_init()
161 struct eusb2_repeater *rptr = phy_get_drvdata(phy); in eusb2_repeater_set_mode() local
162 struct regmap *regmap = rptr->regmap; in eusb2_repeater_set_mode()
163 u32 base = rptr->base; in eusb2_repeater_set_mode()
194 struct eusb2_repeater *rptr = phy_get_drvdata(phy); in eusb2_repeater_exit() local
196 return regulator_bulk_disable(rptr->cfg->num_vregs, rptr->vregs); in eusb2_repeater_exit()
208 struct eusb2_repeater *rptr; in eusb2_repeater_probe() local
215 rptr = devm_kzalloc(dev, sizeof(*rptr), GFP_KERNEL); in eusb2_repeater_probe()
216 if (!rptr) in eusb2_repeater_probe()
219 rptr->dev = dev; in eusb2_repeater_probe()
220 dev_set_drvdata(dev, rptr); in eusb2_repeater_probe()
222 rptr->cfg = of_device_get_match_data(dev); in eusb2_repeater_probe()
223 if (!rptr->cfg) in eusb2_repeater_probe()
226 rptr->regmap = dev_get_regmap(dev->parent, NULL); in eusb2_repeater_probe()
227 if (!rptr->regmap) in eusb2_repeater_probe()
234 rptr->base = res; in eusb2_repeater_probe()
236 ret = eusb2_repeater_init_vregs(rptr); in eusb2_repeater_probe()
242 rptr->phy = devm_phy_create(dev, np, &eusb2_repeater_ops); in eusb2_repeater_probe()
243 if (IS_ERR(rptr->phy)) { in eusb2_repeater_probe()
245 return PTR_ERR(rptr->phy); in eusb2_repeater_probe()
248 phy_set_drvdata(rptr->phy, rptr); in eusb2_repeater_probe()
261 struct eusb2_repeater *rptr = platform_get_drvdata(pdev); in eusb2_repeater_remove() local
263 if (!rptr) in eusb2_repeater_remove()
266 eusb2_repeater_exit(rptr->phy); in eusb2_repeater_remove()