lkml.org 
[lkml]   [2007]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: FF layer restrictions [Was: [PATCH 1/1] Input: add sensable phantom driver]
Dmitry Torokhov napsal(a):
> On Wednesday 21 March 2007 18:03, johann deneux wrote:
>> On 3/21/07, Jiri Slaby <jirislaby@gmail.com> wrote:
>>> Dmitry Torokhov napsal(a):
>>>> On 3/21/07, johann deneux <johann.deneux@gmail.com> wrote:
>>>>> I would suggest adding a new effect type (3d effect) and extending the
>>>>> union in struct ff_effect.
>>>>> Let me know if I'm too vague, I already suggested that solution but
>>>>> got no answer. I wonder if my mail got lost, nobody understood what I
>>>>> said, or if it's just a plain bad idea.
>>>>>
>>>> My concern with a new 3D effect is that it will be a very "simple"
>>>> effect with only constant force apllied. That might be enough for
>>>> phantom but may not be sufficient for future devices. If we add
>>>> ability to specify a "plane" for an effect we will be able to add
>>>> envelopes on top of more complex effects and get desired combined
>>>> effcet.
>>> I didn't get this too much, because I don't understand the FF layer well so
>>> far. How is this going to work? Let's say, we have 3 torque values computed
>>> in US, and this structure:
>>>
>>> struct ff_effect {
>>> __u16 direction;
>>> struct ff_trigger trigger;
>>> struct ff_replay replay;
>>>
>>> struct ff_constant_effect {
>>> __s16 level;
>>> struct ff_envelope {
>>> __u16 attack_length;
>>> __u16 attack_level;
>>> __u16 fade_length;
>>> __u16 fade_level;
>>> };
>>> };
>>> };
>>>
>>> and need to pass the three 16bits torques into s16 ioaddr[0..2]. How?
>>>
>> Stupid question,

Sorry to be out for so long, maybe I'm stupid idiot, that understands
nothing, but:

>> I have forgotten the details of ioctl: Wouldn't the
>> following work?

No, at least, as far as I understand this. I have computed _torques_, not
forces vector (this was misleading info in my first post), the question is
"how can I pass torques through plane and direction entries into KS?".

>> struct ff_effect {
>> __u16 type;
>> __s16 id;
>> __u16 direction;
>> struct ff_trigger trigger;
>> struct ff_replay replay;
>>
>> union {
>> struct ff_constant_effect constant;
>> struct ff_ramp_effect ramp;
>> struct ff_periodic_effect periodic;
>> struct ff_condition_effect condition[2]; /* One for each axis */
>> struct ff_rumble_effect rumble;
>> } u;
>>
>> /* New member: Specify a plane in the 3d space. */
>> struct ff_ruct ff_plane plane;
>> };
[...]
>> Alternatively, one could leave ff_effect effect untouched and find
>> another way to specify the plane, e.g. another ioctl.
>
> I was thinking about a new ioctl to specify a plane for a specific effect,
> but probably extending the structure and having 2 distinct ioctls (with
> and without plane) is cleaner.

This sounds good for me, if I (or someone) have forces vector, but it
doesn't help me in my situation.

thanks,
--
http://www.fi.muni.cz/~xslaby/ Jiri Slaby
faculty of informatics, masaryk university, brno, cz
e-mail: jirislaby gmail com, gpg pubkey fingerprint:
B674 9967 0407 CE62 ACC8 22A0 32CC 55C3 39D4 7A7E
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-03-27 14:23    [W:7.727 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site