Home
last modified time | relevance | path

Searched full:effect (Results 1 – 25 of 1453) sorted by relevance

12345678910>>...59

/Linux-v5.10/drivers/input/joystick/iforce/
Diforce-ff.c12 * Set the magnitude of a constant force effect
45 * Upload the component of an effect dealing with the period, phase and magnitude
83 * Uploads the part of an effect setting the envelope of the force
178 * Analyse the changes in an effect, and tell if we need to send an condition
189 dev_warn(&iforce->dev->dev, "bad effect type in %s\n", in need_condition_modifier()
206 * Analyse the changes in an effect, and tell if we need to send a magnitude
211 struct ff_effect *effect) in need_magnitude_modifier() argument
213 if (effect->type != FF_CONSTANT) { in need_magnitude_modifier()
214 dev_warn(&iforce->dev->dev, "bad effect type in %s\n", in need_magnitude_modifier()
219 return old->u.constant.level != effect->u.constant.level; in need_magnitude_modifier()
[all …]
Diforce-main.c104 * It uploads an effect to the device
106 static int iforce_upload_effect(struct input_dev *dev, struct ff_effect *effect, struct ff_effect *… in iforce_upload_effect() argument
109 struct iforce_core_effect *core_effect = &iforce->core_effects[effect->id]; in iforce_upload_effect()
113 /* Check the effect is not already being updated */ in iforce_upload_effect()
119 * Upload the effect in iforce_upload_effect()
121 switch (effect->type) { in iforce_upload_effect()
123 ret = iforce_upload_periodic(iforce, effect, old); in iforce_upload_effect()
127 ret = iforce_upload_constant(iforce, effect, old); in iforce_upload_effect()
132 ret = iforce_upload_condition(iforce, effect, old); in iforce_upload_effect()
149 * Erases an effect: it frees the effect id and mark as unused the memory
[all …]
Diforce.h28 /* Each force feedback effect is made of one core effect, which can be
29 * associated to at most to effect modifiers
34 #define FF_CORE_IS_PLAYED 3 /* Effect is currently being played */
35 #define FF_CORE_SHOULD_PLAY 4 /* User wants the effect to be played */
36 #define FF_CORE_UPDATE 5 /* Effect is being updated */
/Linux-v5.10/drivers/input/
Dff-core.c21 * Check that the effect_id is a valid effect and whether the user
49 * Convert an effect into compatible one
51 static int compat_effect(struct ff_device *ff, struct ff_effect *effect) in compat_effect() argument
55 switch (effect->type) { in compat_effect()
64 magnitude = effect->u.rumble.strong_magnitude / 3 + in compat_effect()
65 effect->u.rumble.weak_magnitude / 6; in compat_effect()
67 effect->type = FF_PERIODIC; in compat_effect()
68 effect->u.periodic.waveform = FF_SINE; in compat_effect()
69 effect->u.periodic.period = 50; in compat_effect()
70 effect->u.periodic.magnitude = max(magnitude, 0x7fff); in compat_effect()
[all …]
Dff-memless.c39 struct ff_effect *effect; member
40 unsigned long flags; /* effect state (STARTED, PLAYING, etc) */
41 int count; /* loop count of the effect */
44 unsigned long adj_at; /* last time the effect was sent */
55 struct ff_effect *effect);
58 static const struct ff_envelope *get_envelope(const struct ff_effect *effect) in get_envelope() argument
62 switch (effect->type) { in get_envelope()
64 return &effect->u.periodic.envelope; in get_envelope()
67 return &effect->u.constant.envelope; in get_envelope()
79 const struct ff_envelope *envelope = get_envelope(state->effect); in calculate_next_time()
[all …]
Dinput-compat.c63 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-v5.10/drivers/hid/usbhid/
Dhid-pidff.c274 struct ff_effect *effect) in pidff_set_constant_force_report() argument
279 effect->u.constant.level); in pidff_set_constant_force_report()
288 static int pidff_needs_set_constant(struct ff_effect *effect, in pidff_needs_set_constant() argument
291 return effect->u.constant.level != old->u.constant.level; in pidff_needs_set_constant()
295 * Send set effect report to the device
298 struct ff_effect *effect) in pidff_set_effect_report() argument
304 pidff->set_effect[PID_DURATION].value[0] = effect->replay.length; in pidff_set_effect_report()
305 pidff->set_effect[PID_TRIGGER_BUTTON].value[0] = effect->trigger.button; in pidff_set_effect_report()
307 effect->trigger.interval; in pidff_set_effect_report()
312 pidff_rescale(effect->direction, 0xffff, in pidff_set_effect_report()
[all …]
/Linux-v5.10/Documentation/input/
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-v5.10/sound/synth/emux/
Demux_effect.c84 /* set byte effect value */
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()
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()
[all …]
/Linux-v5.10/include/uapi/linux/
Dinput.h179 #define EVIOCSFF _IOW('E', 0x80, struct ff_effect) /* send a force effect to a force feedback devi…
180 #define EVIOCRMFF _IOW('E', 0x81, int) /* Erase a force effect */
285 * Values describing the status of a force-feedback effect
302 * struct ff_replay - defines scheduling of the force-feedback effect
303 * @length: duration of the effect
304 * @delay: delay before effect should start playing
312 * struct ff_trigger - defines what triggers the force-feedback effect
313 * @button: number of the button triggering the effect
314 * @interval: controls how soon the effect can be re-triggered
322 * struct ff_envelope - generic force-feedback effect envelope
[all …]
/Linux-v5.10/Documentation/ABI/testing/
Ddebugfs-hisi-sec7 Only available for PF, and take no other effect on SEC.
37 Only available for PF, and take no other effect on SEC.
44 Available for both PF and VF, and take no other effect on SEC.
50 Available for both PF and VF, and take no other effect on SEC.
56 Available for both PF and VF, and take no other effect on SEC.
62 Available for both PF and VF, and take no other effect on SEC.
68 Available for both PF and VF, and take no other effect on SEC.
75 Available for both PF and VF, and take no other effect on SEC.
81 Available for both PF and VF, and take no other effect on SEC.
87 Available for both PF and VF, and take no other effect on SEC.
[all …]
Ddebugfs-hisi-hpre19 functional effect, only enable or disable counters clear after
55 Writing to this file has no functional effect, only enable or
64 Available for both PF and VF, and take no other effect on HPRE.
70 Available for both PF and VF, and take no other effect on HPRE.
76 Available for both PF and VF, and take no other effect on HPRE.
82 Available for both PF and VF, and take no other effect on HPRE.
88 Available for both PF and VF, and take no other effect on HPRE.
95 Available for both PF and VF, and take no other effect on HPRE.
101 Available for both PF and VF, and take no other effect on HPRE.
107 Available for both PF and VF, and take no other effect on HPRE.
[all …]
Ddebugfs-hisi-zip18 Writing to this file has no functional effect, only enable or
48 Writing to this file has no functional effect, only enable or
57 Available for both PF and VF, and take no other effect on ZIP.
63 Available for both PF and VF, and take no other effect on ZIP.
69 Available for both PF and VF, and take no other effect on ZIP.
75 Available for both PF and VF, and take no other effect on ZIP.
81 Available for both PF and VF, and take no other effect on ZIP.
88 Available for both PF and VF, and take no other effect on ZIP.
94 Available for both PF and VF, and take no other effect on ZIP.
100 Available for both PF and VF, and take no other effect on ZIP.
[all …]
/Linux-v5.10/drivers/hid/
Dhid-holtekff.c27 * 01 set effect parameters
28 * 02 play specified effect
29 * 03 stop specified effect
39 * commands 02,03 take only the effect id.
42 * bits 0-3: effect id:
59 * bytes 5-6: unknown (win driver seems to use at least 10e0 with effect 1
60 * and 0014 with effect 6)
62 * bits 0-3: effect magnitude
91 struct ff_effect *effect) in holtekff_play() argument
96 /* effect type 1, length 65535 msec */ in holtekff_play()
[all …]
Dhid-logitech-hidpp.c1951 /* find current slot for effect */ in hidpp_ff_work_handler()
1971 /* regular effect uploaded */ in hidpp_ff_work_handler()
1980 /* regular effect destroyed */ in hidpp_ff_work_handler()
2029 static int hidpp_ff_upload_effect(struct input_dev *dev, struct ff_effect *effect, struct ff_effect… in hidpp_ff_upload_effect() argument
2037 params[2] = effect->replay.length >> 8; in hidpp_ff_upload_effect()
2038 params[3] = effect->replay.length & 255; in hidpp_ff_upload_effect()
2039 params[4] = effect->replay.delay >> 8; in hidpp_ff_upload_effect()
2040 params[5] = effect->replay.delay & 255; in hidpp_ff_upload_effect()
2042 switch (effect->type) { in hidpp_ff_upload_effect()
2044 force = (effect->u.constant.level * fixp_sin16((effect->direction * 360) >> 16)) >> 15; in hidpp_ff_upload_effect()
[all …]
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()
Dhid-tmff.c74 struct ff_effect *effect) in tmff_play() argument
83 switch (effect->type) { in tmff_play()
85 x = tmff_scale_s8(effect->u.ramp.start_level, in tmff_play()
88 y = tmff_scale_s8(effect->u.ramp.end_level, in tmff_play()
99 left = tmff_scale_u16(effect->u.rumble.weak_magnitude, in tmff_play()
102 right = tmff_scale_u16(effect->u.rumble.strong_magnitude, in tmff_play()
/Linux-v5.10/Documentation/input/devices/
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.
323 Set Effect State
[all …]
/Linux-v5.10/drivers/gpu/drm/msm/disp/dpu1/
Ddpu_hw_ctl.h72 * No effect on hardware
79 * No effect on hardware
86 * No effect on hardware
95 * No effect on hardware
147 * No effect on hardware
156 * No effect on hardware
/Linux-v5.10/kernel/
Dcapability.c179 * has the effect of making older libcap in SYSCALL_DEFINE2()
290 * currently in effect to the specified user namespace, false if not.
312 * currently in effect to the initial user namespace, false if not.
330 * currently in effect to the specified user namespace, false if not.
354 * currently in effect to init_user_ns, false if not. Don't write an
384 * ns_capable - Determine if the current task has a superior capability in effect
402 * (unaudited) in effect
420 * in effect, while signalling that this check is being done from within a
438 * capable - Determine if the current task has a superior capability in effect
455 * file_ns_capable - Determine if the file's opener had a capability in effect
[all …]
/Linux-v5.10/drivers/input/misc/
Dpm8xxx-vibrator.c148 * @data: data of effect
149 * @effect: effect to play
154 struct ff_effect *effect) in pm8xxx_vib_play_effect() argument
158 vib->speed = effect->u.rumble.strong_magnitude >> 8; in pm8xxx_vib_play_effect()
160 vib->speed = effect->u.rumble.weak_magnitude >> 9; in pm8xxx_vib_play_effect()
Darizona-haptics.c109 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()
Duinput.c49 struct ff_effect *effect; member
235 struct ff_effect *effect, in uinput_dev_upload_effect() argument
248 if (effect->type == FF_PERIODIC && in uinput_dev_upload_effect()
249 effect->u.periodic.waveform == FF_CUSTOM) in uinput_dev_upload_effect()
253 request.u.upload.effect = effect; in uinput_dev_upload_effect()
720 struct ff_effect_compat effect; member
738 memcpy(&ff_up_compat.effect, &ff_up->effect, in uinput_ff_upload_to_user()
767 memcpy(&ff_up->effect, &ff_up_compat.effect, in uinput_ff_upload_from_user()
946 !req->u.upload.effect) { in uinput_ioctl_handler()
952 ff_up.effect = *req->u.upload.effect; in uinput_ioctl_handler()
[all …]
/Linux-v5.10/drivers/staging/media/atomisp/pci/
Datomisp_tables.h25 /*Sepia image effect table*/
31 /*Negative image effect table*/
37 /*Mono image effect table*/
43 /*Skin whiten image effect table*/
107 /*Blue enhencement image effect table*/
129 /*Green enhencement image effect table*/
/Linux-v5.10/drivers/media/platform/exynos4-is/
Dfimc-core.c461 struct fimc_effect *effect = &ctx->effect; in fimc_set_color_effect() local
465 effect->type = FIMC_REG_CIIMGEFF_FIN_BYPASS; in fimc_set_color_effect()
468 effect->type = FIMC_REG_CIIMGEFF_FIN_ARBITRARY; in fimc_set_color_effect()
469 effect->pat_cb = 128; in fimc_set_color_effect()
470 effect->pat_cr = 128; in fimc_set_color_effect()
473 effect->type = FIMC_REG_CIIMGEFF_FIN_ARBITRARY; in fimc_set_color_effect()
474 effect->pat_cb = 115; in fimc_set_color_effect()
475 effect->pat_cr = 145; in fimc_set_color_effect()
478 effect->type = FIMC_REG_CIIMGEFF_FIN_NEGATIVE; in fimc_set_color_effect()
481 effect->type = FIMC_REG_CIIMGEFF_FIN_EMBOSSING; in fimc_set_color_effect()
[all …]

12345678910>>...59