[PATCH RESEND] Input: omap-keypad: dynamically handle register offsets
Poddar, Sourav
sourav.poddar at ti.com
Tue Apr 10 06:30:34 EDT 2012
Hi Felipe,
On Tue, Apr 10, 2012 at 3:46 PM, Felipe Balbi <balbi at ti.com> wrote:
>
> On Tue, Apr 10, 2012 at 03:37:28PM +0530, Poddar, Sourav wrote:
> > Hi Felipe,
> >
> > On Tue, Apr 10, 2012 at 2:54 PM, Felipe Balbi <balbi at ti.com> wrote:
> >
> > On Tue, Apr 03, 2012 at 10:52:26AM +0530, Sourav Poddar wrote:
> > > +static int kbd_write_irqstatus(struct omap4_keypad *keypad_data,
> > > + u32 offset, u32 value)
> > > +{
> > > + return __raw_writel(value, keypad_data->base + offset);
> > > +}
> > > +
> > > +static int kbd_write_irqenable(struct omap4_keypad *keypad_data,
> > > + u32 offset, u32 value)
> > > +{
> > > + return __raw_writel(value, keypad_data->base + offset);
> > > +}
> >
> > if this only writes to irqenable, why do you pass offset as an argument?
> > likewise for irqstatus.
> >
> >
> > Actually, here the offset is the "irqenable" register addresss offset and
> > "irqstatus" register
> > address offset from the base address.
> > Since, the above two address are different in case of Omap4 and omap5, we are
> > passing an offset
> > depending on the particular revision of the keyboard selected during probe.
>
> but you already have those in keypad_data->irqenable/irqstatus right ?
Yes.
>
> Meaning you can access them directly here and save on the arguments:
>
> static int kbd_write_irqenable(struct omap4_keypad *keypad_data, u32 value)
> {
> return __raw_writel(value, keypad_data->base + keypad_data->irqenable);
> }
>
Thanks a lot for pointing this out. Yes, we should be able to directly use
the driver data for the above api.
Will make the necessary change in the next version.
~Sourav
>
>
> --
> balbi
More information about the linux-arm-kernel
mailing list