Home
last modified time | relevance | path

Searched refs:iqs62x (Results 1 – 10 of 10) sorted by relevance

/kernel/linux/linux-5.10/drivers/mfd/
Diqs62x.c110 static int iqs62x_dev_init(struct iqs62x_core *iqs62x) in iqs62x_dev_init() argument
117 list_for_each_entry(fw_blk, &iqs62x->fw_blk_head, list) { in iqs62x_dev_init()
119 ret = regmap_update_bits(iqs62x->regmap, fw_blk->addr, in iqs62x_dev_init()
122 ret = regmap_raw_write(iqs62x->regmap, fw_blk->addr, in iqs62x_dev_init()
128 switch (iqs62x->dev_desc->prod_num) { in iqs62x_dev_init()
131 ret = regmap_read(iqs62x->regmap, in iqs62x_dev_init()
132 iqs62x->dev_desc->prox_settings, &val); in iqs62x_dev_init()
137 iqs62x->ui_sel = IQS62X_UI_SAR1; in iqs62x_dev_init()
142 ret = regmap_write(iqs62x->regmap, IQS620_GLBL_EVENT_MASK, in iqs62x_dev_init()
144 iqs62x->dev_desc->prox_mask | in iqs62x_dev_init()
[all …]
DMakefile233 obj-$(CONFIG_MFD_IQS62X) += iqs62x.o
DKconfig707 be called iqs62x.
/kernel/linux/linux-5.10/drivers/iio/position/
Diqs624-pos.c25 struct iqs62x_core *iqs62x; member
33 static int iqs624_pos_angle_en(struct iqs62x_core *iqs62x, bool angle_en) in iqs624_pos_angle_en() argument
43 if (iqs62x->dev_desc->prod_num == IQS625_PROD_NUM) in iqs624_pos_angle_en()
46 return regmap_update_bits(iqs62x->regmap, IQS624_HALL_UI, event_mask, in iqs624_pos_angle_en()
55 struct iqs62x_core *iqs62x; in iqs624_pos_notifier() local
66 iqs62x = iqs624_pos->iqs62x; in iqs624_pos_notifier()
67 if (iqs62x->dev_desc->prod_num == IQS625_PROD_NUM) in iqs624_pos_notifier()
73 ret = iqs624_pos_angle_en(iqs62x, iqs624_pos->angle_en); in iqs624_pos_notifier()
105 ret = blocking_notifier_chain_unregister(&iqs624_pos->iqs62x->nh, in iqs624_pos_notifier_unregister()
112 static int iqs624_pos_angle_get(struct iqs62x_core *iqs62x, unsigned int *val) in iqs624_pos_angle_get() argument
[all …]
/kernel/linux/linux-5.10/drivers/iio/light/
Diqs621-als.c38 struct iqs62x_core *iqs62x; member
55 struct iqs62x_core *iqs62x = iqs621_als->iqs62x; in iqs621_als_init() local
61 ret = regmap_write(iqs62x->regmap, IQS622_IR_THRESH_TOUCH, in iqs621_als_init()
66 ret = regmap_write(iqs62x->regmap, IQS622_IR_THRESH_PROX, in iqs621_als_init()
71 ret = regmap_write(iqs62x->regmap, IQS621_ALS_THRESH_LIGHT, in iqs621_als_init()
76 ret = regmap_write(iqs62x->regmap, IQS621_ALS_THRESH_DARK, in iqs621_als_init()
84 event_mask |= iqs62x->dev_desc->als_mask; in iqs621_als_init()
87 event_mask |= iqs62x->dev_desc->ir_mask; in iqs621_als_init()
89 return regmap_update_bits(iqs62x->regmap, IQS620_GLBL_EVENT_MASK, in iqs621_als_init()
198 ret = blocking_notifier_chain_unregister(&iqs621_als->iqs62x->nh, in iqs621_als_notifier_unregister()
[all …]
/kernel/linux/linux-5.10/drivers/pwm/
Dpwm-iqs620a.c36 struct iqs62x_core *iqs62x; member
48 struct iqs62x_core *iqs62x; in iqs620_pwm_apply() local
60 iqs62x = iqs620_pwm->iqs62x; in iqs620_pwm_apply()
80 ret = regmap_update_bits(iqs62x->regmap, IQS620_PWR_SETTINGS, in iqs620_pwm_apply()
89 ret = regmap_write(iqs62x->regmap, IQS620_PWM_DUTY_CYCLE, in iqs620_pwm_apply()
98 ret = regmap_update_bits(iqs62x->regmap, IQS620_PWR_SETTINGS, in iqs620_pwm_apply()
141 struct iqs62x_core *iqs62x; in iqs620_pwm_notifier() local
149 iqs62x = iqs620_pwm->iqs62x; in iqs620_pwm_notifier()
158 ret = regmap_write(iqs62x->regmap, IQS620_PWM_DUTY_CYCLE, in iqs620_pwm_notifier()
163 ret = regmap_update_bits(iqs62x->regmap, IQS620_PWR_SETTINGS, in iqs620_pwm_notifier()
[all …]
/kernel/linux/linux-5.10/drivers/input/keyboard/
Diqs62x-keys.c36 struct iqs62x_core *iqs62x; member
100 struct iqs62x_core *iqs62x = iqs62x_keys->iqs62x; in iqs62x_keys_init() local
106 switch (iqs62x->dev_desc->prod_num) { in iqs62x_keys_init()
121 event_mask |= iqs62x->dev_desc->prox_mask; in iqs62x_keys_init()
123 event_mask |= (iqs62x->dev_desc->hyst_mask | in iqs62x_keys_init()
124 iqs62x->dev_desc->sar_mask); in iqs62x_keys_init()
127 ret = regmap_read(iqs62x->regmap, iqs62x->dev_desc->hall_flags, in iqs62x_keys_init()
145 event_mask |= iqs62x->dev_desc->hall_mask; in iqs62x_keys_init()
169 ret = regmap_read(iqs62x->regmap, iqs62x->dev_desc->interval, in iqs62x_keys_init()
181 return regmap_update_bits(iqs62x->regmap, event_reg, event_mask, 0); in iqs62x_keys_init()
[all …]
DMakefile31 obj-$(CONFIG_KEYBOARD_IQS62X) += iqs62x-keys.o
DKconfig671 be called iqs62x-keys.
/kernel/linux/linux-5.10/drivers/iio/temperature/
Diqs620at-temp.c25 struct iqs62x_core *iqs62x = iio_device_get_drvdata(indio_dev); in iqs620_temp_read_raw() local
31 ret = regmap_raw_read(iqs62x->regmap, IQS620_TEMP_UI_OUT, in iqs620_temp_read_raw()
67 struct iqs62x_core *iqs62x = dev_get_drvdata(pdev->dev.parent); in iqs620_temp_probe() local
74 iio_device_set_drvdata(indio_dev, iqs62x); in iqs620_temp_probe()
79 indio_dev->name = iqs62x->dev_desc->dev_name; in iqs620_temp_probe()