Re: [PATCH v2 1/1] dt-bindings: interrupt-controller: fsl,ls-extirq: workaround wrong interrupt-map number

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

 



On Thu, Oct 03, 2024 at 05:43:15PM -0400, Frank Li wrote:
> The driver(drivers/irqchip/irq-ls-extirq.c) have not use standard DT
> function to parser interrupt-map. So it doesn't consider '#address-size'
> in parent interrupt controller, such as GIC.
> 
> When dt-binding verify interrupt-map, item data matrix is spitted at
> incorrect position. So cause below warning:
> 
> arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dtb: interrupt-controller@14:
> interrupt-map: [[0, 0, 1, 0, 0, 4, 1, 0], [1, 0, 1, 4, 2, 0, 1, 0], ...
> is too short
> 
> Reduce minItems and maxItems to workaround this warning for
> 'fsl,ls1088a-extirq', 'fsl,ls2080a-extirq' and fsl,lx2160a-extirq.
> Other keep the same restriction.
> 
> Signed-off-by: Frank Li <Frank.Li@xxxxxxx>
> ---
> Change from v1 to v2
> - remove duplicate function in commit message
> - only reduce miniItems for after 1088a chips
> - maxItems change to 9. Otherwise report too long.
> ---
>  .../interrupt-controller/fsl,ls-extirq.yaml   | 27 +++++++++++++++++--
>  1 file changed, 25 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.yaml b/Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.yaml
> index 199b34fdbefc4..1bfced6ed620c 100644
> --- a/Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.yaml
> +++ b/Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.yaml
> @@ -82,14 +82,37 @@ allOf:
>              enum:
>                - fsl,ls1043a-extirq
>                - fsl,ls1046a-extirq
> +    then:
> +      properties:
> +        interrupt-map:
> +          minItems: 12
> +          maxItems: 12
> +        interrupt-map-mask:
> +          items:
> +            - const: 0xf
> +            - const: 0
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
>                - fsl,ls1088a-extirq
>                - fsl,ls2080a-extirq
>                - fsl,lx2160a-extirq
> +# The driver(drivers/irqchip/irq-ls-extirq.c) have not use standard DT
> +# function function to parser interrupt-map. So it doesn't consider
> +# '#address-size' in parent interrupt controller, such as GIC.
> +#
> +# When dt-binding verify interrupt-map, item data matrix is spitted at
> +# incorrect position. Reduce minItems and maxItems to workaround this
> +# problem.
> +
>      then:
>        properties:
>          interrupt-map:
> -          minItems: 12
> -          maxItems: 12
> +          minItems: 8
> +          maxItems: 9

I think it is probably better to just not put in any constraints. It's 
never going to be parsed correctly.

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