Lines Matching refs:matrix
86 struct ec_keymatrix_entry *matrix; /* the key matrix info */ member
202 ec->matrix = calloc(ec->matrix_count, sizeof(*ec->matrix)); in keyscan_read_fdt_matrix()
203 if (!ec->matrix) { in keyscan_read_fdt_matrix()
210 struct ec_keymatrix_entry *matrix = &ec->matrix[upto]; in keyscan_read_fdt_matrix() local
214 matrix->row = word >> 24; in keyscan_read_fdt_matrix()
215 matrix->col = (word >> 16) & 0xff; in keyscan_read_fdt_matrix()
216 matrix->keycode = word & 0xffff; in keyscan_read_fdt_matrix()
219 if (matrix->row >= KEYBOARD_ROWS || in keyscan_read_fdt_matrix()
220 matrix->col >= KEYBOARD_COLS) { in keyscan_read_fdt_matrix()
222 __func__, matrix->row, matrix->col); in keyscan_read_fdt_matrix()
245 const struct ec_keymatrix_entry *matrix; in cros_ec_keyscan() local
255 for (i = 0, matrix = ec->matrix; i < ec->matrix_count; i++, matrix++) { in cros_ec_keyscan()
260 if (matrix->keycode == key[j]) in cros_ec_keyscan()
265 debug("%d: %d,%d\n", matrix->keycode, matrix->row, in cros_ec_keyscan()
266 matrix->col); in cros_ec_keyscan()
267 ec->keyscan[matrix->col] |= 1 << matrix->row; in cros_ec_keyscan()