RE: adp5588-keys datasheet and driver question
From: "Hennerich, Michael" <Michael.Hennerich@analog.com>
Date: 2011-12-04 21:11:56
Christoph Fritz wrote on 2011-12-03:
Hi Michael, I had a look at the adp5588-keys driver and its datasheet. There are some "slips of the pen" in it (adp5588 Rev.b):
Hi Christoph, Good catch - however typos in datasheets shouldn't be discussed here, unless it influences the vital state of this driver.
- Page 8, Table 12, "E4 pressed" refers to binary 1000 instead of 100
Not only this obvious one - all others are wrong as well...
- Page 17, Table 22, Register Descriptions are mostly wrong
What's wrong with Table 22?
Another thing I'm curious about is in adp5588_report_events(): int key = adp5588_read(kpad->client, Key_EVENTA + i); int key_val = key & KEY_EV_MASK; [...] input_report_key(kpad->input, kpad->keycode[key_val - 1], key & KEY_EV_PRESSED); Why is there a -1 for key_val?
Key_val == 0, is not a valid event code! The part emits 1..80 for keys and 97..114 for GPI events. So bottom line - the driver is correct but Table 12 is completely wrong. Best regards, Michael -- Analog Devices GmbH Wilhelm-Wagenfeld-Str. 6 80807 Muenchen Sitz der Gesellschaft: Muenchen; Registergericht: Muenchen HRB 40368; Geschaeftsfuehrer:Dr.Carsten Suckrow, Thomas Wessel, William A. Martin, Margaret Seif