Home
last modified time | relevance | path

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

12345678910>>...13

/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 …]
/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()
79 memset(effect, 0, sizeof(*effect)); in input_ff_effect_from_user()
87 effect->u.periodic.custom_data = in input_ff_effect_from_user()
93 if (copy_from_user(effect, buffer, sizeof(struct ff_effect))) in input_ff_effect_from_user()
143 struct ff_effect *effect) in input_ff_effect_from_user() argument
148 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 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.c52 struct ff_effect *effect; member
247 struct ff_effect *effect, in uinput_dev_upload_effect() argument
260 if (effect->type == FF_PERIODIC && in uinput_dev_upload_effect()
261 effect->u.periodic.waveform == FF_CUSTOM) in uinput_dev_upload_effect()
265 request.u.upload.effect = effect; in uinput_dev_upload_effect()
789 struct ff_effect_compat effect; member
808 memcpy(&ff_up_compat.effect, &ff_up->effect, in uinput_ff_upload_to_user()
837 memcpy(&ff_up->effect, &ff_up_compat.effect, in uinput_ff_upload_from_user()
1016 !req->u.upload.effect) { in uinput_ioctl_handler()
1022 ff_up.effect = *req->u.upload.effect; in uinput_ioctl_handler()
[all …]
H A Dtwl4030-vibra.c123 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 Ddrv2667.c229 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 Dgpio-vibra.c78 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()
H A Dtwl6040-vibra.c190 struct ff_effect *effect) in vibra_play() argument
194 info->weak_speed = effect->u.rumble.weak_magnitude; in vibra_play()
195 info->strong_speed = effect->u.rumble.strong_magnitude; in vibra_play()
196 info->direction = effect->direction < EFFECT_DIR_180_DEG ? 1 : -1; in vibra_play()
H A Ddrv260x.c242 struct ff_effect *effect) in drv260x_haptics_play() argument
249 if (effect->u.rumble.strong_magnitude > 0) in drv260x_haptics_play()
250 haptics->magnitude = effect->u.rumble.strong_magnitude >> 8; in drv260x_haptics_play()
251 else if (effect->u.rumble.weak_magnitude > 0) in drv260x_haptics_play()
252 haptics->magnitude = effect->u.rumble.weak_magnitude >> 8; in drv260x_haptics_play()
H A Dpwm-vibra.c107 struct ff_effect *effect) in pwm_vibrator_play_effect() argument
111 vibrator->level = effect->u.rumble.strong_magnitude; in pwm_vibrator_play_effect()
113 vibrator->level = effect->u.rumble.weak_magnitude; in pwm_vibrator_play_effect()
H A Dpm8xxx-vibrator.c189 struct ff_effect *effect) in pm8xxx_vib_play_effect() argument
193 vib->speed = effect->u.rumble.strong_magnitude >> 8; in pm8xxx_vib_play_effect()
195 vib->speed = effect->u.rumble.weak_magnitude >> 9; in pm8xxx_vib_play_effect()
/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/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/drivers/hid/
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-logitech-hidpp.c2489 /* find current slot for effect */ in hidpp_ff_work_handler()
2509 /* regular effect uploaded */ in hidpp_ff_work_handler()
2520 /* regular effect destroyed */ in hidpp_ff_work_handler()
2569 static int hidpp_ff_upload_effect(struct input_dev *dev, struct ff_effect *effect, struct ff_effect *old)
2577 params[2] = effect->replay.length >> 8; in hidpp_ff_upload_effect()
2578 params[3] = effect->replay.length & 255; in hidpp_ff_upload_effect()
2579 params[4] = effect->replay.delay >> 8; in hidpp_ff_upload_effect()
2580 params[5] = effect->replay.delay & 255; in hidpp_ff_upload_effect()
2582 switch (effect->type) { in hidpp_ff_upload_effect()
2584 force = (effect in hidpp_ff_upload_effect()
2570 hidpp_ff_upload_effect(struct input_dev * dev,struct ff_effect * effect,struct ff_effect * old) hidpp_ff_upload_effect() argument
[all...]
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-oxp.c280 u8 effect; member
302 u8 effect; member
326 drvdata.rgb_effect = rgb_rep->effect == OXP_EFFECT_MONO_TRUE ? in oxp_hid_raw_event_gen_1()
328 rgb_rep->effect; in oxp_hid_raw_event_gen_1()
410 drvdata.rgb_effect = rgb_rep->effect == OXP_EFFECT_MONO_TRUE ? in oxp_hid_raw_event_gen_2()
412 rgb_rep->effect; in oxp_hid_raw_event_gen_2()
1116 static int oxp_rgb_effect_set(u8 effect) in oxp_rgb_effect_set() argument
1122 switch (effect) { in oxp_rgb_effect_set()
1144 data = (u8[1]) { effect }; in oxp_rgb_effect_set()
1148 data = (u8[3]) { effect, 0x00, 0x02 }; in oxp_rgb_effect_set()
[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/tools/testing/cxl/test/
H A Dmem.c44 .effect = CXL_CMD_EFFECT_NONE,
48 .effect = CXL_CMD_EFFECT_NONE,
52 .effect = CXL_CMD_EFFECT_NONE,
56 .effect = cpu_to_le16(EFFECT(CONF_CHANGE_IMMEDIATE)),
60 .effect = CXL_CMD_EFFECT_NONE,
64 .effect = CXL_CMD_EFFECT_NONE,
68 .effect = CXL_CMD_EFFECT_NONE,
72 .effect = cpu_to_le16(EFFECT(CONF_CHANGE_IMMEDIATE) |
77 .effect = CXL_CMD_EFFECT_NONE,
81 .effect = POLICY_CHANGE_IMMEDIATE,
[all …]
/linux/drivers/leds/
H A Dleds-cht-wcove.c222 u8 effect) in cht_wc_leds_set_effect() argument
248 CHT_WC_LED_EFF_MASK, effect); in cht_wc_leds_set_effect()
271 u8 effect = CHT_WC_LED_EFF_BLINKING; in cht_wc_leds_blink_set() local
282 effect = CHT_WC_LED_EFF_BREATHING; in cht_wc_leds_blink_set()
285 return cht_wc_leds_set_effect(cdev, delay_on, delay_off, effect); in cht_wc_leds_blink_set()
/linux/sound/soc/codecs/
H A Dfs210x.c392 const struct fs_file_table *effect; in fs210x_set_effect_table() local
400 if (!scene->effect || cur_scene == scene) { in fs210x_set_effect_table()
405 effect = scene->effect; in fs210x_set_effect_table()
406 dev_dbg(fs210x->dev, "effect table size: %d\n", effect->size); in fs210x_set_effect_table()
409 if (effect->size == 0 || (effect->size & 0x7)) { in fs210x_set_effect_table()
411 effect->size); in fs210x_set_effect_table()
415 half_size = effect->size / 2; in fs210x_set_effect_table()
421 effect->buf, half_size); in fs210x_set_effect_table()
429 effect->buf + half_size, half_size); in fs210x_set_effect_table()

12345678910>>...13