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 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html