diff options
| author | Henrik Rydberg <rydberg@euromail.se> | 2010-09-29 21:37:03 +0200 |
|---|---|---|
| committer | Henrik Rydberg <rydberg@euromail.se> | 2010-09-29 21:37:03 +0200 |
| commit | 8871a76c8669087236435465abe88fc6c4e4b05c (patch) | |
| tree | ce5019d036970762df5d4dfdb71b3fbe36ae7593 | |
| parent | e4736fa40fd116937390a0b220b554724317e0cf (diff) | |
Allow double report speed for simplicity
On the joojoo, every contact change is its own packet, and collecting
the concurrent set into a frame is currently made using the reported
variable. However, being somewhat error prone, simply let the state
be reported for every contact change instead, since the input core
will removed duplicates anyways.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
| -rw-r--r-- | usr/src/dkms_source_tree/hid-egalax.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/usr/src/dkms_source_tree/hid-egalax.c b/usr/src/dkms_source_tree/hid-egalax.c index 17b00df..c060dfa 100644 --- a/usr/src/dkms_source_tree/hid-egalax.c +++ b/usr/src/dkms_source_tree/hid-egalax.c | |||
| @@ -44,10 +44,9 @@ struct egalax_data { | |||
| 44 | struct egalax_contact contact[MAX_SLOTS]; | 44 | struct egalax_contact contact[MAX_SLOTS]; |
| 45 | int down, valid; | 45 | int down, valid; |
| 46 | int x, y, z; | 46 | int x, y, z; |
| 47 | int slot, prev_slot; | 47 | int slot; |
| 48 | int mask; | 48 | int mask; |
| 49 | int trkid; | 49 | int trkid; |
| 50 | int reported; | ||
| 51 | }; | 50 | }; |
| 52 | 51 | ||
| 53 | static int egalax_input_mapping(struct hid_device *hdev, struct hid_input *hi, | 52 | static int egalax_input_mapping(struct hid_device *hdev, struct hid_input *hi, |
| @@ -149,15 +148,6 @@ static void report_contact(struct egalax_data *td, struct input_dev *input) | |||
| 149 | f->y = td->y; | 148 | f->y = td->y; |
| 150 | f->z = td->z; | 149 | f->z = td->z; |
| 151 | 150 | ||
| 152 | if (td->prev_slot != td->slot) { | ||
| 153 | td->prev_slot = td->slot; | ||
| 154 | if (td->reported) { | ||
| 155 | td->reported = 0; | ||
| 156 | return; | ||
| 157 | } | ||
| 158 | } | ||
| 159 | td->reported = 1; | ||
| 160 | |||
| 161 | for (i = 0; i < MAX_SLOTS; i++) { | 151 | for (i = 0; i < MAX_SLOTS; i++) { |
| 162 | f = &td->contact[i]; | 152 | f = &td->contact[i]; |
| 163 | input_mt_slot(input, i); | 153 | input_mt_slot(input, i); |
