Lines Matching refs:ldo
52 struct wm831x_ldo *ldo = data; in wm831x_ldo_uv_irq() local
54 regulator_notifier_call_chain(ldo->regulator, in wm831x_ldo_uv_irq()
104 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_gp_ldo_set_suspend_voltage() local
105 struct wm831x *wm831x = ldo->wm831x; in wm831x_gp_ldo_set_suspend_voltage()
106 int sel, reg = ldo->base + WM831X_LDO_SLEEP_CONTROL; in wm831x_gp_ldo_set_suspend_voltage()
117 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_gp_ldo_get_mode() local
118 struct wm831x *wm831x = ldo->wm831x; in wm831x_gp_ldo_get_mode()
119 int ctrl_reg = ldo->base + WM831X_LDO_CONTROL; in wm831x_gp_ldo_get_mode()
120 int on_reg = ldo->base + WM831X_LDO_ON_CONTROL; in wm831x_gp_ldo_get_mode()
143 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_gp_ldo_set_mode() local
144 struct wm831x *wm831x = ldo->wm831x; in wm831x_gp_ldo_set_mode()
145 int ctrl_reg = ldo->base + WM831X_LDO_CONTROL; in wm831x_gp_ldo_set_mode()
146 int on_reg = ldo->base + WM831X_LDO_ON_CONTROL; in wm831x_gp_ldo_set_mode()
194 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_gp_ldo_get_status() local
195 struct wm831x *wm831x = ldo->wm831x; in wm831x_gp_ldo_get_status()
256 struct wm831x_ldo *ldo; in wm831x_gp_ldo_probe() local
268 ldo = devm_kzalloc(&pdev->dev, sizeof(struct wm831x_ldo), GFP_KERNEL); in wm831x_gp_ldo_probe()
269 if (ldo == NULL) { in wm831x_gp_ldo_probe()
274 ldo->wm831x = wm831x; in wm831x_gp_ldo_probe()
282 ldo->base = res->start; in wm831x_gp_ldo_probe()
284 snprintf(ldo->name, sizeof(ldo->name), "LDO%d", id + 1); in wm831x_gp_ldo_probe()
285 ldo->desc.name = ldo->name; in wm831x_gp_ldo_probe()
287 snprintf(ldo->supply_name, sizeof(ldo->supply_name), in wm831x_gp_ldo_probe()
289 ldo->desc.supply_name = ldo->supply_name; in wm831x_gp_ldo_probe()
291 ldo->desc.id = id; in wm831x_gp_ldo_probe()
292 ldo->desc.type = REGULATOR_VOLTAGE; in wm831x_gp_ldo_probe()
293 ldo->desc.n_voltages = WM831X_GP_LDO_MAX_SELECTOR + 1; in wm831x_gp_ldo_probe()
294 ldo->desc.ops = &wm831x_gp_ldo_ops; in wm831x_gp_ldo_probe()
295 ldo->desc.owner = THIS_MODULE; in wm831x_gp_ldo_probe()
296 ldo->desc.vsel_reg = ldo->base + WM831X_LDO_ON_CONTROL; in wm831x_gp_ldo_probe()
297 ldo->desc.vsel_mask = WM831X_LDO1_ON_VSEL_MASK; in wm831x_gp_ldo_probe()
298 ldo->desc.enable_reg = WM831X_LDO_ENABLE; in wm831x_gp_ldo_probe()
299 ldo->desc.enable_mask = 1 << id; in wm831x_gp_ldo_probe()
300 ldo->desc.bypass_reg = ldo->base; in wm831x_gp_ldo_probe()
301 ldo->desc.bypass_mask = WM831X_LDO1_SWI; in wm831x_gp_ldo_probe()
305 config.init_data = pdata->ldo[id]; in wm831x_gp_ldo_probe()
306 config.driver_data = ldo; in wm831x_gp_ldo_probe()
309 ldo->regulator = regulator_register(&ldo->desc, &config); in wm831x_gp_ldo_probe()
310 if (IS_ERR(ldo->regulator)) { in wm831x_gp_ldo_probe()
311 ret = PTR_ERR(ldo->regulator); in wm831x_gp_ldo_probe()
319 IRQF_TRIGGER_RISING, ldo->name, in wm831x_gp_ldo_probe()
320 ldo); in wm831x_gp_ldo_probe()
327 platform_set_drvdata(pdev, ldo); in wm831x_gp_ldo_probe()
332 regulator_unregister(ldo->regulator); in wm831x_gp_ldo_probe()
339 struct wm831x_ldo *ldo = platform_get_drvdata(pdev); in wm831x_gp_ldo_remove() local
343 free_irq(wm831x_irq(ldo->wm831x, in wm831x_gp_ldo_remove()
344 platform_get_irq_byname(pdev, "UV")), ldo); in wm831x_gp_ldo_remove()
345 regulator_unregister(ldo->regulator); in wm831x_gp_ldo_remove()
404 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_aldo_set_suspend_voltage() local
405 struct wm831x *wm831x = ldo->wm831x; in wm831x_aldo_set_suspend_voltage()
406 int sel, reg = ldo->base + WM831X_LDO_SLEEP_CONTROL; in wm831x_aldo_set_suspend_voltage()
417 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_aldo_get_mode() local
418 struct wm831x *wm831x = ldo->wm831x; in wm831x_aldo_get_mode()
419 int on_reg = ldo->base + WM831X_LDO_ON_CONTROL; in wm831x_aldo_get_mode()
435 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_aldo_set_mode() local
436 struct wm831x *wm831x = ldo->wm831x; in wm831x_aldo_set_mode()
437 int on_reg = ldo->base + WM831X_LDO_ON_CONTROL; in wm831x_aldo_set_mode()
464 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_aldo_get_status() local
465 struct wm831x *wm831x = ldo->wm831x; in wm831x_aldo_get_status()
513 struct wm831x_ldo *ldo; in wm831x_aldo_probe() local
525 ldo = devm_kzalloc(&pdev->dev, sizeof(struct wm831x_ldo), GFP_KERNEL); in wm831x_aldo_probe()
526 if (ldo == NULL) { in wm831x_aldo_probe()
531 ldo->wm831x = wm831x; in wm831x_aldo_probe()
539 ldo->base = res->start; in wm831x_aldo_probe()
541 snprintf(ldo->name, sizeof(ldo->name), "LDO%d", id + 1); in wm831x_aldo_probe()
542 ldo->desc.name = ldo->name; in wm831x_aldo_probe()
544 snprintf(ldo->supply_name, sizeof(ldo->supply_name), in wm831x_aldo_probe()
546 ldo->desc.supply_name = ldo->supply_name; in wm831x_aldo_probe()
548 ldo->desc.id = id; in wm831x_aldo_probe()
549 ldo->desc.type = REGULATOR_VOLTAGE; in wm831x_aldo_probe()
550 ldo->desc.n_voltages = WM831X_ALDO_MAX_SELECTOR + 1; in wm831x_aldo_probe()
551 ldo->desc.ops = &wm831x_aldo_ops; in wm831x_aldo_probe()
552 ldo->desc.owner = THIS_MODULE; in wm831x_aldo_probe()
553 ldo->desc.vsel_reg = ldo->base + WM831X_LDO_ON_CONTROL; in wm831x_aldo_probe()
554 ldo->desc.vsel_mask = WM831X_LDO7_ON_VSEL_MASK; in wm831x_aldo_probe()
555 ldo->desc.enable_reg = WM831X_LDO_ENABLE; in wm831x_aldo_probe()
556 ldo->desc.enable_mask = 1 << id; in wm831x_aldo_probe()
557 ldo->desc.bypass_reg = ldo->base; in wm831x_aldo_probe()
558 ldo->desc.bypass_mask = WM831X_LDO7_SWI; in wm831x_aldo_probe()
562 config.init_data = pdata->ldo[id]; in wm831x_aldo_probe()
563 config.driver_data = ldo; in wm831x_aldo_probe()
566 ldo->regulator = regulator_register(&ldo->desc, &config); in wm831x_aldo_probe()
567 if (IS_ERR(ldo->regulator)) { in wm831x_aldo_probe()
568 ret = PTR_ERR(ldo->regulator); in wm831x_aldo_probe()
576 IRQF_TRIGGER_RISING, ldo->name, ldo); in wm831x_aldo_probe()
583 platform_set_drvdata(pdev, ldo); in wm831x_aldo_probe()
588 regulator_unregister(ldo->regulator); in wm831x_aldo_probe()
595 struct wm831x_ldo *ldo = platform_get_drvdata(pdev); in wm831x_aldo_remove() local
597 free_irq(wm831x_irq(ldo->wm831x, platform_get_irq_byname(pdev, "UV")), in wm831x_aldo_remove()
598 ldo); in wm831x_aldo_remove()
599 regulator_unregister(ldo->regulator); in wm831x_aldo_remove()
622 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_alive_ldo_set_suspend_voltage() local
623 struct wm831x *wm831x = ldo->wm831x; in wm831x_alive_ldo_set_suspend_voltage()
624 int sel, reg = ldo->base + WM831X_ALIVE_LDO_SLEEP_CONTROL; in wm831x_alive_ldo_set_suspend_voltage()
635 struct wm831x_ldo *ldo = rdev_get_drvdata(rdev); in wm831x_alive_ldo_get_status() local
636 struct wm831x *wm831x = ldo->wm831x; in wm831x_alive_ldo_get_status()
669 struct wm831x_ldo *ldo; in wm831x_alive_ldo_probe() local
682 ldo = devm_kzalloc(&pdev->dev, sizeof(struct wm831x_ldo), GFP_KERNEL); in wm831x_alive_ldo_probe()
683 if (ldo == NULL) { in wm831x_alive_ldo_probe()
688 ldo->wm831x = wm831x; in wm831x_alive_ldo_probe()
696 ldo->base = res->start; in wm831x_alive_ldo_probe()
698 snprintf(ldo->name, sizeof(ldo->name), "LDO%d", id + 1); in wm831x_alive_ldo_probe()
699 ldo->desc.name = ldo->name; in wm831x_alive_ldo_probe()
701 snprintf(ldo->supply_name, sizeof(ldo->supply_name), in wm831x_alive_ldo_probe()
703 ldo->desc.supply_name = ldo->supply_name; in wm831x_alive_ldo_probe()
705 ldo->desc.id = id; in wm831x_alive_ldo_probe()
706 ldo->desc.type = REGULATOR_VOLTAGE; in wm831x_alive_ldo_probe()
707 ldo->desc.n_voltages = WM831X_ALIVE_LDO_MAX_SELECTOR + 1; in wm831x_alive_ldo_probe()
708 ldo->desc.ops = &wm831x_alive_ldo_ops; in wm831x_alive_ldo_probe()
709 ldo->desc.owner = THIS_MODULE; in wm831x_alive_ldo_probe()
710 ldo->desc.vsel_reg = ldo->base + WM831X_ALIVE_LDO_ON_CONTROL; in wm831x_alive_ldo_probe()
711 ldo->desc.vsel_mask = WM831X_LDO11_ON_VSEL_MASK; in wm831x_alive_ldo_probe()
712 ldo->desc.enable_reg = WM831X_LDO_ENABLE; in wm831x_alive_ldo_probe()
713 ldo->desc.enable_mask = 1 << id; in wm831x_alive_ldo_probe()
714 ldo->desc.min_uV = 800000; in wm831x_alive_ldo_probe()
715 ldo->desc.uV_step = 50000; in wm831x_alive_ldo_probe()
716 ldo->desc.enable_time = 1000; in wm831x_alive_ldo_probe()
720 config.init_data = pdata->ldo[id]; in wm831x_alive_ldo_probe()
721 config.driver_data = ldo; in wm831x_alive_ldo_probe()
724 ldo->regulator = regulator_register(&ldo->desc, &config); in wm831x_alive_ldo_probe()
725 if (IS_ERR(ldo->regulator)) { in wm831x_alive_ldo_probe()
726 ret = PTR_ERR(ldo->regulator); in wm831x_alive_ldo_probe()
732 platform_set_drvdata(pdev, ldo); in wm831x_alive_ldo_probe()
742 struct wm831x_ldo *ldo = platform_get_drvdata(pdev); in wm831x_alive_ldo_remove() local
744 regulator_unregister(ldo->regulator); in wm831x_alive_ldo_remove()