On Fri, Mar 7, 2025 at 6:29 AM Sverdlin, Alexander <alexander.sverdlin@xxxxxxxxxxx> wrote: > > Dear DT and bindings maintainers! > > I'm facing a dilemma trying to provide new bindings for an interrupt > controller which only has one interrupt in one configuration. It must > be modelled in the DT because its driver has to acknowledge the IRQ > request in HW, but otherwise there is no information required to > select or configure this single interrupt. > > Logically thinking the above would mean #interrupt-cells = <0> in this > interrupt-controller node. You don't need #interrupt-cells unless you have a consumer with 'interrupts". And "interrupts" requires at least one cell. I suppose you could use "interrupts-extended", but that was intended just for different parents, not 0 cells. > And except all the hell breaks loose in the drivers/of/irq.c I see > no other issues with this. For this reason alone, I would just use 1 cell and move on. > Do you see this as definitely illegal combination? (Aside of the > two already existing examples in both arch/.../*.dts and in bindings, > one marked as "will not be an irq parent" and another example being > an MSI controller, probably taking other code paths. I think all these cases are just to abuse IRQCHIP_DECLARE() as they are all MSI controllers. It's been on my radar to fix these. Rob