oh, that's a bummer. I switched from SPI to I2C to avoid adding CS pins. I would hate to find myself in the same situation but with IRQ open-collector pins (you can stack them and serve all expansions in the same IRQ handler).PhilE wrote: ↑Fri Mar 22, 2019 4:37 pmNo - the interrupt pins have to be unique, otherwise the debug module will log an error like this:Can I keep the same interrupt int_pin=24 for the 2 modules or should the modules have different interrupt PIN ?(Error 16 is EBUSY)
Code: Select all
[ 10.392344] sc16is7xx 1-0048: devm_request_irq -> -16
I'll update the standard overlay with this fix, then look for other overlays with similar potential issues.
First I have to assemble a HAT with an extended I2C driver (P8B715) to connect the serial interfaces I already have. Already bought the HAT protoboard, connectors, drivers, etc. But I still have some projects in the queue I may be able to try it next weekend.PhilE wrote: ↑Thu Dec 12, 2019 11:29 amLinux is perfectly happy to share interrupts, but the driver has to request a shared interrupt otherwise it is assumed to be for its exclusive use. The sc16is7xx driver doesn't use the IRQF_SHARED flag, which may be as a result of it deferring all interrupt handling to a thread (because it can't use I2C to access registers with interrupts disabled).
It may be possible to hack the driver to allow shared use without having to make more substantial changes - how do you feel about building your own kernel (https://www.raspberrypi.org/documentati ... uilding.md)?