Re: [PATCH] input: add support for generic GPIO-based matrix keypad

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

 



Hi Paulius,

On Fri, Jul 17, 2009 at 2:50 PM, Paulius
Zaleckas<paulius.zaleckas@xxxxxxxxxxxx> wrote:
> Trilok Soni wrote:
>> Hi Paulius,
>>
>> On Fri, Jul 17, 2009 at 1:21 PM, Paulius
>> Zaleckas<paulius.zaleckas@xxxxxxxxxxxx> wrote:
>>> Eric Miao wrote:
>>>> Dmitry Torokhov wrote:
>>>>> Hi Eric,
>>>>>
>>>>> On Fri, Jun 12, 2009 at 09:26:43PM +0800, Eric Miao wrote:
>>>>>> Hi Dmitry,
>>>>>>
>>>>>> I've tested the driver code, and it's basically OK except for two minor
>>>>>> fixes:
>>>>>>
>>>>>> 1) GPIO and IRQs have to be initialized before input_register_device(),
>>>>>> otherwise input->open() will be invoked before that, which will schedule
>>>>>> an immediate scan work and fail.
>>>>>>
>>>>>> 2) disable_irq_rows() called in init_matrix_gpio() so that by default it's
>>>>>> initialized to disabled - and will be enabled by input->open()
>>>>>>
>>>>> Could you please take a look at the driver as it is commited to
>>>>> 'for-linus' branch of my tree and let me know if you see anything wrong
>>>>> there? Otherwise I inted to submit it in my next update to Linus.
>>>>>
>>>> Sorry Dmitry,
>>>>
>>>> Reply so late and til now I have some time to test this. The patch there
>>>> still has at least one issue I guess - the keycodes[] allocation size
>>>> should be MATRIX_MAX_ROWS * MATRIX_MAX_COLS if I understand correctly.
>>>>
>>>> I'm experiencing a problem of keypad->pdata being overwritten, and found
>>>> keycodes are actually accessed by [(row << 4) + col], so that should be
>>>> a full range.
>>> As this driver is already in the mainline and I was trying to use it...
>>> I get various kernel crashes due to this keycodes[] allocation size bug.
>>> Care to send a patch for this bug?
>>>
>>>> And one more minor issue that may not be significant is the hardcoding of
>>>> the '4' in this (row << 4).
>>>>
>>>> Some of the key hits on my Littleton just worked smoothly with the above
>>>> correction, but not all - some key hits just gave intermittent events, I
>>>> have no idea how's that - maybe related to my scan delay and debouncing
>>>> settings
>>
>> Did you tried assigning max_keypmap_size in platform data to
>> MATRIX_MAX_COLS * MATRIX_MAX_ROWS ?
>>
>
> Yes, this fixes crashes. But this is just workaround for bug in driver.
>

As you have access to h/w, care to submit a patch which fixes this?



-- 
---Trilok Soni
http://triloksoni.wordpress.com
http://www.linkedin.com/in/triloksoni
--
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