On Wed, Jun 28, 2023 at 08:47:00AM +0200, Johan Hovold wrote: > On Wed, Jun 28, 2023 at 10:55:57AM +0530, Manivannan Sadhasivam wrote: > > On Tue, Jun 27, 2023 at 05:27:32PM +0200, Johan Hovold wrote: > > > On Tue, Jun 27, 2023 at 06:54:06PM +0530, Manivannan Sadhasivam wrote: > > > > On Tue, Jun 27, 2023 at 10:53:06AM +0200, Johan Hovold wrote: > > > > > Unless explicitly specified the interrupt-parent property is inherited > > > > > from the parent node on Linux even though this may not be in full > > > > > compliance with the devicetree specification. > > > > > > > > > > Following commit 2d5cab9232ba ("arm64: dts: qcom: sc8280xp-pmics: > > > > > Specify interrupt parent explicitly"), add an explicit interrupt parent > > > > > also for the PMIC RTC node for the benefit of other operating systems > > > > > which may be confused by this omission. > > > > > > > > > > Note that any such OS must still implement a fallback to the root > > > > > interrupt domain as most devicetrees are written under the assumption > > > > > that the interrupt parent is inherited. > > > > > > > > > > Reported-by: Patrick Wildt <patrick@xxxxxxxxx> > > > > > Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> > > > > > > > > It is good to encode this in the binding and fix other such instances. > > > > > > Not sure about that. Perhaps the spec should be updated to match reality > > > instead... We have many more instances like this, even for this very > > > SoC, but apparently OpenBSD or whatever OS needs this falls back to the > > > root domain then. > > > > > > > Just because linux is doing it in a different way doesn't warrant an amendment > > to the spec IMO. > > My point is that it's apparently not just Linux as most devicetrees work > this way at least for the root domain. And then it may be time to update > the spec in some way. I'm not sure about the point you're trying to make. In OpenBSD's implementation, which I think complies with the spec, for non-extended interrupts we check the node's (or all its parents') interrupt-parent property. Technically the SPMI arbiter could define an interrupt-parent that points to itself, because it's using interrupts-extended anyway to point to the PDC. But that would feel a bit stupid and not really correct. Alternatively each child node could have interrupt-parent. That said, I understand the point that it might make sense to amend the spec so that if a parent node is an interrupt-controller, that's most probably interrupt parent, unless an interrupt-parent property shows up before. I would like to add that OpenBSD supports a number of SoCs for quite some years and this is the first time I've hit an issue with interrupts that were not designed in a way for the current spec to work. That said we obviously support quite fewer SoCs/boards in total compared to Linux. Cheers, Patrick