On Thu, Apr 10, 2014 at 11:30 AM, Barry Song <baohua@xxxxxxxxxx> wrote: >> with this: >> # cat /proc/interrupts >> CPU0 >> 16: 944 irq_sirfsoc 0 sirfsoc_timer0 >> ... >> 105: 0 sirf-gpio-irq 13 extcon-gpio >> ... >> >> i will do a debug to find why. any idea from you? > > hi linus, after reading the source codes of GPIOLIB_IRQCHIP, i think > the new irq number after applying your patch should not be a problem. > the reason is that you create irq mapping earlier in > gpiochip_irqchip_add(), but the old codes did it later on demand in > sirfsoc_gpio_to_irq(). Yeah it's just some number, it's dynamically allocated to you should not need to worry about that. It could even change with probe order due to unpredictable things. > the real problem here is that we have several gpio banks, but there is > only one device node, so i think this should be not good and will make > the gpiochip_irq_reqres(), gpiochip_irq_relres() fail since > sub-devices can only point its interrupt parent to the only gpio node, > this makes hwirq bigger than the size of the gpio bank. > > so will you wait for me to send a patch to merge all banks into one > gpio_chip just as i have done by commit > https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=8daeffb058f78deb0b0ef2cb67ef741c38788bf9 > to merge irq_domain? Sure I'm standing by. Bonus points if you rebase my patch on top of it and send it as patch 2/2 :-D Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html