Re: [PATCH v1] Input: tegra-kbc - enable key interrupt for wakeup
From: Datta, Shubhrajyoti
Date: Tue Jan 24 2012 - 00:25:07 EST
Hi Rakesh,
On Thu, Jan 19, 2012 at 11:51 PM, Rakesh Iyer <riyer@xxxxxxxxxx> wrote:
>> if (device_may_wakeup(&pdev->dev)) {
>> disable_irq_wake(kbc->irq);
>> tegra_kbc_setup_wakekeys(kbc, false);
>> + /* We will use fifo interrupts for key detection. */
>> + tegra_kbc_set_keypress_interrupt(kbc, false);
> Why do yo disable on resume why not have it enabled always?
>
>>
>> /* Restore the resident time of continuous polling mode. */
>> writel(kbc->cp_to_wkup_dly, kbc->mmio + KBC_TO_CNT_0);
>
> For the relevant discussion, Tegra KBC provides the following interrupts -
> a) The keypress interrupt which is generated as soon as a key is pressed,
> before matrix scanning begins.
> b) FIFO interrupt which is generated when actual keys are decoded from the matrix,
> and put into the FIFO.
>
> During normal operation the keypress interrupt is not useful as we have to wait for the
> keys to make it into the FIFO before reporting it to the higher layers.
>
> Since we have turned off scanning(in the following commit) we cannot use the FIFO interrupt
> during the resume, so we rely on the keypress interrupt and generate the wakeup key.
>
> Commit that turned off scanning
>
> Input: tegra-kbc - fix wakeup from suspend
>
> For wakeup to be reliable, kbc needs to be in interrupt mode before suspend.
Does it need to be disabled at resume?
> Created common routine to control the FIFO interrupt.
> Added synchronization to ensure orderly suspend.
>
>
> Regards
> Rakesh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/