xref: /linux/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml (revision c8f2ad6869b56233ba4d00dc090e11bb41a55205)
1*c8f2ad68STudor Ambarus# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*c8f2ad68STudor Ambarus# Copyright (C) 2022 Microchip Technology, Inc. and its subsidiaries
3*c8f2ad68STudor Ambarus%YAML 1.2
4*c8f2ad68STudor Ambarus---
5*c8f2ad68STudor Ambarus$id: http://devicetree.org/schemas/crypto/atmel,at91sam9g46-aes.yaml#
6*c8f2ad68STudor Ambarus$schema: http://devicetree.org/meta-schemas/core.yaml#
7*c8f2ad68STudor Ambarus
8*c8f2ad68STudor Ambarustitle: Atmel Advanced Encryption Standard (AES) HW cryptographic accelerator
9*c8f2ad68STudor Ambarus
10*c8f2ad68STudor Ambarusmaintainers:
11*c8f2ad68STudor Ambarus  - Tudor Ambarus <tudor.ambarus@microchip.com>
12*c8f2ad68STudor Ambarus
13*c8f2ad68STudor Ambarusproperties:
14*c8f2ad68STudor Ambarus  compatible:
15*c8f2ad68STudor Ambarus    const: atmel,at91sam9g46-aes
16*c8f2ad68STudor Ambarus
17*c8f2ad68STudor Ambarus  reg:
18*c8f2ad68STudor Ambarus    maxItems: 1
19*c8f2ad68STudor Ambarus
20*c8f2ad68STudor Ambarus  interrupts:
21*c8f2ad68STudor Ambarus    maxItems: 1
22*c8f2ad68STudor Ambarus
23*c8f2ad68STudor Ambarus  clocks:
24*c8f2ad68STudor Ambarus    maxItems: 1
25*c8f2ad68STudor Ambarus
26*c8f2ad68STudor Ambarus  clock-names:
27*c8f2ad68STudor Ambarus    const: aes_clk
28*c8f2ad68STudor Ambarus
29*c8f2ad68STudor Ambarus  dmas:
30*c8f2ad68STudor Ambarus    items:
31*c8f2ad68STudor Ambarus      - description: TX DMA Channel
32*c8f2ad68STudor Ambarus      - description: RX DMA Channel
33*c8f2ad68STudor Ambarus
34*c8f2ad68STudor Ambarus  dma-names:
35*c8f2ad68STudor Ambarus    items:
36*c8f2ad68STudor Ambarus      - const: tx
37*c8f2ad68STudor Ambarus      - const: rx
38*c8f2ad68STudor Ambarus
39*c8f2ad68STudor Ambarusrequired:
40*c8f2ad68STudor Ambarus  - compatible
41*c8f2ad68STudor Ambarus  - reg
42*c8f2ad68STudor Ambarus  - interrupts
43*c8f2ad68STudor Ambarus  - clocks
44*c8f2ad68STudor Ambarus  - clock-names
45*c8f2ad68STudor Ambarus  - dmas
46*c8f2ad68STudor Ambarus  - dma-names
47*c8f2ad68STudor Ambarus
48*c8f2ad68STudor AmbarusadditionalProperties: false
49*c8f2ad68STudor Ambarus
50*c8f2ad68STudor Ambarusexamples:
51*c8f2ad68STudor Ambarus  - |
52*c8f2ad68STudor Ambarus    #include <dt-bindings/interrupt-controller/irq.h>
53*c8f2ad68STudor Ambarus    #include <dt-bindings/interrupt-controller/arm-gic.h>
54*c8f2ad68STudor Ambarus    #include <dt-bindings/clock/at91.h>
55*c8f2ad68STudor Ambarus    #include <dt-bindings/dma/at91.h>
56*c8f2ad68STudor Ambarus
57*c8f2ad68STudor Ambarus    aes: crypto@e1810000 {
58*c8f2ad68STudor Ambarus      compatible = "atmel,at91sam9g46-aes";
59*c8f2ad68STudor Ambarus      reg = <0xe1810000 0x100>;
60*c8f2ad68STudor Ambarus      interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
61*c8f2ad68STudor Ambarus      clocks = <&pmc PMC_TYPE_PERIPHERAL 27>;
62*c8f2ad68STudor Ambarus      clock-names = "aes_clk";
63*c8f2ad68STudor Ambarus      dmas = <&dma0 AT91_XDMAC_DT_PERID(1)>,
64*c8f2ad68STudor Ambarus             <&dma0 AT91_XDMAC_DT_PERID(2)>;
65*c8f2ad68STudor Ambarus      dma-names = "tx", "rx";
66*c8f2ad68STudor Ambarus    };
67