Lines Matching refs:dev

30 static int check_channel(struct udevice *dev, int value, bool number_or_mask,  in check_channel()  argument
33 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in check_channel()
45 __FILE__, caller_function, dev->name); in check_channel()
51 static int adc_supply_enable(struct udevice *dev) in adc_supply_enable() argument
53 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_supply_enable()
68 pr_err("%s: can't enable %s-supply!", dev->name, supply_type); in adc_supply_enable()
73 static inline int adc_supply_enable(struct udevice *dev) { return 0; } in adc_supply_enable() argument
76 int adc_data_mask(struct udevice *dev, unsigned int *data_mask) in adc_data_mask() argument
78 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_data_mask()
87 int adc_stop(struct udevice *dev) in adc_stop() argument
89 const struct adc_ops *ops = dev_get_driver_ops(dev); in adc_stop()
94 return ops->stop(dev); in adc_stop()
97 int adc_start_channel(struct udevice *dev, int channel) in adc_start_channel() argument
99 const struct adc_ops *ops = dev_get_driver_ops(dev); in adc_start_channel()
105 ret = check_channel(dev, channel, CHECK_NUMBER, __func__); in adc_start_channel()
109 ret = adc_supply_enable(dev); in adc_start_channel()
113 return ops->start_channel(dev, channel); in adc_start_channel()
116 int adc_start_channels(struct udevice *dev, unsigned int channel_mask) in adc_start_channels() argument
118 const struct adc_ops *ops = dev_get_driver_ops(dev); in adc_start_channels()
124 ret = check_channel(dev, channel_mask, CHECK_MASK, __func__); in adc_start_channels()
128 ret = adc_supply_enable(dev); in adc_start_channels()
132 return ops->start_channels(dev, channel_mask); in adc_start_channels()
135 int adc_channel_data(struct udevice *dev, int channel, unsigned int *data) in adc_channel_data() argument
137 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_channel_data()
138 const struct adc_ops *ops = dev_get_driver_ops(dev); in adc_channel_data()
145 ret = check_channel(dev, channel, CHECK_NUMBER, __func__); in adc_channel_data()
150 ret = ops->channel_data(dev, channel, data); in adc_channel_data()
161 int adc_channels_data(struct udevice *dev, unsigned int channel_mask, in adc_channels_data() argument
164 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_channels_data()
166 const struct adc_ops *ops = dev_get_driver_ops(dev); in adc_channels_data()
172 ret = check_channel(dev, channel_mask, CHECK_MASK, __func__); in adc_channels_data()
177 ret = ops->channels_data(dev, channel_mask, channels); in adc_channels_data()
190 struct udevice *dev; in adc_channel_single_shot() local
193 ret = uclass_get_device_by_name(UCLASS_ADC, name, &dev); in adc_channel_single_shot()
197 ret = adc_start_channel(dev, channel); in adc_channel_single_shot()
201 ret = adc_channel_data(dev, channel, data); in adc_channel_single_shot()
208 static int _adc_channels_single_shot(struct udevice *dev, in _adc_channels_single_shot() argument
220 ret = adc_start_channel(dev, channel); in _adc_channels_single_shot()
224 ret = adc_channel_data(dev, channel, &data); in _adc_channels_single_shot()
239 struct udevice *dev; in adc_channels_single_shot() local
242 ret = uclass_get_device_by_name(UCLASS_ADC, name, &dev); in adc_channels_single_shot()
246 ret = adc_start_channels(dev, channel_mask); in adc_channels_single_shot()
250 ret = adc_channels_data(dev, channel_mask, channels); in adc_channels_single_shot()
260 return _adc_channels_single_shot(dev, channel_mask, channels); in adc_channels_single_shot()
264 static int adc_vdd_platdata_update(struct udevice *dev) in adc_vdd_platdata_update() argument
266 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_vdd_platdata_update()
275 ret = device_get_supply_regulator(dev, "vdd-supply", in adc_vdd_platdata_update()
289 static inline int adc_vdd_platdata_update(struct udevice *dev) { return 0; } in adc_vdd_platdata_update() argument
293 static int adc_vss_platdata_update(struct udevice *dev) in adc_vss_platdata_update() argument
295 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_vss_platdata_update()
298 ret = device_get_supply_regulator(dev, "vss-supply", in adc_vss_platdata_update()
312 static inline int adc_vss_platdata_update(struct udevice *dev) { return 0; } in adc_vss_platdata_update() argument
315 int adc_vdd_value(struct udevice *dev, int *uV) in adc_vdd_value() argument
317 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_vdd_value()
324 ret = adc_vdd_platdata_update(dev); in adc_vdd_value()
336 int adc_vss_value(struct udevice *dev, int *uV) in adc_vss_value() argument
338 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_vss_value()
345 ret = adc_vss_platdata_update(dev); in adc_vss_value()
357 static int adc_vdd_platdata_set(struct udevice *dev) in adc_vdd_platdata_set() argument
359 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_vdd_platdata_set()
364 uc_pdata->vdd_polarity_negative = dev_read_bool(dev, prop); in adc_vdd_platdata_set()
366 ret = adc_vdd_platdata_update(dev); in adc_vdd_platdata_set()
372 uc_pdata->vdd_microvolts = dev_read_u32_default(dev, prop, -ENODATA); in adc_vdd_platdata_set()
377 static int adc_vss_platdata_set(struct udevice *dev) in adc_vss_platdata_set() argument
379 struct adc_uclass_platdata *uc_pdata = dev_get_uclass_platdata(dev); in adc_vss_platdata_set()
384 uc_pdata->vss_polarity_negative = dev_read_bool(dev, prop); in adc_vss_platdata_set()
386 ret = adc_vss_platdata_update(dev); in adc_vss_platdata_set()
392 uc_pdata->vss_microvolts = dev_read_u32_default(dev, prop, -ENODATA); in adc_vss_platdata_set()
397 static int adc_pre_probe(struct udevice *dev) in adc_pre_probe() argument
402 ret = adc_vdd_platdata_set(dev); in adc_pre_probe()
404 pr_err("%s: Can't update Vdd. Error: %d", dev->name, ret); in adc_pre_probe()
407 ret = adc_vss_platdata_set(dev); in adc_pre_probe()
409 pr_err("%s: Can't update Vss. Error: %d", dev->name, ret); in adc_pre_probe()