RE: [PATCH v3 1/1] input: add support for Nomadik SKE keypad controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Dmitry,

>-----Original Message-----
>From: Dmitry Torokhov [mailto:dmitry.torokhov@xxxxxxxxx]
>>
>> +static irqreturn_t ske_keypad_irq(int irq, void *dev_id)
>> (...)
>> +       /*
>> +        * if KPASON is not ready, we cannot read data registers
>> +        * so wait for a debounce period; if still not settled,
>> +        * we fire a timer and exit the IRQ
>> +        */
>> +       while ((readl(keypad->reg_base + SKE_CR) & SKE_KPASON) && timeout--)
>> +               cpu_relax();
>>
>> Active polling. Surely you want this to be preemptible? Thus ->
>> threaded handler.
>>
>
>Actually I'd like that form of active polling not be there at all.
>

Hmm. Could you please help me out on how I can proceed with the 
following two HW constraints:

1. KPASON polling needs to be waited in case of a multi key press so that
the keypad registers can stabilize. This is what the TRM states.

2. If I move enabling the interrupts to the timer snippet, I end up breaking multi-key
detection.

Regards,
Sundar
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux