Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 34252a43 authored by Chetan C R's avatar Chetan C R Committed by Chetan C R
Browse files

msm: keypad: fix matrix row/column scan issue on msm8905 qrd



Due to weak pull up of column and weak row pull down
mute/unmute key issue observed during VT call. So,
ignoring half level voltage due to weak Pull Up/Down
fixes the issue from driver side.

Change-Id: Ic5886ccec8f5cf8b276372108318416cec28507b
Signed-off-by: default avatarChetan C R <cravin@codeaurora.org>
parent af0c859a
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -131,12 +131,14 @@ static void matrix_keypad_scan(struct work_struct *work)
	/* assert each column and read the row status out */
	for (col = 0; col < pdata->num_col_gpios; col++) {

		for (row = 0; row < pdata->num_row_gpios; row++) {
			activate_col(pdata, col, true);

		for (row = 0; row < pdata->num_row_gpios; row++)
			new_state[col] |=
				row_asserted(pdata, row) ? (1 << row) : 0;

			gpio_direction_output(pdata->col_gpios[col], 0);
			new_state[col] &=
				row_asserted(pdata, row) ? ~(1 << row) : ~(0);
		}
		if (new_state[col])
			count_state++;
		activate_col(pdata, col, false);