RE: [PATCH 1/1] input: keyboard: Set configuration registers

From: Stephen Warren
Date: Tue Jan 31 2012 - 14:29:40 EST


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...

I'd rather PIN_CFG_IGNORE was the first enum, so it gets value 0, or this
probably won't solve the original issue?

--
nvpublic

--
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/