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

dt-bindings: crypto: Convert Atmel SHA to yaml



Convert Atmel SHA documentation to yaml format. With the conversion the
clock and clock-names properties are made mandatory. The driver returns
-EINVAL if "sha_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-4-tudor.ambarus@microchip.com
parent d63b583f
Loading
Loading
Loading
Loading
+60 −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-sha.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Atmel Secure Hash Algorithm (SHA) HW cryptographic accelerator

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

properties:
  compatible:
    const: atmel,at91sam9g46-sha

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    const: sha_clk

  dmas:
    maxItems: 1
    description: TX DMA Channel

  dma-names:
    const: tx

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-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>

    sha: crypto@e1814000 {
      compatible = "atmel,at91sam9g46-sha";
      reg = <0xe1814000 0x100>;
      interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
      clocks = <&pmc PMC_TYPE_PERIPHERAL 83>;
      clock-names = "sha_clk";
      dmas = <&dma0 AT91_XDMAC_DT_PERID(48)>;
      dma-names = "tx";
    };
+0 −25
Original line number Diff line number Diff line
* Atmel HW cryptographic accelerators

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

* Secure Hash Algorithm (SHA)

Required properties:
- compatible : Should be "atmel,at91sam9g46-sha".
- reg: Should contain SHA registers location and length.
- interrupts: Should contain the IRQ line for the SHA.

Optional properties:
- dmas: One 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. Only one "tx" string needed.

Example:
sha@f8034000 {
	compatible = "atmel,at91sam9g46-sha";
	reg = <0xf8034000 0x100>;
	interrupts = <42 4 0>;
	dmas = <&dma1 2 17>;
	dma-names = "tx";
};