| /linux/drivers/input/joystick/iforce/ |
| H A D | iforce-ff.c | 207 struct ff_effect *effect) in need_magnitude_modifier() argument 209 if (effect->type != FF_CONSTANT) { in need_magnitude_modifier() 215 return old->u.constant.level != effect->u.constant.level; in need_magnitude_modifier() 223 struct ff_effect *effect) in need_envelope_modifier() argument 225 switch (effect->type) { in need_envelope_modifier() 227 if (old->u.constant.envelope.attack_length != effect->u.constant.envelope.attack_length in need_envelope_modifier() 228 || old->u.constant.envelope.attack_level != effect->u.constant.envelope.attack_level in need_envelope_modifier() 229 || old->u.constant.envelope.fade_length != effect->u.constant.envelope.fade_length in need_envelope_modifier() 230 || old->u.constant.envelope.fade_level != effect->u.constant.envelope.fade_level) in need_envelope_modifier() 235 if (old->u.periodic.envelope.attack_length != effect->u.periodic.envelope.attack_length in need_envelope_modifier() [all …]
|
| /linux/drivers/input/misc/ |
| H A D | cs40l50-vibra.c | 90 struct ff_effect *effect; member 130 struct cs40l50_effect *effect; in cs40l50_find_effect() local 132 list_for_each_entry(effect, effect_head, list) in cs40l50_find_effect() 133 if (effect->id == id) in cs40l50_find_effect() 134 return effect; in cs40l50_find_effect() 140 struct cs40l50_effect *effect) in cs40l50_effect_bank_set() argument 150 effect->type = CS40L50_WVFRM_BANK_OWT; in cs40l50_effect_bank_set() 152 effect->type = bank_type; in cs40l50_effect_bank_set() 158 struct cs40l50_effect *effect) in cs40l50_effect_index_set() argument 164 base_index = vib->dsp.banks[effect->type].base_index; in cs40l50_effect_index_set() [all …]
|
| H A D | da7280.c | 505 struct ff_effect *effect, in da7280_haptics_upload_effect() argument 518 switch (effect->type) { in da7280_haptics_upload_effect() 523 tmp = effect->u.constant.level * 254; in da7280_haptics_upload_effect() 528 haptics->gain = effect->u.constant.level <= 0 ? in da7280_haptics_upload_effect() 529 0 : effect->u.constant.level; in da7280_haptics_upload_effect() 534 if (effect->u.periodic.waveform != FF_CUSTOM) { in da7280_haptics_upload_effect() 547 if (effect->u.periodic.custom_len == DA7280_CUSTOM_DATA_LEN) in da7280_haptics_upload_effect() 550 if (effect->u.periodic.custom_len == DA7280_CUSTOM_GP_DATA_LEN) in da7280_haptics_upload_effect() 553 if (effect->u.periodic.custom_len < DA7280_CUSTOM_DATA_LEN || in da7280_haptics_upload_effect() 554 effect->u.periodic.custom_len > DA7280_SNP_MEM_SIZE) { in da7280_haptics_upload_effect() [all …]
|
| H A D | twl4030-vibra.c | 123 struct ff_effect *effect) in vibra_play() argument 127 info->speed = effect->u.rumble.strong_magnitude >> 8; in vibra_play() 129 info->speed = effect->u.rumble.weak_magnitude >> 9; in vibra_play() 130 info->direction = effect->direction < EFFECT_DIR_180_DEG ? 0 : 1; in vibra_play()
|
| H A D | drv2667.c | 229 struct ff_effect *effect) in drv2667_haptics_play() argument 233 if (effect->u.rumble.strong_magnitude > 0) in drv2667_haptics_play() 234 haptics->magnitude = effect->u.rumble.strong_magnitude; in drv2667_haptics_play() 235 else if (effect->u.rumble.weak_magnitude > 0) in drv2667_haptics_play() 236 haptics->magnitude = effect->u.rumble.weak_magnitude; in drv2667_haptics_play()
|
| H A D | gpio-vibra.c | 78 struct ff_effect *effect) in gpio_vibrator_play_effect() argument 83 level = effect->u.rumble.strong_magnitude; in gpio_vibrator_play_effect() 85 level = effect->u.rumble.weak_magnitude; in gpio_vibrator_play_effect()
|
| /linux/drivers/hid/usbhid/ |
| H A D | hid-pidff.c | 211 struct pidff_effect effect[PID_EFFECTS_MAX]; member 246 static int pidff_is_effect_conditional(struct ff_effect *effect) in pidff_is_effect_conditional() argument 248 return effect->type == FF_SPRING || in pidff_is_effect_conditional() 249 effect->type == FF_DAMPER || in pidff_is_effect_conditional() 250 effect->type == FF_INERTIA || in pidff_is_effect_conditional() 251 effect->type == FF_FRICTION; in pidff_is_effect_conditional() 263 static int pidff_effect_ff_to_pid(struct ff_effect *effect) in pidff_effect_ff_to_pid() argument 265 switch (effect->type) { in pidff_effect_ff_to_pid() 279 switch (effect->u.periodic.waveform) { in pidff_effect_ff_to_pid() 301 struct ff_effect *effect) in pidff_get_effect_type_id() argument [all …]
|
| /linux/Documentation/input/ |
| H A D | ff.rst | 115 int ioctl(int file_descriptor, int request, struct ff_effect *effect); 119 "effect" points to a structure describing the effect to upload. The effect is 121 The content of effect may be modified. In particular, its field "id" is set 123 some operations (removing an effect, controlling the playback). 125 allocate a new effect. 142 Removing an effect from the device 147 int ioctl(int fd, EVIOCRMFF, effect.id); 150 stops the effect if it was playing. 164 struct ff_effect effect; 171 play.code = effect.id; [all …]
|
| /linux/drivers/hid/ |
| H A D | hid-logitech-hidpp.c | 2554 static int hidpp_ff_upload_effect(struct input_dev *dev, struct ff_effect *effect, struct ff_effect… in hidpp_ff_upload_effect() argument 2562 params[2] = effect->replay.length >> 8; in hidpp_ff_upload_effect() 2563 params[3] = effect->replay.length & 255; in hidpp_ff_upload_effect() 2564 params[4] = effect->replay.delay >> 8; in hidpp_ff_upload_effect() 2565 params[5] = effect->replay.delay & 255; in hidpp_ff_upload_effect() 2567 switch (effect->type) { in hidpp_ff_upload_effect() 2569 force = (effect->u.constant.level * fixp_sin16((effect->direction * 360) >> 16)) >> 15; in hidpp_ff_upload_effect() 2573 params[8] = effect->u.constant.envelope.attack_level >> 7; in hidpp_ff_upload_effect() 2574 params[9] = effect->u.constant.envelope.attack_length >> 8; in hidpp_ff_upload_effect() 2575 params[10] = effect->u.constant.envelope.attack_length & 255; in hidpp_ff_upload_effect() [all …]
|
| H A D | hid-lgff.c | 57 static int hid_lgff_play(struct input_dev *dev, void *data, struct ff_effect *effect) in hid_lgff_play() argument 67 switch (effect->type) { in hid_lgff_play() 69 x = effect->u.ramp.start_level + 0x7f; /* 0x7f is center */ in hid_lgff_play() 70 y = effect->u.ramp.end_level + 0x7f; in hid_lgff_play() 82 right = effect->u.rumble.strong_magnitude; in hid_lgff_play() 83 left = effect->u.rumble.weak_magnitude; in hid_lgff_play()
|
| H A D | hid-tmff.c | 74 struct ff_effect *effect) in tmff_play() argument 82 switch (effect->type) { in tmff_play() 84 x = tmff_scale_s8(effect->u.ramp.start_level, in tmff_play() 87 y = tmff_scale_s8(effect->u.ramp.end_level, in tmff_play() 98 left = tmff_scale_u16(effect->u.rumble.weak_magnitude, in tmff_play() 101 right = tmff_scale_u16(effect->u.rumble.strong_magnitude, in tmff_play()
|
| H A D | hid-lg3ff.c | 45 struct ff_effect *effect) in hid_lg3ff_play() argument 59 switch (effect->type) { in hid_lg3ff_play() 65 x = effect->u.ramp.start_level; in hid_lg3ff_play() 66 y = effect->u.ramp.end_level; in hid_lg3ff_play()
|
| H A D | hid-lg2ff.c | 23 struct ff_effect *effect) in play_effect() argument 29 strong = effect->u.rumble.strong_magnitude; in play_effect() 30 weak = effect->u.rumble.weak_magnitude; in play_effect()
|
| H A D | hid-megaworld.c | 25 struct ff_effect *effect) in mwctrl_play() argument 30 *mwctrl->strong = effect->u.rumble.strong_magnitude >> 8; in mwctrl_play() 31 *mwctrl->weak = effect->u.rumble.weak_magnitude >> 8; in mwctrl_play()
|
| H A D | hid-zpff.c | 26 struct ff_effect *effect) in zpff_play() argument 38 left = effect->u.rumble.strong_magnitude; in zpff_play() 39 right = effect->u.rumble.weak_magnitude; in zpff_play()
|
| H A D | hid-betopff.c | 38 struct ff_effect *effect) in hid_betopff_play() argument 44 left = effect->u.rumble.strong_magnitude; in hid_betopff_play() 45 right = effect->u.rumble.weak_magnitude; in hid_betopff_play()
|
| H A D | hid-holtekff.c | 91 struct ff_effect *effect) in holtekff_play() argument 100 left = effect->u.rumble.strong_magnitude; in holtekff_play() 101 right = effect->u.rumble.weak_magnitude; in holtekff_play()
|
| H A D | hid-emsff.c | 23 struct ff_effect *effect) in emsff_play() argument 29 weak = effect->u.rumble.weak_magnitude; in emsff_play() 30 strong = effect->u.rumble.strong_magnitude; in emsff_play()
|
| H A D | hid-mf.c | 34 static int mf_play(struct input_dev *dev, void *data, struct ff_effect *effect) in mf_play() argument 40 strong = effect->u.rumble.strong_magnitude; in mf_play() 41 weak = effect->u.rumble.weak_magnitude; in mf_play()
|
| H A D | hid-sjoy.c | 30 struct ff_effect *effect) in hid_sjoyff_play() argument 36 left = effect->u.rumble.strong_magnitude; in hid_sjoyff_play() 37 right = effect->u.rumble.weak_magnitude; in hid_sjoyff_play()
|
| H A D | hid-google-stadiaff.c | 43 struct ff_effect *effect) in stadiaff_play() argument 51 stadiaff->strong_magnitude = effect->u.rumble.strong_magnitude; in stadiaff_play() 52 stadiaff->weak_magnitude = effect->u.rumble.weak_magnitude; in stadiaff_play()
|
| H A D | hid-axff.c | 31 static int axff_play(struct input_dev *dev, void *data, struct ff_effect *effect) in axff_play() argument 40 left = effect->u.rumble.strong_magnitude; in axff_play() 41 right = effect->u.rumble.weak_magnitude; in axff_play()
|
| H A D | hid-gaff.c | 30 struct ff_effect *effect) in hid_gaff_play() argument 36 left = effect->u.rumble.strong_magnitude; in hid_gaff_play() 37 right = effect->u.rumble.weak_magnitude; in hid_gaff_play()
|
| /linux/Documentation/input/devices/ |
| H A D | iforce-protocol.rst | 82 01 Bit 8 is set if the effect is playing. Bits 0 to 7 are the effect id. 89 Force effect 111 Bits 4-7: Val 2 = effect along one axis. Byte 05 indicates direction 116 Val x+1 = Button x triggers the effect 119 03-04 Duration of effect (little endian encoding, in ms) 121 05 Direction of effect, if applicable. Else, see 02 for value to assign. 133 0c-0d Delay before execution of effect (little endian encoding, in ms) 283 Query effect 290 Send effect type. 367 3. Play the effect, and watch what happens on the spy screen. [all …]
|
| /linux/drivers/media/platform/samsung/exynos4-is/ |
| H A D | fimc-core.c | 460 struct fimc_effect *effect = &ctx->effect; in fimc_set_color_effect() local 464 effect->type = FIMC_REG_CIIMGEFF_FIN_BYPASS; in fimc_set_color_effect() 467 effect->type = FIMC_REG_CIIMGEFF_FIN_ARBITRARY; in fimc_set_color_effect() 468 effect->pat_cb = 128; in fimc_set_color_effect() 469 effect->pat_cr = 128; in fimc_set_color_effect() 472 effect->type = FIMC_REG_CIIMGEFF_FIN_ARBITRARY; in fimc_set_color_effect() 473 effect->pat_cb = 115; in fimc_set_color_effect() 474 effect->pat_cr = 145; in fimc_set_color_effect() 477 effect->type = FIMC_REG_CIIMGEFF_FIN_NEGATIVE; in fimc_set_color_effect() 480 effect->type = FIMC_REG_CIIMGEFF_FIN_EMBOSSING; in fimc_set_color_effect() [all …]
|