Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1414920
| From | Pali Rohár <pali.rohar@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 3/5] Input: alps - move ALPS_PROTO_V1 out of alps_model_data table |
| Date | 2016-06-06 13:30 +0200 |
| Message-ID | <rH0Tf-4eU-1@gated-at.bofh.it> (permalink) |
| References | <rH0Tf-4eU-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Like for other protocols create alps_v1_protocol_data and use it in
alps_identify() function.
Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
---
drivers/input/mouse/alps.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
index 087fbe5..4e6d76e 100644
--- a/drivers/input/mouse/alps.c
+++ b/drivers/input/mouse/alps.c
@@ -106,7 +106,6 @@ static const struct alps_nibble_commands alps_v6_nibble_commands[] = {
static const struct alps_model_info alps_model_data[] = {
{ { 0x32, 0x02, 0x14 }, 0x00, { ALPS_PROTO_V2, 0xf8, 0xf8, ALPS_PASS | ALPS_DUALPOINT } }, /* Toshiba Salellite Pro M10 */
- { { 0x33, 0x02, 0x0a }, 0x00, { ALPS_PROTO_V1, 0x88, 0xf8, 0 } }, /* UMAX-530T */
{ { 0x53, 0x02, 0x0a }, 0x00, { ALPS_PROTO_V2, 0xf8, 0xf8, 0 } },
{ { 0x53, 0x02, 0x14 }, 0x00, { ALPS_PROTO_V2, 0xf8, 0xf8, 0 } },
{ { 0x60, 0x03, 0xc8 }, 0x00, { ALPS_PROTO_V2, 0xf8, 0xf8, 0 } }, /* HP ze1115 */
@@ -138,6 +137,10 @@ static const struct alps_model_info alps_model_data[] = {
ALPS_PASS | ALPS_DUALPOINT | ALPS_PS2_INTERLEAVED } }, /* Toshiba Tecra A11-11L */
};
+static const struct alps_protocol_info alps_v1_protocol_data = {
+ ALPS_PROTO_V1, 0x88, 0xf8, 0
+};
+
static const struct alps_protocol_info alps_v3_protocol_data = {
ALPS_PROTO_V3, 0x8f, 0x8f, ALPS_DUALPOINT
};
@@ -2759,7 +2762,9 @@ static int alps_identify(struct psmouse *psmouse, struct alps_data *priv)
protocol = alps_match_table(e7, ec);
if (!protocol) {
- if (e7[0] == 0x73 && e7[1] == 0x02 && e7[2] == 0x64 &&
+ if (e7[0] == 0x33 && e7[1] == 0x02 && e7[2] == 0x0a) {
+ protocol = &alps_v1_protocol_data;
+ } else if (e7[0] == 0x73 && e7[1] == 0x02 && e7[2] == 0x64 &&
ec[2] == 0x8a) {
protocol = &alps_v4_protocol_data;
} else if (e7[0] == 0x73 && e7[1] == 0x03 && e7[2] == 0x50 &&
--
1.7.9.5
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
[PATCH 3/5] Input: alps - move ALPS_PROTO_V1 out of alps_model_data table Pali Rohár <pali.rohar@gmail.com> - 2016-06-06 13:30 +0200
csiph-web