On Thu, Mar 30, 2023 at 09:29:23AM +0100, Cristian Marussi wrote: > On Wed, Mar 29, 2023 at 06:44:31PM +0100, Sudeep Holla wrote: > > On Wed, Mar 29, 2023 at 04:39:35PM +0100, Cristian Marussi wrote: > > > The ARM MHUv2 Receiver block can indeed support more interrupts, up to the > > > maximum number of available channels, but anyway no more than the maximum > > > number of supported interrupt for an AMBA device. > > > > > > Signed-off-by: Cristian Marussi <cristian.marussi@xxxxxxx> > > > --- > > > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > > > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@xxxxxxxxxx> > > > Cc: devicetree@xxxxxxxxxxxxxxx > > > > > > .../devicetree/bindings/mailbox/arm,mhuv2.yaml | 13 +++++++++---- > > > 1 file changed, 9 insertions(+), 4 deletions(-) > > > > > > diff --git a/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml b/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml > > > index a4f1fe63659a..5a57f4e2a623 100644 > > > --- a/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml > > > +++ b/Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml > > > @@ -69,10 +69,15 @@ properties: > > > > > > interrupts: > > > description: | > > > - The MHUv2 controller always implements an interrupt in the "receiver" > > > - mode, while the interrupt in the "sender" mode was not available in the > > > - version MHUv2.0, but the later versions do have it. > > > - maxItems: 1 > > > + The MHUv2 controller always implements at least an interrupt in the > > > + "receiver" mode, while the interrupt in the "sender" mode was not > > > + available in the version MHUv2.0, but the later versions do have it. > > > + In "receiver" mode, beside a single combined interrupt, there could be > > > + multiple interrupts, up to the number of implemented channels but anyway > > > + no more than the maximum number of interrupts potentially supported by > > > + AMBA. > > > + minItems: 1 > > > + maxItems: 9 > > > > Hi, > > > I am not sure 9 is the correct value here. IIUC it is just what Linux defines > > as AMBA_NR_IRQS. Looking at the history it was bumped from 2 to 9 for use > > by PL330 DMA driver. I couldn't find anything to relate this 9 in any > > AMBA or other related specification. > > > > Yes, I could not find either where the 9 comes from, but it is what > currently each amba device is limited to, at the software level, in terms of > interrupts that can be detected. IIRC, the PL330 can have an interrupt per context with up to 8 contexts and then 1 global interrupt. > > > Ideally I would say we don't know what the max here. We just have a platform > > implementing 2 interrupts now. Do we for with 2 for now and change it if some > > new users require more in the future ? > > > > By the spec seems to me that the maximum number of interrupts are equal to > the maximum possible channels (124), or one combined interrupt. > > But these in turn, as said, are capped by the AMBA_NR_IRQS and I have > only seen one system using 2. (for which I need this series to work) > > > I will leave that to the DT maintainers but 9 is simply random based on Linux > > code so I would rather choose some other random number with a better reasoning > > than 9 as AMBA code in the kernel is limiting it to 9. > > > > Agreed. Aiming to describe any possible hw in the DT, I would say 124 at > this point. (even though implausible not to use the combined interrupt > at that point...) Then use 124, but please describe how you get that in the description. Rob