On 03/26/2012 11:17 PM, Shridhar Rasal wrote: > On 02/01/2012 01:17 AM, Dmitry Torokhov wrote: >> On Tue, Jan 31, 2012 at 11:29:35AM -0800, Stephen Warren wrote: >>> Dmitry Torokhov wrote at Tuesday, January 31, 2012 12:09 PM: >>>> On Thu, Dec 29, 2011 at 07:25:59PM -0800, Dmitry Torokhov wrote: >>>>> On Fri, Dec 09, 2011 at 03:17:54PM -0800, Stephen Warren wrote: >>>>>> Dmitry Torokhov wrote at Friday, December 09, 2011 2:25 PM: >>>>>>> On Friday, December 09, 2011 12:10:43 PM Stephen Warren wrote: >>>>>>>> Shridhar Rasal wrote at Friday, December 09, 2011 12:29 AM: >>>>>>>>> To: dmitry.torokhov@xxxxxxxxx >>>>>>>>> Cc: rydberg@xxxxxxxxxxx; Stephen Warren; Rakesh Iyer; >>>>>>>>> linux-kernel@xxxxxxxxxxxxxxx; linux- input@xxxxxxxxxxxxxxx; >>>>>>>>> linux-tegra@xxxxxxxxxxxxxxx; Shridhar Rasal Subject: [PATCH >>>>>>>>> 1/1] input: >>>>>>>>> keyboard: Set configuration registers >>>>>>>>> >>>>>>>>> -Set only REQUIRED row and column configuration register to >>>>>>>>> PROPER values to avoid continuously generating KBC input events. >>>>>>>>> -Use *en* field in pin_cfg, to check GPIO_x_ROW_EN register >>>>>>>>> should be set or clear. >>>>>>>>> >>>>>>>>> Signed-off-by: Shridhar Rasal<srasal@xxxxxxxxxx> >>>>>>>> I wondered if num==0 could be used instead of a new en field, >>>>>>>> but 0 is a >>>>>>>> valid row/column number, so no. As such, >>>>>>>> >>>>>>>> Acked-by: Stephen Warren<swarren@xxxxxxxxxx> >>>>>>> Can we pass in number of pin_cfg instances in pdata and simply do >>>>>>> not >>>>>>> mention unneeded pins instead? >>>>>> IIUC, the array is currently a fixed size (based on the set of pins >>>>>> Supported by the KBC), hence that won't work; there's an entry for >>>>>> each >>>>>> pin saying which row/column it is. >>>>>> >>>>>> However, I suppose if we were to change the structure of the pdata >>>>>> to be: >>>>>> >>>>>> struct tegra_kbc_pin_cfg { >>>>>> bool is_row; >>>>>> u8 row_col_id; >>>>>> u8 pin_id; >>>>>> }; >>>>>> >>>>>> Then struct tegra_kbc_platform_data could indeed have a pointer to a >>>>>> variable-sized array of these, which would avoid the "en" member. >>>>>> >>>>> How about we change bool to enum instead, like in the patch below? >>>> *ping* >>> That's conceptually fine by me. I was assuming you were asking Rakesh... >> Everyone... Anyone ;) >> >>> I'd rather PIN_CFG_IGNORE was the first enum, so it gets value 0, or >>> this >>> probably won't solve the original issue? >> The benefit of current definition is that it is compatible with old >> ones using bool... >> >> Thanks. > Sorry for delay in response. > I am OK with new definition. Agree, makes compatible with old definitions. > Thanks! Which new definition; the one in Dmitry's patch, or what I proposed above? Note that from what I recall, Dmitry's patch doesn't solve the problem. -- 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