Home
last modified time | relevance | path

Searched refs:effect (Results 1 – 25 of 459) sorted by relevance

12345678910>>...19

/linux/drivers/input/joystick/iforce/
H A Diforce-ff.c207 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 …]
H A Diforce-main.c108 static int iforce_upload_effect(struct input_dev *dev, struct ff_effect *effect, struct ff_effect *… in iforce_upload_effect() argument
111 struct iforce_core_effect *core_effect = &iforce->core_effects[effect->id]; in iforce_upload_effect()
123 switch (effect->type) { in iforce_upload_effect()
125 ret = iforce_upload_periodic(iforce, effect, old); in iforce_upload_effect()
129 ret = iforce_upload_constant(iforce, effect, old); in iforce_upload_effect()
134 ret = iforce_upload_condition(iforce, effect, old); in iforce_upload_effect()
/linux/drivers/input/
H A Dff-memless.c37 struct ff_effect *effect; member
53 struct ff_effect *effect);
56 static const struct ff_envelope *get_envelope(const struct ff_effect *effect) in get_envelope() argument
60 switch (effect->type) { in get_envelope()
62 return &effect->u.periodic.envelope; in get_envelope()
65 return &effect->u.constant.envelope; in get_envelope()
77 const struct ff_envelope *envelope = get_envelope(state->effect); in calculate_next_time()
88 if (state->effect->replay.length) { in calculate_next_time()
153 struct ff_effect *effect = state->effect; in apply_envelope() local
169 } else if (envelope->fade_length && effect->replay.length && in apply_envelope()
[all …]
H A Dff-core.c50 static int compat_effect(struct ff_device *ff, struct ff_effect *effect) in compat_effect() argument
54 switch (effect->type) { in compat_effect()
63 magnitude = effect->u.rumble.strong_magnitude / 3 + in compat_effect()
64 effect->u.rumble.weak_magnitude / 6; in compat_effect()
66 effect->type = FF_PERIODIC; in compat_effect()
67 effect->u.periodic.waveform = FF_SINE; in compat_effect()
68 effect->u.periodic.period = 50; in compat_effect()
69 effect->u.periodic.magnitude = magnitude; in compat_effect()
70 effect->u.periodic.offset = 0; in compat_effect()
71 effect->u.periodic.phase = 0; in compat_effect()
[all …]
H A Dinput-compat.c64 struct ff_effect *effect) in input_ff_effect_from_user() argument
77 compat_effect = (struct ff_effect_compat *)effect; in input_ff_effect_from_user()
85 effect->u.periodic.custom_data = in input_ff_effect_from_user()
91 if (copy_from_user(effect, buffer, sizeof(struct ff_effect))) in input_ff_effect_from_user()
141 struct ff_effect *effect) in input_ff_effect_from_user() argument
146 if (copy_from_user(effect, buffer, sizeof(struct ff_effect))) in input_ff_effect_from_user()
/linux/drivers/input/misc/
H A Dcs40l50-vibra.c90 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 Darizona-haptics.c107 struct ff_effect *effect) in arizona_haptics_play() argument
117 if (effect->u.rumble.strong_magnitude) { in arizona_haptics_play()
121 effect->u.rumble.strong_magnitude >> 9; in arizona_haptics_play()
122 if (effect->direction < 0x8000) in arizona_haptics_play()
126 effect->u.rumble.strong_magnitude >> 8; in arizona_haptics_play()
H A Dda7280.c505 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 Duinput.c50 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
787 memcpy(&ff_up_compat.effect, &ff_up->effect, in uinput_ff_upload_to_user()
816 memcpy(&ff_up->effect, &ff_up_compat.effect, in uinput_ff_upload_from_user()
995 !req->u.upload.effect) { in uinput_ioctl_handler()
1001 ff_up.effect = *req->u.upload.effect; in uinput_ioctl_handler()
[all …]
/linux/drivers/hid/
H A Dhid-haptic.c148 struct ff_haptic_effect *effect, in fill_effect_buf() argument
171 if (effect->intensity > 100) { in fill_effect_buf()
175 effect->intensity * in fill_effect_buf()
181 value = effect->repeat_count; in fill_effect_buf()
184 value = effect->retrigger_period; in fill_effect_buf()
233 static int hid_haptic_upload_effect(struct input_dev *dev, struct ff_effect *effect, in hid_haptic_upload_effect() argument
243 if (effect->u.haptic.hid_usage >= (HID_HP_VENDORWAVEFORMMIN & HID_USAGE) && in hid_haptic_upload_effect()
244 effect->u.haptic.hid_usage <= (HID_HP_VENDORWAVEFORMMAX & HID_USAGE) && in hid_haptic_upload_effect()
245 (effect->u.haptic.vendor_id != haptic->vendor_id || in hid_haptic_upload_effect()
246 effect->u.haptic.vendor_waveform_page != haptic->vendor_page)) in hid_haptic_upload_effect()
[all …]
H A Dhid-logitech-hidpp.c2554 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 Dhid-lgff.c57 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 Dhid-tmff.c74 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 Dhid-lg3ff.c45 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 Dhid-lg2ff.c23 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 Dhid-megaworld.c25 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()
/linux/sound/synth/emux/
H A Demux_effect.c88 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()
98 if (effect < parm_defs[type].low) in effect_set_byte()
99 effect = parm_defs[type].low; in effect_set_byte()
100 else if (effect > parm_defs[type].high) in effect_set_byte()
101 effect = parm_defs[type].high; in effect_set_byte()
102 *valp = (unsigned char)effect; in effect_set_byte()
109 int effect; in effect_set_word() local
[all …]
/linux/drivers/hid/usbhid/
H A Dhid-pidff.c211 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 Dff.rst115 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/Documentation/ABI/testing/
H A Ddebugfs-hisi-sec7 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 Ddebugfs-hisi-hpre19 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 Ddebugfs-hisi-zip18 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/sound/isa/sb/
H A Demu8000.c656 int effect = emu->chorus_mode; in snd_emu8000_update_chorus_mode() local
657 if (effect < 0 || effect >= SNDRV_EMU8000_CHORUS_NUMBERS || in snd_emu8000_update_chorus_mode()
658 (effect >= SNDRV_EMU8000_CHORUS_PREDEFINED && !chorus_defined[effect])) in snd_emu8000_update_chorus_mode()
660 EMU8000_INIT3_WRITE(emu, 0x09, chorus_parm[effect].feedback); in snd_emu8000_update_chorus_mode()
661 EMU8000_INIT3_WRITE(emu, 0x0c, chorus_parm[effect].delay_offset); in snd_emu8000_update_chorus_mode()
662 EMU8000_INIT4_WRITE(emu, 0x03, chorus_parm[effect].lfo_depth); in snd_emu8000_update_chorus_mode()
663 EMU8000_HWCF4_WRITE(emu, chorus_parm[effect].delay); in snd_emu8000_update_chorus_mode()
664 EMU8000_HWCF5_WRITE(emu, chorus_parm[effect].lfo_freq); in snd_emu8000_update_chorus_mode()
784 int effect = emu->reverb_mode; in snd_emu8000_update_reverb_mode() local
787 if (effect < 0 || effect >= SNDRV_EMU8000_REVERB_NUMBERS || in snd_emu8000_update_reverb_mode()
[all …]
/linux/Documentation/input/devices/
H A Diforce-protocol.rst82 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 Dfimc-core.c460 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 …]

12345678910>>...19