| /linux-6.15/drivers/input/joystick/iforce/ |
| H A D | iforce-ff.c | 225 switch (effect->type) { in need_envelope_modifier() 348 effect->u.periodic.magnitude, effect->u.periodic.offset, in iforce_upload_periodic() 349 effect->u.periodic.period, effect->u.periodic.phase); in iforce_upload_periodic() 383 effect->replay.delay, in iforce_upload_periodic() 386 effect->direction); in iforce_upload_periodic() 443 effect->replay.delay, in iforce_upload_constant() 446 effect->direction); in iforce_upload_constant() 471 switch (effect->type) { in iforce_upload_condition() 508 effect->replay.length, effect->replay.delay, in iforce_upload_condition() 509 effect->trigger.button, effect->trigger.interval, in iforce_upload_condition() [all …]
|
| /linux-6.15/drivers/input/ |
| H A D | ff-memless.c | 36 struct ff_effect *effect; member 59 switch (effect->type) { in get_envelope() 152 struct ff_effect *effect = state->effect; in apply_envelope() local 274 effect->direction, in ml_combine_effects() 279 effect->direction, in ml_combine_effects() 283 effect->direction = 0; in ml_combine_effects() 300 effect->direction, in ml_combine_effects() 304 effect->direction = 0; in ml_combine_effects() 327 struct ff_effect *effect; in ml_get_combo_effect() local 339 effect = state->effect; in ml_get_combo_effect() [all …]
|
| H A D | ff-core.c | 54 switch (effect->type) { in compat_effect() 66 effect->type = FF_PERIODIC; in compat_effect() 68 effect->u.periodic.period = 50; in compat_effect() 70 effect->u.periodic.offset = 0; in compat_effect() 71 effect->u.periodic.phase = 0; in compat_effect() 102 if (effect->type < FF_EFFECT_MIN || effect->type > FF_EFFECT_MAX || in input_ff_upload() 108 if (effect->type == FF_PERIODIC && in input_ff_upload() 124 if (effect->id == -1) { in input_ff_upload() 132 effect->id = id; in input_ff_upload() 136 id = effect->id; in input_ff_upload() [all …]
|
| H A D | input-compat.c | 63 struct ff_effect *effect) in input_ff_effect_from_user() argument 76 compat_effect = (struct ff_effect_compat *)effect; in input_ff_effect_from_user() 84 effect->u.periodic.custom_data = in input_ff_effect_from_user() 90 if (copy_from_user(effect, buffer, sizeof(struct ff_effect))) in input_ff_effect_from_user() 118 struct ff_effect *effect) in input_ff_effect_from_user() argument 123 if (copy_from_user(effect, buffer, sizeof(struct ff_effect))) in input_ff_effect_from_user()
|
| /linux-6.15/drivers/input/misc/ |
| H A D | cs40l50-vibra.c | 133 if (effect->id == id) in cs40l50_find_effect() 134 return effect; in cs40l50_find_effect() 173 effect->index++; in cs40l50_effect_index_set() 184 if (effect->index > max_index || effect->index < base_index) { in cs40l50_effect_index_set() 275 effect = cs40l50_find_effect(work_data->effect->id, &vib->effect_head); in cs40l50_add_worker() 276 if (!effect) { in cs40l50_add_worker() 277 effect = kzalloc(sizeof(*effect), GFP_KERNEL); in cs40l50_add_worker() 278 if (!effect) { in cs40l50_add_worker() 283 effect->id = work_data->effect->id; in cs40l50_add_worker() 304 kfree(effect); in cs40l50_add_worker() [all …]
|
| H A D | arizona-haptics.c | 109 struct ff_effect *effect) in arizona_haptics_play() argument 119 if (effect->u.rumble.strong_magnitude) { in arizona_haptics_play() 123 effect->u.rumble.strong_magnitude >> 9; in arizona_haptics_play() 124 if (effect->direction < 0x8000) in arizona_haptics_play() 128 effect->u.rumble.strong_magnitude >> 8; in arizona_haptics_play()
|
| H A D | uinput.c | 50 struct ff_effect *effect; member 236 struct ff_effect *effect, in uinput_dev_upload_effect() argument 249 if (effect->type == FF_PERIODIC && in uinput_dev_upload_effect() 250 effect->u.periodic.waveform == FF_CUSTOM) in uinput_dev_upload_effect() 254 request.u.upload.effect = effect; in uinput_dev_upload_effect() 768 struct ff_effect_compat effect; member 786 memcpy(&ff_up_compat.effect, &ff_up->effect, in uinput_ff_upload_to_user() 815 memcpy(&ff_up->effect, &ff_up_compat.effect, in uinput_ff_upload_from_user() 994 !req->u.upload.effect) { in uinput_ioctl_handler() 1000 ff_up.effect = *req->u.upload.effect; in uinput_ioctl_handler() [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() 559 if (copy_from_user(data, effect->u.periodic.custom_data, in da7280_haptics_upload_effect() 561 effect->u.periodic.custom_len)) in da7280_haptics_upload_effect() 566 for (i = 0; i < effect->u.periodic.custom_len; i++) { in da7280_haptics_upload_effect() 585 if (copy_from_user(data, effect->u.periodic.custom_data, 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()
|
| /linux-6.15/sound/synth/emux/ |
| H A D | emux_effect.c | 88 short effect; in effect_set_byte() local 91 effect = fx->val[type]; in effect_set_byte() 94 effect += *(char*)valp; in effect_set_byte() 96 effect += *valp; in effect_set_byte() 99 effect = parm_defs[type].low; in effect_set_byte() 109 int effect; in effect_set_word() local 114 effect += *valp; in effect_set_word() 278 if (p->effect) { in snd_emux_create_effect() 290 kfree(p->effect); in snd_emux_delete_effect() 291 p->effect = NULL; in snd_emux_delete_effect() [all …]
|
| /linux-6.15/drivers/hid/usbhid/ |
| H A D | hid-pidff.c | 361 effect->u.constant.level); in pidff_set_constant_force_report() 388 effect->replay.length); in pidff_set_effect_report() 392 effect->trigger.interval); in pidff_set_effect_report() 406 effect->replay.delay); in pidff_set_effect_report() 439 effect->u.periodic.period); in pidff_set_periodic_report() 521 struct ff_effect *effect) in pidff_set_ramp_force_report() argument 528 effect->u.ramp.end_level); in pidff_set_ramp_force_report() 771 pidff->pid_id[effect->id]; in pidff_upload_effect() 774 switch (effect->type) { in pidff_upload_effect() 852 switch(effect->type) { in pidff_upload_effect() [all …]
|
| /linux-6.15/Documentation/input/ |
| H A D | ff.rst | 119 "effect" points to a structure describing the effect to upload. The effect is 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; 176 /* Stop an effect */ 178 stop.code = effect.id; 224 Dynamic update of an effect [all …]
|
| /linux-6.15/Documentation/ABI/testing/ |
| H A D | debugfs-hisi-sec | 7 Only available for PF, and take no other effect on SEC. 47 Only available for PF, and take no other effect on SEC. 54 Available for both PF and VF, and take no other effect on SEC. 60 Available for both PF and VF, and take no other effect on SEC. 66 Available for both PF and VF, and take no other effect on SEC. 72 Available for both PF and VF, and take no other effect on SEC. 78 Available for both PF and VF, and take no other effect on SEC. 85 Available for both PF and VF, and take no other effect on SEC. 99 Only available for PF, and take no other effect on SEC. 105 and VF, and take no other effect on SEC. [all …]
|
| H A D | debugfs-hisi-hpre | 19 functional effect, only enable or disable counters clear after 65 Writing to this file has no functional effect, only enable or 74 Available for both PF and VF, and take no other effect on HPRE. 80 Available for both PF and VF, and take no other effect on HPRE. 86 Available for both PF and VF, and take no other effect on HPRE. 92 Available for both PF and VF, and take no other effect on HPRE. 98 Available for both PF and VF, and take no other effect on HPRE. 105 Available for both PF and VF, and take no other effect on HPRE. 119 Only available for PF, and take no other effect on HPRE. 125 and VF, and take no other effect on HPRE. [all …]
|
| H A D | debugfs-hisi-zip | 18 Writing to this file has no functional effect, only enable or 58 Writing to this file has no functional effect, only enable or 67 Available for both PF and VF, and take no other effect on ZIP. 73 Available for both PF and VF, and take no other effect on ZIP. 79 Available for both PF and VF, and take no other effect on ZIP. 85 Available for both PF and VF, and take no other effect on ZIP. 91 Available for both PF and VF, and take no other effect on ZIP. 98 Available for both PF and VF, and take no other effect on ZIP. 112 Only available for PF, and take no other effect on ZIP. 118 and VF, and take no other effect on ZIP. [all …]
|
| /linux-6.15/drivers/hid/ |
| 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-logitech-hidpp.c | 2559 switch (effect->type) { in hidpp_ff_upload_effect() 2561 force = (effect->u.constant.level * fixp_sin16((effect->direction * 360) >> 16)) >> 15; in hidpp_ff_upload_effect() 2573 effect->u.constant.level, in hidpp_ff_upload_effect() 2574 effect->direction, force); in hidpp_ff_upload_effect() 2620 effect->u.periodic.magnitude, effect->direction, in hidpp_ff_upload_effect() 2621 effect->u.periodic.offset, in hidpp_ff_upload_effect() 2622 effect->u.periodic.period, in hidpp_ff_upload_effect() 2623 effect->u.periodic.phase); in hidpp_ff_upload_effect() 2636 force = (effect->u.ramp.end_level * fixp_sin16((effect->direction * 360) >> 16)) >> 15; in hidpp_ff_upload_effect() 2648 effect->u.ramp.end_level, in hidpp_ff_upload_effect() [all …]
|
| 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()
|
| /linux-6.15/sound/isa/sb/ |
| H A D | emu8000.c | 668 int effect = emu->chorus_mode; in snd_emu8000_update_chorus_mode() local 669 if (effect < 0 || effect >= SNDRV_EMU8000_CHORUS_NUMBERS || in snd_emu8000_update_chorus_mode() 670 (effect >= SNDRV_EMU8000_CHORUS_PREDEFINED && !chorus_defined[effect])) in snd_emu8000_update_chorus_mode() 672 EMU8000_INIT3_WRITE(emu, 0x09, chorus_parm[effect].feedback); in snd_emu8000_update_chorus_mode() 673 EMU8000_INIT3_WRITE(emu, 0x0c, chorus_parm[effect].delay_offset); in snd_emu8000_update_chorus_mode() 674 EMU8000_INIT4_WRITE(emu, 0x03, chorus_parm[effect].lfo_depth); in snd_emu8000_update_chorus_mode() 675 EMU8000_HWCF4_WRITE(emu, chorus_parm[effect].delay); in snd_emu8000_update_chorus_mode() 676 EMU8000_HWCF5_WRITE(emu, chorus_parm[effect].lfo_freq); in snd_emu8000_update_chorus_mode() 796 int effect = emu->reverb_mode; in snd_emu8000_update_reverb_mode() local 799 if (effect < 0 || effect >= SNDRV_EMU8000_REVERB_NUMBERS || in snd_emu8000_update_reverb_mode() [all …]
|
| /linux-6.15/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-6.15/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 …]
|