[PATCH 1/2] dt-bindings: crypto: inside-secure,safexcel: make eip/mem IRQ optional

Krzysztof Kozlowski krzk at kernel.org
Mon Jul 21 02:35:18 PDT 2025


On Sun, Jul 20, 2025 at 07:49:02PM +0200, Aleksander Jan Bajkowski wrote:
> Binding for this cryptographic engine defined 6 interrupts since its
> beginning. It seems however only 4 rings IRQs are really required for
> operating this hardware. Linux driver doesn't use "eip" or "mem" IRQs

Are the lines there in hardware or not? See writing bindings - they
exactly cover this case.

> and it isn't clear if they are always available (MT7986 devicetree
> doesn't specify them).

You need SoC specific compatibles which will narrow this per variant of
the block.

> 
> The hardware reference manual [1] for the EIP-197 IP core only defines
> ring interrupts and a global interrupt ("eip"). Ring interrupts can
> optionaly be routed via the main interrupt. Role of the "mem" interrupt
> is unknown.
> 
> This deals with:
> arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dtb: crypto at 10320000: interrupts: [[0, 116, 4], [0, 117, 4], [0, 118, 4], [0, 119, 4]] is too short
>         from schema $id: http://devicetree.org/schemas/crypto/inside-secure,safexcel.yaml#
> arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dtb: crypto at 10320000: interrupt-names: ['ring0', 'ring1', 'ring2', 'ring3'] is too short
>         from schema $id: http://devicetree.org/schemas/crypto/inside-secure,safexcel.yaml#
> 
> [1] https://www.scribd.com/document/665924595/Security-IP-197-HW3-4-Hardware-Reference-Manual-RevA
> Cc: Antoine Tenart <atenart at kernel.org>
> Cc: Sam Shih <sam.shih at mediatek.com>
> CC: Rafał Miłecki <rafal at milecki.pl>
> Signed-off-by: Aleksander Jan Bajkowski <olek2 at wp.pl>
> ---
>  .../crypto/inside-secure,safexcel.yaml        | 21 ++++++++++++-------
>  1 file changed, 14 insertions(+), 7 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/crypto/inside-secure,safexcel.yaml b/Documentation/devicetree/bindings/crypto/inside-secure,safexcel.yaml
> index 343e2d04c797..97af96bfe5f6 100644
> --- a/Documentation/devicetree/bindings/crypto/inside-secure,safexcel.yaml
> +++ b/Documentation/devicetree/bindings/crypto/inside-secure,safexcel.yaml
> @@ -26,16 +26,23 @@ properties:
>      maxItems: 1
>  
>    interrupts:
> +    minItems: 4
>      maxItems: 6
>  
>    interrupt-names:
> -    items:
> -      - const: ring0
> -      - const: ring1
> -      - const: ring2
> -      - const: ring3
> -      - const: eip
> -      - const: mem

You just miss minItems: 4 and no need for all the rest.

Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list