/linux/drivers/input/misc/ |
H A D | da7280.c | 283 static int da7280_haptic_mem_update(struct da7280_haptic *haptics) in da7280_haptic_mem_update() argument 289 error = regmap_read(haptics->regmap, DA7280_IRQ_STATUS1, &val); in da7280_haptic_mem_update() 293 dev_warn(haptics->dev, in da7280_haptic_mem_update() 300 error = regmap_read(haptics->regmap, DA7280_MEM_CTL2, &val); in da7280_haptic_mem_update() 304 dev_warn(haptics->dev, "Please unlock the bit first\n"); in da7280_haptic_mem_update() 309 error = regmap_update_bits(haptics->regmap, in da7280_haptic_mem_update() 316 error = regmap_read(haptics->regmap, DA7280_MEM_CTL1, &val); in da7280_haptic_mem_update() 320 return regmap_bulk_write(haptics->regmap, val, haptics->snp_mem, in da7280_haptic_mem_update() 324 static int da7280_haptic_set_pwm(struct da7280_haptic *haptics, bool enabled) in da7280_haptic_set_pwm() argument 330 if (!haptics->gain && enabled) { in da7280_haptic_set_pwm() [all …]
|
H A D | drv2667.c | 129 static int drv2667_set_waveform_freq(struct drv2667_data *haptics) in drv2667_set_waveform_freq() argument 138 freq = (haptics->frequency * 1000) / 78125; in drv2667_set_waveform_freq() 140 dev_err(&haptics->client->dev, in drv2667_set_waveform_freq() 145 error = regmap_read(haptics->regmap, DRV2667_PAGE, &read_buf); in drv2667_set_waveform_freq() 147 dev_err(&haptics->client->dev, in drv2667_set_waveform_freq() 153 haptics->page != read_buf) { in drv2667_set_waveform_freq() 154 error = regmap_write(haptics->regmap, in drv2667_set_waveform_freq() 155 DRV2667_PAGE, haptics->page); in drv2667_set_waveform_freq() 157 dev_err(&haptics->client->dev, in drv2667_set_waveform_freq() 163 error = regmap_write(haptics->regmap, DRV2667_RAM_FREQ, freq); in drv2667_set_waveform_freq() [all …]
|
H A D | drv260x.c | 212 struct drv260x_data *haptics = container_of(work, struct drv260x_data, work); in drv260x_worker() local 215 gpiod_set_value(haptics->enable_gpio, 1); in drv260x_worker() 219 error = regmap_write(haptics->regmap, in drv260x_worker() 222 dev_err(&haptics->client->dev, in drv260x_worker() 225 error = regmap_write(haptics->regmap, in drv260x_worker() 226 DRV260X_RT_PB_IN, haptics->magnitude); in drv260x_worker() 228 dev_err(&haptics->client->dev, in drv260x_worker() 236 struct drv260x_data *haptics = input_get_drvdata(input); in drv260x_haptics_play() local 238 haptics->mode = DRV260X_LRA_NO_CAL_MODE; in drv260x_haptics_play() 242 haptics->magnitude = effect->u.rumble.strong_magnitude >> 8; in drv260x_haptics_play() [all …]
|
H A D | drv2665.c | 78 struct drv2665_data *haptics = in drv2665_worker() local 83 error = regmap_read(haptics->regmap, DRV2665_STATUS, &read_buf); in drv2665_worker() 85 dev_err(&haptics->client->dev, in drv2665_worker() 91 error = regmap_bulk_write(haptics->regmap, in drv2665_worker() 96 dev_err(&haptics->client->dev, in drv2665_worker() 106 struct drv2665_data *haptics = input_get_drvdata(input); in drv2665_haptics_play() local 108 schedule_work(&haptics->work); in drv2665_haptics_play() 115 struct drv2665_data *haptics = input_get_drvdata(input); in drv2665_close() local 118 cancel_work_sync(&haptics->work); in drv2665_close() 120 error = regmap_update_bits(haptics->regmap, DRV2665_CTRL_2, in drv2665_close() [all …]
|
H A D | arizona-haptics.c | 33 struct arizona_haptics *haptics = container_of(work, in arizona_haptics_work() local 36 struct arizona *arizona = haptics->arizona; in arizona_haptics_work() 41 if (!haptics->arizona->dapm) { in arizona_haptics_work() 46 if (haptics->intensity) { in arizona_haptics_work() 50 haptics->intensity); in arizona_haptics_work() 111 struct arizona_haptics *haptics = input_get_drvdata(input); in arizona_haptics_play() local 112 struct arizona *arizona = haptics->arizona; in arizona_haptics_play() 122 haptics->intensity = in arizona_haptics_play() 125 haptics->intensity += 0x7f; in arizona_haptics_play() 127 haptics->intensity = in arizona_haptics_play() [all …]
|
H A D | Kconfig | 95 tristate "Arizona haptics support" 99 Say Y to enable support for the haptics module in Arizona CODECs. 102 module will be called arizona-haptics. 468 tristate "Regulator haptics support" 661 tristate "Dialog Semiconductor DA7280 haptics support" 665 Say Y to enable support for the Dialog DA7280 haptics driver. 666 The haptics can be controlled by PWM or GPIO 878 tristate "TI DRV260X haptics support" 884 Say Y to enable support for the TI DRV260X haptics driver. 887 module will be called drv260x-haptics. [all …]
|
H A D | Makefile | 20 obj-$(CONFIG_INPUT_ARIZONA_HAPTICS) += arizona-haptics.o
|
/linux/Documentation/devicetree/bindings/input/ |
H A D | dlg,da7280.txt | 81 haptics: da7280-haptics@4a {
|
/linux/arch/arm/boot/dts/allwinner/ |
H A D | sun4i-a10-dserve-dsrv9703c.dts | 72 haptics {
|
/linux/arch/arm64/boot/dts/qcom/ |
H A D | msm8996-xiaomi-gemini.dts | 39 haptics: drv2604@5a { label
|
H A D | sm8550-sony-xperia-yodo-pdx234.dts | 552 /* Cirrus Logic CS40L25A boosted haptics driver @ 40 */
|
H A D | sm8350-sony-xperia-sagami.dtsi | 552 /* Cirrus Logic CS40L25A boosted haptics driver @ 40 */
|
H A D | qcm6490-shift-otter.dts | 555 /* Ti drv2624 haptics @ 5a */
|
/linux/arch/arm/boot/dts/samsung/ |
H A D | exynos3250-monk.dts | 114 haptics {
|
H A D | exynos3250-rinato.dts | 116 haptics {
|
/linux/drivers/hid/ |
H A D | Kconfig | 835 NVIDIA SHIELD accessories with haptics capabilities.
|