Lines Matching refs:keypad_data
122 static int tca8418_write_byte(struct tca8418_keypad *keypad_data,
127 error = i2c_smbus_write_byte_data(keypad_data->client, reg, val);
129 dev_err(&keypad_data->client->dev,
141 static int tca8418_read_byte(struct tca8418_keypad *keypad_data,
146 error = i2c_smbus_read_byte_data(keypad_data->client, reg);
148 dev_err(&keypad_data->client->dev,
159 static void tca8418_read_keypad(struct tca8418_keypad *keypad_data)
161 struct input_dev *input = keypad_data->input;
167 error = tca8418_read_byte(keypad_data, REG_KEY_EVENT_A, ®);
169 dev_err(&keypad_data->client->dev,
187 code = MATRIX_SCAN_CODE(row, col, keypad_data->row_shift);
201 struct tca8418_keypad *keypad_data = dev_id;
205 error = tca8418_read_byte(keypad_data, REG_INT_STAT, ®);
207 dev_err(&keypad_data->client->dev,
216 dev_warn(&keypad_data->client->dev, "overflow occurred\n");
219 tca8418_read_keypad(keypad_data);
223 error = tca8418_write_byte(keypad_data, REG_INT_STAT, reg);
225 dev_err(&keypad_data->client->dev,
234 static int tca8418_configure(struct tca8418_keypad *keypad_data,
244 error |= tca8418_write_byte(keypad_data, REG_KP_GPIO1, reg);
245 error |= tca8418_write_byte(keypad_data, REG_KP_GPIO2, reg >> 8);
246 error |= tca8418_write_byte(keypad_data, REG_KP_GPIO3, reg >> 16);
249 error |= tca8418_write_byte(keypad_data, REG_DEBOUNCE_DIS1, reg);
250 error |= tca8418_write_byte(keypad_data, REG_DEBOUNCE_DIS2, reg >> 8);
251 error |= tca8418_write_byte(keypad_data, REG_DEBOUNCE_DIS3, reg >> 16);
256 error = tca8418_write_byte(keypad_data, REG_CFG,
266 struct tca8418_keypad *keypad_data;
295 /* Allocate memory for keypad_data and input device */
296 keypad_data = devm_kzalloc(dev, sizeof(*keypad_data), GFP_KERNEL);
297 if (!keypad_data)
300 keypad_data->client = client;
301 keypad_data->row_shift = row_shift;
304 error = tca8418_read_byte(keypad_data, REG_KEY_LCK_EC, ®);
313 keypad_data->input = input;
335 client->name, keypad_data);
343 error = tca8418_configure(keypad_data, rows, cols);