On 04/05/2022 16:14, Marco Felsch wrote: > On 22-05-04, Gireesh.Hiremath@xxxxxxxxxxxx wrote: >> From: Gireesh Hiremath <Gireesh.Hiremath@xxxxxxxxxxxx> >> >> The existing matric_keypad.c use different gpio line for row and colunm, >> where in mt_matrix_kepad.c use same gpio line for row as well as column. >> a key can be placed at each intersection of a unique row number >> not equal to a unique column and they are diagonally symmetric. >> Advantage of this is with existed gpio line we can get more keys >> >> example: in matrix_keypad.c for 5 gpio line possible matrix is 2X3 or 3X2 >> and maximum possible keys are 6 but >> in mt_matrix_kepad.c for same 5 gpio line possible matrix is 5X5 and maximum >> possible buttons are 10, below table will discribe that > > Nobody should stop you to increase the amount of max. possible keys, so > this isn't a real block. > >> ------------------------------------------------------ >> |Row\Col |GPIO 0 | GPIO 1 | GPIO 2 | GPIO 3 | GPIO 4 | >> ------------------------------------------------------ >> | GPIO 0 | X | KEY_9 | KEY_2 | KEY_3 | KEY_1 | >> ------------------------------------------------------ >> | GPIO 1 | KEY_9 | X | KEY_6 | KEY_5 | KEY_0 | >> ------------------------------------------------------ >> | GPIO 2 | KEY_2 | KEY_6 | X | KEY_4 | KEY_7 | >> ------------------------------------------------------ >> | GPIO 3 | KEY_3 | KEY_5 | KEY_4 | X | KEY_8 | >> ------------------------------------------------------ >> | GPIO 4 | KEY_1 | KEY_0 | KEY_7 | KEY_8 | X | >> ------------------------------------------------------ >> X - invalid key >> KEY_x - preferred key code > > That should be pointed somewhere very clearly, thanks for the > description. Also what is than the benefit of the original matrix_keypad > driver? It looks like this driver has smaller number of features than matrix-keypad, so it should be integrated into the matrix-keypad. matrix-keypad features are superset to this one. Best regards, Krzysztof