On Wed, Feb 03, 2016 at 06:00:58PM +0000, Will Deacon wrote: > The arm,gic-v3 binding was written with good intentions and doesn't > enforce interrupt-cells to be 3, therefore making it easy to extend > the irq description in future if necessary: > > > Cells 4 and beyond are reserved for future use. > > Unfortunately, this sentence is immediately followed up with: > > > When the 1st cell has a value of 0 or 1, cells 4 and beyond act as > > padding, and may be ignored. It is recommended that padding cells > > have a value of 0. The initial intention of this was to allow for new, longer entries which were identified by a new value in cell 1. Regardless, I agree that it should be a requirement that padding cells must be zero. > Consequently, any extensions to the PPI or SPI interrupt specifiers must > be able to work with random crap from legacy DTs, effectively > necessitating a new interrupt type in the first cell. Sigh. I'm not sure that's true if we allocate a new value for the 1st cell for "extended" PPI or SPI interrupt-sepcficiers (which presumably add restrictions). That would also allow old kernels to safely skip such interrupts rather than mis-parsing them. > This patch fixes the text so that additional, reserved cells are > required to be zero. This looks like a reasonable thing to require and > is already satisifed by the .dts files in-tree. > > Cc: Mark Rutland <mark.rutland@xxxxxxx> > Cc: Marc Zyngier <marc.zyngier@xxxxxxx> > Signed-off-by: Will Deacon <will.deacon@xxxxxxx> This patch itself makes sense, so FWIW: Acked-by: Mark Rutland <mark.rutland@xxxxxxx> Any proposed extention to the binding requires its own discussion. Thanks, Mark. > --- > .../devicetree/bindings/interrupt-controller/arm,gic-v3.txt | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.txt b/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.txt > index 7803e77d85cb..007a5b46256a 100644 > --- a/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.txt > +++ b/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.txt > @@ -24,9 +24,8 @@ Main node required properties: > 1 = edge triggered > 4 = level triggered > > - Cells 4 and beyond are reserved for future use. When the 1st cell > - has a value of 0 or 1, cells 4 and beyond act as padding, and may be > - ignored. It is recommended that padding cells have a value of 0. > + Cells 4 and beyond are reserved for future use and must have a value > + of 0 if present. > > - reg : Specifies base physical address(s) and size of the GIC > registers, in the following order: > -- > 2.1.4 > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html