Hi, On Sat, Jan 08, 2011 at 09:25:56PM +0300, Sergei Shtylyov wrote: > Hello. > > I wrote: > > >>>musb_probe() only regards 0 as a wrong IRQ number, despite > >>>platform_get_irq() > >>>that it calls returns -EXDEV in that case. It leads to > >>>musb_init_controller() > >>>calling request_irq() with a negative IRQ number, and when it naturally > >>>fails, the following is printed to the console: > > >>>request_irq -6 failed! > >>>musb_init_controller failed with status -19 > > >>>Fix musb_probe() to filter out the error values as well as 0. > > >>>Signed-off-by: Sergei Shtylyov<sshtylyov@xxxxxxxxxxxxx> > > >>>--- > >>>This patch is against the recent Linus' tree. > > >>> drivers/usb/musb/musb_core.c | 2 +- > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > > >>>Index: usb-2.6/drivers/usb/musb/musb_core.c > >>>=================================================================== > >>>--- usb-2.6.orig/drivers/usb/musb/musb_core.c > >>>+++ usb-2.6/drivers/usb/musb/musb_core.c > >>>@@ -2221,7 +2221,7 @@ static int __init musb_probe(struct plat > >>> void __iomem *base; > >>> > >>> iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0); > >>>- if (!iomem || irq == 0) > >>>+ if (!iomem || irq <= 0) > > >>isn't irq 0 a valid IRQ number ?? How about chaging to irq < 0 instead ? > > > IRQ0 is generally not considered a valid IRQ -- NO_IRQ is > >defined as 0. > > Oops, it's only #define'd this way for PPC. ARM and most other > arches (that #define it at all) use -1. > > >AFAIK, that decision comes from Linus. > > Nevertheless, Linus has declared IRQ0 illegal -- to be remapped, > where it exists. Any pointers to that ? -- balbi -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html