Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

dt-bindings: iommu: arm,smmu-v3: make PRI IRQ optional

The Page Request Interface (PRI) is an optional PCIe feature. As such, a
SMMU would not need to handle it if the PCIe host bridge or the SMMU
itself do not implement it. Also an SMMU could be connected to a platform
device, without any PRI functionality whatsoever.
In all cases there would be no SMMU PRI queue interrupt to be wired up
to an interrupt controller.
At the moment, with the "eventq,gerror,priq,cmdq-sync" order, we
would need to sacrifice the command queue sync interrupt as well, which
might not be desired.

Relax the binding to allow specifying certain useful combinations of
wired interrupts, for instance just the "gerror" interrupt, or omitting
both "pri" and "cmdq-sync".

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220506140533.3566431-2-andre.przywara@arm.com

authored by

Andre Przywara and committed by
Rob Herring
e4783856 1c591c8f

+11 -5
+11 -5
Documentation/devicetree/bindings/iommu/arm,smmu-v3.yaml
··· 37 37 hardware supports just a single, combined interrupt line. 38 38 If provided, then the combined interrupt will be used in preference to 39 39 any others. 40 - - minItems: 2 40 + - minItems: 1 41 41 items: 42 - - const: eventq # Event Queue not empty 43 - - const: gerror # Global Error activated 44 - - const: priq # PRI Queue not empty 45 - - const: cmdq-sync # CMD_SYNC complete 42 + - enum: 43 + - eventq # Event Queue not empty 44 + - gerror # Global Error activated 45 + - const: gerror 46 + - enum: 47 + - cmdq-sync # CMD_SYNC complete 48 + - priq # PRI Queue not empty 49 + - enum: 50 + - cmdq-sync 51 + - priq 46 52 47 53 '#iommu-cells': 48 54 const: 1