Home
last modified time | relevance | path

Searched full:haptic (Results 1 – 25 of 53) sorted by relevance

123

/openbmc/linux/drivers/input/misc/
H A Dmax77693-haptic.c3 * MAXIM MAX77693/MAX77843 Haptic device driver
67 static int max77693_haptic_set_duty_cycle(struct max77693_haptic *haptic) in max77693_haptic_set_duty_cycle() argument
73 pwm_get_args(haptic->pwm_dev, &pargs); in max77693_haptic_set_duty_cycle()
74 delta = (pargs.period + haptic->pwm_duty) / 2; in max77693_haptic_set_duty_cycle()
75 error = pwm_config(haptic->pwm_dev, delta, pargs.period); in max77693_haptic_set_duty_cycle()
77 dev_err(haptic->dev, "failed to configure pwm: %d\n", error); in max77693_haptic_set_duty_cycle()
84 static int max77843_haptic_bias(struct max77693_haptic *haptic, bool on) in max77843_haptic_bias() argument
88 if (haptic->dev_type != TYPE_MAX77843) in max77843_haptic_bias()
91 error = regmap_update_bits(haptic->regmap_haptic, in max77843_haptic_bias()
96 dev_err(haptic->dev, "failed to %s bias: %d\n", in max77843_haptic_bias()
[all …]
H A Dregulator-haptic.c3 * Regulator haptic driver
13 #include <linux/platform_data/regulator-haptic.h>
36 static int regulator_haptic_toggle(struct regulator_haptic *haptic, bool on) in regulator_haptic_toggle() argument
40 if (haptic->active != on) { in regulator_haptic_toggle()
42 error = on ? regulator_enable(haptic->regulator) : in regulator_haptic_toggle()
43 regulator_disable(haptic->regulator); in regulator_haptic_toggle()
45 dev_err(haptic->dev, in regulator_haptic_toggle()
51 haptic->active = on; in regulator_haptic_toggle()
57 static int regulator_haptic_set_voltage(struct regulator_haptic *haptic, in regulator_haptic_set_voltage() argument
64 volt_mag_multi = (u64)(haptic->max_volt - haptic->min_volt) * magnitude; in regulator_haptic_set_voltage()
[all …]
H A Dmax8997_haptic.c3 * MAX8997-haptic controller driver
21 /* Haptic configuration 2 register */
26 /* Haptic driver configuration register */
248 dev_err(&pdev->dev, "no haptic platform data\n"); in max8997_haptic_probe()
263 chip->client = iodev->haptic; in max8997_haptic_probe()
285 "unable to request PWM for haptic, error: %d\n", in max8997_haptic_probe()
313 input_dev->name = "max8997-haptic"; in max8997_haptic_probe()
383 { "max8997-haptic", 0 },
390 .name = "max8997-haptic",
H A DKconfig226 tristate "MAXIM MAX77693/MAX77843 haptic controller support"
230 This option enables support for the haptic controller on
234 module will be called max77693-haptic.
247 tristate "MAXIM MAX8997 haptic controller support"
251 This option enables device driver support for the haptic controller
256 module will be called max8997-haptic.
455 This option enables device driver support for the haptic controlled
460 module will be called regulator-haptic.
H A DMakefile53 obj-$(CONFIG_INPUT_MAX77693_HAPTIC) += max77693-haptic.o
71 obj-$(CONFIG_INPUT_REGULATOR_HAPTIC) += regulator-haptic.o
H A Dda7280.c3 * DA7280 Haptic device driver
289 /* The patterns should be updated when haptic is not working */ in da7280_haptic_mem_update()
295 "Warning! Please check HAPTIC status.\n"); in da7280_haptic_mem_update()
515 /* The effect should be uploaded when haptic is not working */ in da7280_haptics_upload_effect()
926 * Stop first if haptic is active, otherwise, the fault may in da7280_irq_handler()
1214 /* Initialize input device for haptic device */ in da7280_probe()
1221 input_dev->name = "da7280-haptic"; in da7280_probe()
/openbmc/linux/Documentation/devicetree/bindings/input/
H A Dregulator-haptic.yaml4 $id: http://devicetree.org/schemas/input/regulator-haptic.yaml#
7 title: Regulator Haptic
14 const: regulator-haptic
16 haptic-supply:
18 Power supply to the haptic motor
22 The maximum voltage value supplied to the haptic motor
26 The minimum voltage value supplied to the haptic motor
30 - haptic-supply
39 compatible = "regulator-haptic";
40 haptic-supply = <&motor_regulator>;
H A Ddlg,da7280.txt15 - dlg,const-op-mode: Haptic operation mode for FF_CONSTANT.
19 - dlg,periodic-op-mode: Haptic operation mode for FF_PERIODIC.
61 Haptic will work by this edge option in case of ETWM mode.
/openbmc/linux/samples/hid/
H A Dhid_surface_dial.c5 * and depending on the chosen resolution enable or not the haptic feedback:
7 * without haptic feedback
8 * - any other resolution will report N "ticks" in a full rotation with haptic
11 * A good default for low resolution haptic scrolling is 72 (1 "tick" every 5
58 "and depending on the chosen resolution enable or not the haptic feedback:\n" in usage()
60 " without haptic feedback\n" in usage()
61 "- any other resolution will report N 'ticks' in a full rotation with haptic\n" in usage()
64 "A good default for low resolution haptic scrolling is 72 (1 'tick' every 5\n" in usage()
131 fprintf(stderr, "can't locate haptic prog: %m\n"); in set_haptic()
137 fprintf(stderr, "can't set haptic configuration to hid device %d: %m (err: %d)\n", in set_haptic()
H A Dhid_surface_dial.bpf.c84 haptic_data[4] = 3; /* haptic Auto Trigger */ in set_haptic()
94 bpf_printk("set haptic ret value: %d -> %d", ret, haptic_data[4]); in set_haptic()
/openbmc/linux/Documentation/devicetree/bindings/mfd/
H A Dmaxim,max77843.yaml17 includes voltage current regulators, charger, fuel-gauge, haptic motor driver
38 const: maxim,max77843-haptic
40 haptic-supply:
41 description: Power supply to the haptic motor
48 - haptic-supply
140 compatible = "maxim,max77843-haptic";
141 haptic-supply = <&ldo38_reg>;
H A Dmaxim,max77693.yaml18 includes voltage current regulators, charger, LED/flash, haptic motor driver
70 const: maxim,max77693-haptic
72 haptic-supply:
73 description: Power supply to the haptic motor
80 - haptic-supply
159 compatible = "maxim,max77693-haptic";
160 haptic-supply = <&ldo26_reg>;
/openbmc/linux/include/linux/platform_data/
H A Dregulator-haptic.h3 * Regulator Haptic Platform Data
16 * @max_volt: maximum voltage value supplied to the haptic motor.
18 * @min_volt: minimum voltage value supplied to the haptic motor.
/openbmc/linux/arch/arm64/boot/dts/qcom/
H A Dmsm8916-samsung-e2015-common.dtsi6 haptic {
7 compatible = "regulator-haptic";
8 haptic-supply = <&reg_motor_vdd>;
/openbmc/linux/drivers/mfd/
H A Dmax8997.c33 { .name = "max8997-haptic", },
193 max8997->haptic = i2c_new_dummy_device(i2c->adapter, I2C_ADDR_HAPTIC); in max8997_i2c_probe()
194 if (IS_ERR(max8997->haptic)) { in max8997_i2c_probe()
195 dev_err(max8997->dev, "Failed to allocate I2C device for Haptic\n"); in max8997_i2c_probe()
196 ret = PTR_ERR(max8997->haptic); in max8997_i2c_probe()
199 i2c_set_clientdata(max8997->haptic, max8997); in max8997_i2c_probe()
235 i2c_unregister_device(max8997->haptic); in max8997_i2c_probe()
H A Dmax77693.c42 .name = "max77693-haptic",
43 .of_compatible = "maxim,max77693-haptic",
191 dev_err(max77693->dev, "Failed to allocate I2C device for Haptic\n"); in max77693_i2c_probe()
202 "failed to initialize haptic register map: %d\n", ret); in max77693_i2c_probe()
H A Dmax77843.c33 .name = "max77843-haptic",
34 .of_compatible = "maxim,max77843-haptic",
/openbmc/linux/Documentation/hid/
H A Dhid-bpf.rst76 example, the Microsoft Surface Dial is a pushbutton with haptic feedback that
80 events into wheel events. Also, the userspace program can set/unset the haptic
82 screen we likely need to have a haptic click every 15 degrees. But when
329 Let's imagine we have a new tablet device that has some haptic capabilities
336 haptic feature of the device itself.
449 To be able to change the haptic feedback from the tablet, the userspace program
515 Now our userspace program is aware of the haptic state and can control it. The
/openbmc/linux/include/linux/mfd/
H A Dmax8997.h10 * MAX8997 has PMIC, MUIC, HAPTIC, RTC, FLASH, and Fuel Gauge devices.
199 /* ---- HAPTIC ---- */
H A Dmax77693-common.h26 struct i2c_client *i2c_haptic; /* MAX77693: 0x90 , Haptic */
H A Dmax77693.h12 * MAX77693 has PMIC, Charger, Flash LED, Haptic, MUIC devices.
/openbmc/linux/arch/arm/boot/dts/allwinner/
H A Dsun4i-a10-dserve-dsrv9703c.dts73 compatible = "regulator-haptic";
74 haptic-supply = <&reg_motor>;
/openbmc/u-boot/arch/arm/dts/
H A Dsun4i-a10-dserve-dsrv9703c.dts72 compatible = "regulator-haptic";
73 haptic-supply = <&reg_motor>;
/openbmc/linux/sound/soc/codecs/
H A Dlm49453.c587 /* All end points HP,EP, LS, Lineout and Haptic */
628 SND_SOC_DAPM_OUT_DRV("Haptic Left Switch",
630 SND_SOC_DAPM_OUT_DRV("Haptic Right Switch",
638 SND_SOC_DAPM_DAC("HAL DAC", "Haptic", SND_SOC_NOPM, 0, 0),
639 SND_SOC_DAPM_DAC("HAR DAC", "Haptic", SND_SOC_NOPM, 0, 0),
877 /* Haptic map */
924 { "HAOUTL", "Haptic Left Switch", "HAL DAC" },
925 { "HAOUTR", "Haptic Right Switch", "HAR DAC" },
1358 .name = "LM49453 Haptic",
1360 .stream_name = "Haptic",
/openbmc/linux/Documentation/devicetree/bindings/sound/
H A Drt5645.txt60 * Haptic Generator

123