Commit c8f2ad68 authored by Tudor Ambarus's avatar Tudor Ambarus Committed by Rob Herring
Browse files

dt-bindings: crypto: Convert Atmel AES to yaml



Convert Atmel AES documentation to yaml format. With the conversion the
clock and clock-names properties are made mandatory. The driver returns
-EINVAL if "aes_clk" is not found, reflect that in the bindings and make
the clock and clock-names properties mandatory. Update the example to
better describe how one should define the dt node.

Signed-off-by: default avatarTudor Ambarus <tudor.ambarus@microchip.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220211093922.456634-2-tudor.ambarus@microchip.com
parent 2e8185fc
Loading
Loading
Loading
Loading
+66 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2022 Microchip Technology, Inc. and its subsidiaries
%YAML 1.2
---
$id: http://devicetree.org/schemas/crypto/atmel,at91sam9g46-aes.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Atmel Advanced Encryption Standard (AES) HW cryptographic accelerator

maintainers:
  - Tudor Ambarus <tudor.ambarus@microchip.com>

properties:
  compatible:
    const: atmel,at91sam9g46-aes

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    const: aes_clk

  dmas:
    items:
      - description: TX DMA Channel
      - description: RX DMA Channel

  dma-names:
    items:
      - const: tx
      - const: rx

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names
  - dmas
  - dma-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/at91.h>
    #include <dt-bindings/dma/at91.h>

    aes: crypto@e1810000 {
      compatible = "atmel,at91sam9g46-aes";
      reg = <0xe1810000 0x100>;
      interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
      clocks = <&pmc PMC_TYPE_PERIPHERAL 27>;
      clock-names = "aes_clk";
      dmas = <&dma0 AT91_XDMAC_DT_PERID(1)>,
             <&dma0 AT91_XDMAC_DT_PERID(2)>;
      dma-names = "tx", "rx";
    };
+0 −20
Original line number Diff line number Diff line
@@ -2,26 +2,6 @@

These are the HW cryptographic accelerators found on some Atmel products.

* Advanced Encryption Standard (AES)

Required properties:
- compatible : Should be "atmel,at91sam9g46-aes".
- reg: Should contain AES registers location and length.
- interrupts: Should contain the IRQ line for the AES.
- dmas: List of two DMA specifiers as described in
        atmel-dma.txt and dma.txt files.
- dma-names: Contains one identifier string for each DMA specifier
             in the dmas property.

Example:
aes@f8038000 {
	compatible = "atmel,at91sam9g46-aes";
	reg = <0xf8038000 0x100>;
	interrupts = <43 4 0>;
	dmas = <&dma1 2 18>,
	       <&dma1 2 19>;
	dma-names = "tx", "rx";

* Triple Data Encryption Standard (Triple DES)

Required properties: