Lines Matching refs:drvdata
63 struct pwm_regulator_data *drvdata = rdev_get_drvdata(rdev); in pwm_regulator_init_state() local
68 pwm_get_state(drvdata->pwm, &pwm_state); in pwm_regulator_init_state()
72 if (dutycycle == drvdata->duty_cycle_table[i].dutycycle) { in pwm_regulator_init_state()
73 drvdata->state = i; in pwm_regulator_init_state()
81 struct pwm_regulator_data *drvdata = rdev_get_drvdata(rdev); in pwm_regulator_get_voltage_sel() local
83 if (drvdata->state < 0) in pwm_regulator_get_voltage_sel()
86 return drvdata->state; in pwm_regulator_get_voltage_sel()
92 struct pwm_regulator_data *drvdata = rdev_get_drvdata(rdev); in pwm_regulator_set_voltage_sel() local
96 pwm_init_state(drvdata->pwm, &pstate); in pwm_regulator_set_voltage_sel()
98 drvdata->duty_cycle_table[selector].dutycycle, 100); in pwm_regulator_set_voltage_sel()
100 ret = pwm_apply_state(drvdata->pwm, &pstate); in pwm_regulator_set_voltage_sel()
106 drvdata->state = selector; in pwm_regulator_set_voltage_sel()
114 struct pwm_regulator_data *drvdata = rdev_get_drvdata(rdev); in pwm_regulator_list_voltage() local
119 return drvdata->duty_cycle_table[selector].uV; in pwm_regulator_list_voltage()
124 struct pwm_regulator_data *drvdata = rdev_get_drvdata(dev); in pwm_regulator_enable() local
126 if (drvdata->init_uv && !pwm_get_duty_cycle(drvdata->pwm)) in pwm_regulator_enable()
127 pwm_regulator_set_voltage(dev, drvdata->init_uv, in pwm_regulator_enable()
128 drvdata->init_uv, NULL); in pwm_regulator_enable()
130 gpiod_set_value_cansleep(drvdata->enb_gpio, 1); in pwm_regulator_enable()
132 return pwm_enable(drvdata->pwm); in pwm_regulator_enable()
137 struct pwm_regulator_data *drvdata = rdev_get_drvdata(dev); in pwm_regulator_disable() local
139 pwm_disable(drvdata->pwm); in pwm_regulator_disable()
141 gpiod_set_value_cansleep(drvdata->enb_gpio, 0); in pwm_regulator_disable()
148 struct pwm_regulator_data *drvdata = rdev_get_drvdata(dev); in pwm_regulator_is_enabled() local
150 if (drvdata->enb_gpio && !gpiod_get_value_cansleep(drvdata->enb_gpio)) in pwm_regulator_is_enabled()
153 return pwm_is_enabled(drvdata->pwm); in pwm_regulator_is_enabled()
158 struct pwm_regulator_data *drvdata = rdev_get_drvdata(rdev); in pwm_regulator_get_voltage() local
159 unsigned int min_uV_duty = drvdata->continuous.min_uV_dutycycle; in pwm_regulator_get_voltage()
160 unsigned int max_uV_duty = drvdata->continuous.max_uV_dutycycle; in pwm_regulator_get_voltage()
161 unsigned int duty_unit = drvdata->continuous.dutycycle_unit; in pwm_regulator_get_voltage()
169 pwm_get_state(drvdata->pwm, &pstate); in pwm_regulator_get_voltage()
195 struct pwm_regulator_data *drvdata = rdev_get_drvdata(rdev); in pwm_regulator_set_voltage() local
196 unsigned int min_uV_duty = drvdata->continuous.min_uV_dutycycle; in pwm_regulator_set_voltage()
197 unsigned int max_uV_duty = drvdata->continuous.max_uV_dutycycle; in pwm_regulator_set_voltage()
198 unsigned int duty_unit = drvdata->continuous.dutycycle_unit; in pwm_regulator_set_voltage()
207 pwm_init_state(drvdata->pwm, &pstate); in pwm_regulator_set_voltage()
230 ret = pwm_apply_state(drvdata->pwm, &pstate); in pwm_regulator_set_voltage()
265 struct pwm_regulator_data *drvdata) in pwm_regulator_init_table() argument
293 drvdata->state = -ENOTRECOVERABLE; in pwm_regulator_init_table()
294 drvdata->duty_cycle_table = duty_cycle_table; in pwm_regulator_init_table()
295 drvdata->desc.ops = &pwm_regulator_voltage_table_ops; in pwm_regulator_init_table()
296 drvdata->desc.n_voltages = length / sizeof(*duty_cycle_table); in pwm_regulator_init_table()
302 struct pwm_regulator_data *drvdata) in pwm_regulator_init_continuous() argument
307 drvdata->desc.ops = &pwm_regulator_voltage_continuous_ops; in pwm_regulator_init_continuous()
308 drvdata->desc.continuous_voltage_range = true; in pwm_regulator_init_continuous()
320 drvdata->continuous.dutycycle_unit = dutycycle_unit; in pwm_regulator_init_continuous()
321 drvdata->continuous.min_uV_dutycycle = dutycycle_range[0]; in pwm_regulator_init_continuous()
322 drvdata->continuous.max_uV_dutycycle = dutycycle_range[1]; in pwm_regulator_init_continuous()
330 struct pwm_regulator_data *drvdata; in pwm_regulator_probe() local
343 drvdata = devm_kzalloc(&pdev->dev, sizeof(*drvdata), GFP_KERNEL); in pwm_regulator_probe()
344 if (!drvdata) in pwm_regulator_probe()
347 memcpy(&drvdata->desc, &pwm_regulator_desc, sizeof(drvdata->desc)); in pwm_regulator_probe()
350 ret = pwm_regulator_init_table(pdev, drvdata); in pwm_regulator_probe()
352 ret = pwm_regulator_init_continuous(pdev, drvdata); in pwm_regulator_probe()
357 drvdata->init_uv = init_uv; in pwm_regulator_probe()
360 &drvdata->desc); in pwm_regulator_probe()
366 config.driver_data = drvdata; in pwm_regulator_probe()
369 drvdata->pwm = devm_pwm_get(&pdev->dev, NULL); in pwm_regulator_probe()
370 if (IS_ERR(drvdata->pwm)) { in pwm_regulator_probe()
371 ret = PTR_ERR(drvdata->pwm); in pwm_regulator_probe()
384 drvdata->enb_gpio = devm_gpiod_get_optional(&pdev->dev, "enable", in pwm_regulator_probe()
386 if (IS_ERR(drvdata->enb_gpio)) { in pwm_regulator_probe()
387 ret = PTR_ERR(drvdata->enb_gpio); in pwm_regulator_probe()
392 ret = pwm_adjust_config(drvdata->pwm); in pwm_regulator_probe()
397 &drvdata->desc, &config); in pwm_regulator_probe()
401 drvdata->desc.name, ret); in pwm_regulator_probe()