On Monday, October 12, 2009 10:47 PM, Dmitry Torokhov wrote: > Hi Miguel, > > On Fri, Oct 09, 2009 at 11:27:05AM -0600, miguel.aguilar@xxxxxxxxxxxx wrote: >> From: Miguel Aguilar <miguel.aguilar@xxxxxxxxxxxx> >> >> Adds the driver for enabling keypad support for DaVinci platforms. >> >> DM365 is the only platform that uses this driver at the moment. >> > > Looks pretty good, I have one question: > >> +static void davinci_ks_write(struct davinci_ks *davinci_ks, u32 val, u32 addr) >> +{ >> + u32 base = (u32)davinci_ks->base; >> + >> + __raw_writel(val,(u32 *)(base + addr)); >> +} > > Do you really need these casts? I'd think that bare __raw_writel would > work just fine. The address for __raw_{write/read}* should be void __iomem *, davinci_ks->base should already be the correct type due to ioremap(). You can probably just change the whole thing to: +static void davinci_ks_write(struct davinci_ks *davinci_ks, u32 val, u32 addr) +{ + __raw_writel(val, davinci_ks->base + addr); +} + +static u32 davinci_ks_read(struct davinci_ks *davinci_ks, u32 addr) +{ + return __raw_readl(davinci_ks->base + addr); +} Regards, Hartley -- 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