On Thursday 02 October 2008 16:06:41 Felipe Balbi wrote:
> On Thu, Oct 02, 2008 at 04:01:17PM +0300, ext Peter Ujfalusi wrote:
> >
> > Hello,
> >
> > the diff between l-o and mainline are these commits regarding to
> > omap-keypad.c:
> >
> > commit fdee8764947cde1e6933e7d981ce5b9de00e83e6
> > Author: Tony Lindgren <[EMAIL PROTECTED]>
> > Merge current mainline tree into linux-omap tree
> >
> > commit ed39c59ff267249e7e789ea3bb64afc1e9afb5bd
> > Author: Russell King <[EMAIL PROTECTED]>
> > omap: fix a load of "warning: symbol 'xxx' was not declared. Should it be
> > static?"
> >
> > commit e85a9daa48453a4e7ffedf174b4358cdb444fbbb
> > Author: David Brownell <[EMAIL PROTECTED]>
> > some drivers switch away from OMAP-specific GPIO calls
> >
> > Should I take the relevant parts from these commits and send it to
> > linux-input?
> >
> > Also there are other things broken in the omap-keypad driver.
> > One thing came to my mind is in the omap_kp_enable_store:
> > No matter what platform the code is running it tries to
> > enable/disable IRQ number 33 (IH2_BASE + 1), which is not a nice thing
> > to do...
>
> you can pass the irq number via a struct resource and use
> platform_get_irq() on driver probe and exit calls to handle the
> request_irq() and free_irq();
>
> Then you're sure the irq is correct as long as the struct resource as
> well initialized.
Yes, I know that, I just mentioned that other things are still broken in the
omap-keypad driver.
In the OMAP1 board files the resource is filled in, but in the driver you can
see this:
static ssize_t omap_kp_enable_store(struct device *dev, struct device_attribute
*attr,
const char *buf, size_t count)
.
.
if (state != kp_enable) {
if (state)
enable_irq(INT_KEYBOARD);
else
disable_irq(INT_KEYBOARD);
kp_enable = state;
}
.
.
So, pretty much not a sane thing to do...
It is easy to fix, but that was not my point.
I'll make a patch to fix this one.
Péter
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html