Lines Matching refs:xz3216

64 struct xz3216 {  struct
93 struct xz3216 *xz3216 = rdev_get_drvdata(dev); in xz3216_dcdc_get_mode() argument
97 ret = regmap_read(xz3216->regmap, xz3216->vol_reg, &val); in xz3216_dcdc_get_mode()
108 struct xz3216 *xz3216 = rdev_get_drvdata(dev); in xz3216_dcdc_set_mode() local
112 return regmap_update_bits(xz3216->regmap, xz3216->vol_reg, in xz3216_dcdc_set_mode()
115 return regmap_update_bits(xz3216->regmap, xz3216->vol_reg, in xz3216_dcdc_set_mode()
125 struct xz3216 *xz3216 = rdev_get_drvdata(dev); in xz3216_dcdc_suspend_enable() local
126 return regmap_update_bits(xz3216->regmap, XZ3216_BUCK1_SLP_VOL_BASE, in xz3216_dcdc_suspend_enable()
132 struct xz3216 *xz3216 = rdev_get_drvdata(dev); in xz3216_dcdc_suspend_disable() local
133 return regmap_update_bits(xz3216->regmap, XZ3216_BUCK1_SLP_VOL_BASE, in xz3216_dcdc_suspend_disable()
141 struct xz3216 *xz3216 = rdev_get_drvdata(dev); in xz3216_dcdc_set_sleep_voltage() local
144 if (xz3216->sleep_vol_cache == uV) in xz3216_dcdc_set_sleep_voltage()
149 ret = regmap_update_bits(xz3216->regmap, XZ3216_BUCK1_SLP_VOL_BASE, in xz3216_dcdc_set_sleep_voltage()
153 xz3216->sleep_vol_cache = uV; in xz3216_dcdc_set_sleep_voltage()
161 struct xz3216 *xz3216 = rdev_get_drvdata(dev); in xz3216_dcdc_set_suspend_mode() local
165 return regmap_update_bits(xz3216->regmap, xz3216->vol_reg, in xz3216_dcdc_set_suspend_mode()
168 return regmap_update_bits(xz3216->regmap, xz3216->vol_reg, in xz3216_dcdc_set_suspend_mode()
189 struct xz3216 *xz3216 = rdev_get_drvdata(rdev); in xz3216_set_ramp() local
199 dev_err(xz3216->dev, "unsupported ramp value %d\n", ramp); in xz3216_set_ramp()
203 return regmap_update_bits(xz3216->regmap, XZ3216_CONTR_REG1, in xz3216_set_ramp()
262 static struct xz3216_board *xz3216_parse_dt(struct xz3216 *xz3216) in xz3216_parse_dt() argument
269 xz3216_np = of_node_get(xz3216->dev->of_node); in xz3216_parse_dt()
277 count = of_regulator_match(xz3216->dev, regs, xz3216_reg_matches, in xz3216_parse_dt()
280 pdata = devm_kzalloc(xz3216->dev, sizeof(*pdata), GFP_KERNEL); in xz3216_parse_dt()
298 struct xz3216 *xz3216; in xz3216_i2c_probe() local
304 xz3216 = devm_kzalloc(&i2c->dev, sizeof(struct xz3216), in xz3216_i2c_probe()
306 if (!xz3216) { in xz3216_i2c_probe()
319 xz3216->regmap = devm_regmap_init_i2c(i2c, &xz3216_regmap_config); in xz3216_i2c_probe()
320 if (IS_ERR(xz3216->regmap)) { in xz3216_i2c_probe()
322 return PTR_ERR(xz3216->regmap); in xz3216_i2c_probe()
325 xz3216->i2c = i2c; in xz3216_i2c_probe()
326 xz3216->dev = &i2c->dev; in xz3216_i2c_probe()
327 i2c_set_clientdata(i2c, xz3216); in xz3216_i2c_probe()
330 pdev = xz3216_parse_dt(xz3216); in xz3216_i2c_probe()
332 xz3216->num_regulators = XZ3216_NUM_REGULATORS; in xz3216_i2c_probe()
333 xz3216->rdev = kcalloc(XZ3216_NUM_REGULATORS, in xz3216_i2c_probe()
336 if (!xz3216->rdev) in xz3216_i2c_probe()
339 xz3216->regulator = pdev->xz3216_init_data; in xz3216_i2c_probe()
340 if (xz3216->dev->of_node) in xz3216_i2c_probe()
342 config.dev = xz3216->dev; in xz3216_i2c_probe()
343 config.driver_data = xz3216; in xz3216_i2c_probe()
344 config.init_data = xz3216->regulator; in xz3216_i2c_probe()
345 xz3216->rdev = devm_regulator_register(xz3216->dev, in xz3216_i2c_probe()
347 ret = PTR_ERR_OR_ZERO(xz3216->rdev); in xz3216_i2c_probe()
359 struct xz3216 *xz3216 = i2c_get_clientdata(i2c); in xz3216_i2c_remove() local
361 if (xz3216->rdev) in xz3216_i2c_remove()
362 regulator_unregister(xz3216->rdev); in xz3216_i2c_remove()