Re: How legal is #interrupt-cells = <0>?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux