public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/2] Add support for Texas Instruments DTHE V2 crypto accelerator
@ 2025-05-08 10:07 T Pratham
  2025-05-08 10:07 ` [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2 T Pratham
  0 siblings, 1 reply; 6+ messages in thread
From: T Pratham @ 2025-05-08 10:07 UTC (permalink / raw)
  To: Herbert Xu, David S . Miller, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: T Pratham, linux-crypto, devicetree, linux-kernel,
	Kamlesh Gurudasani, Vignesh Raghavendra, Praneeth Bajjuri,
	Manorit Chawdhry

This series adds support for TI DTHE V2 crypto accelerator. DTHE V2 is a
new crypto accelerator which contains multiple crypto IPs [1].
This series implements support for ECB and CBC modes of AES for the AES
Engine of the DTHE, using skcipher APIs of the kernel.

Tested with:
CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y

and tcrypt,
sudo modprobe tcrypt mode=500 sec=1

Signed-off-by: T Pratham <t-pratham@ti.com>
---
[1]: Section 14.6.3 (DMA Control Registers -> DMASS_DTHE)
Link: https://www.ti.com/lit/ug/sprujb4/sprujb4.pdf

Change log:
v4:
 - Corrected dt-bindings example indentation
 - Simplified dt-bindings example, removing the node surrounding crypto
 - Fixed typo in dthev2-common.h header guard
 - Removed unused ctx field in dev_data struct
 - Moved per-op data into request context
v3:
 - Corrected dt-bindings reg length is too long error
 - Converted AES driver code to use crypto_engine APIs for using
   internal crypto queue instead of mutex.
 - Removed calls to skcipher_request_complete in paths not returning
   -EINPROGRESS before.
 - Added missing KConfig import, which was accidentally removed in v2.

v2:
 - Corrected dt-bindings syntax errors and other review comments in v1.
 - Completely changed driver code structure, splitting code into
   multiple files

Link to previous versions:
v3: https://lore.kernel.org/all/20250502121253.456974-2-t-pratham@ti.com/
v2: https://lore.kernel.org/all/20250411091321.2925308-1-t-pratham@ti.com/
v1: https://lore.kernel.org/all/20250206-dthe-v2-aes-v1-0-1e86cf683928@ti.com/
---
T Pratham (2):
  dt-bindings: crypto: Add binding for TI DTHE V2
  crypto: ti: Add driver for DTHE V2 AES Engine (ECB, CBC)

 .../bindings/crypto/ti,am62l-dthev2.yaml      |  50 ++
 MAINTAINERS                                   |   7 +
 drivers/crypto/Kconfig                        |   1 +
 drivers/crypto/Makefile                       |   1 +
 drivers/crypto/ti/Kconfig                     |  13 +
 drivers/crypto/ti/Makefile                    |   3 +
 drivers/crypto/ti/dthev2-aes.c                | 428 ++++++++++++++++++
 drivers/crypto/ti/dthev2-common.c             | 220 +++++++++
 drivers/crypto/ti/dthev2-common.h             | 111 +++++
 9 files changed, 834 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
 create mode 100644 drivers/crypto/ti/Kconfig
 create mode 100644 drivers/crypto/ti/Makefile
 create mode 100644 drivers/crypto/ti/dthev2-aes.c
 create mode 100644 drivers/crypto/ti/dthev2-common.c
 create mode 100644 drivers/crypto/ti/dthev2-common.h

-- 
2.43.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2
  2025-05-08 10:07 [PATCH v4 0/2] Add support for Texas Instruments DTHE V2 crypto accelerator T Pratham
@ 2025-05-08 10:07 ` T Pratham
  2025-05-08 10:23   ` Krzysztof Kozlowski
  2025-05-08 11:11   ` Rob Herring (Arm)
  0 siblings, 2 replies; 6+ messages in thread
From: T Pratham @ 2025-05-08 10:07 UTC (permalink / raw)
  To: T Pratham, Herbert Xu, David S. Miller, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: Kamlesh Gurudasani, Vignesh Raghavendra, Praneeth Bajjuri,
	Manorit Chawdhry, linux-crypto, devicetree, linux-kernel

Add DT binding for Texas Instruments DTHE V2 crypto accelerator.

DTHE V2 is introduced as a part of TI AM62L SoC and can currently be
only found in it.

Signed-off-by: T Pratham <t-pratham@ti.com>
---
 .../bindings/crypto/ti,am62l-dthev2.yaml      | 50 +++++++++++++++++++
 MAINTAINERS                                   |  6 +++
 2 files changed, 56 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml

diff --git a/Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml b/Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
new file mode 100644
index 000000000000..5486bfeb2fe8
--- /dev/null
+++ b/Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/crypto/ti,am62l-dthev2.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: K3 SoC DTHE V2 crypto module
+
+maintainers:
+  - T Pratham <t-pratham@ti.com>
+
+properties:
+  compatible:
+    enum:
+      - ti,am62l-dthev2
+
+  reg:
+    maxItems: 1
+
+  dmas:
+    items:
+      - description: AES Engine RX DMA Channel
+      - description: AES Engine TX DMA Channel
+      - description: SHA Engine TX DMA Channel
+
+  dma-names:
+    items:
+      - const: rx
+      - const: tx1
+      - const: tx2
+
+required:
+  - compatible
+  - reg
+  - dmas
+  - dma-names
+
+additionalProperties: false
+
+examples:
+  - |
+    crypto@40800000 {
+        compatible = "ti,am62l-dthev2";
+        reg = <0x40800000 0x10000>;
+
+        dmas = <&main_bcdma 0 0 0x4700 0>,
+               <&main_bcdma 0 0 0xc701 0>,
+               <&main_bcdma 0 0 0xc700 0>;
+        dma-names = "rx", "tx1", "tx2";
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index b119ae6b5f14..b990850b4994 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -24552,6 +24552,12 @@ S:	Odd Fixes
 F:	drivers/clk/ti/
 F:	include/linux/clk/ti.h
 
+TI DATA TRANSFORM AND HASHING ENGINE (DTHE) V2 CRYPTO ACCELERATOR DRIVER
+M:	T Pratham <t-pratham@ti.com>
+L:	linux-crypto@vger.kernel.org
+S:	Supported
+F:	Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
+
 TI DAVINCI MACHINE SUPPORT
 M:	Bartosz Golaszewski <brgl@bgdev.pl>
 L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2
  2025-05-08 10:07 ` [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2 T Pratham
@ 2025-05-08 10:23   ` Krzysztof Kozlowski
  2025-05-08 11:11   ` Rob Herring (Arm)
  1 sibling, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-08 10:23 UTC (permalink / raw)
  To: T Pratham, Herbert Xu, David S. Miller, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: Kamlesh Gurudasani, Vignesh Raghavendra, Praneeth Bajjuri,
	Manorit Chawdhry, linux-crypto, devicetree, linux-kernel

On 08/05/2025 12:07, T Pratham wrote:
> Add DT binding for Texas Instruments DTHE V2 crypto accelerator.
> 
> DTHE V2 is introduced as a part of TI AM62L SoC and can currently be
> only found in it.
> 
> Signed-off-by: T Pratham <t-pratham@ti.com>

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2
  2025-05-08 10:07 ` [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2 T Pratham
  2025-05-08 10:23   ` Krzysztof Kozlowski
@ 2025-05-08 11:11   ` Rob Herring (Arm)
  2025-06-03 10:52     ` T Pratham
  1 sibling, 1 reply; 6+ messages in thread
From: Rob Herring (Arm) @ 2025-05-08 11:11 UTC (permalink / raw)
  To: T Pratham
  Cc: linux-kernel, Herbert Xu, Praneeth Bajjuri, Krzysztof Kozlowski,
	Manorit Chawdhry, devicetree, Vignesh Raghavendra, Conor Dooley,
	Kamlesh Gurudasani, linux-crypto, David S. Miller


On Thu, 08 May 2025 15:37:40 +0530, T Pratham wrote:
> Add DT binding for Texas Instruments DTHE V2 crypto accelerator.
> 
> DTHE V2 is introduced as a part of TI AM62L SoC and can currently be
> only found in it.
> 
> Signed-off-by: T Pratham <t-pratham@ti.com>
> ---
>  .../bindings/crypto/ti,am62l-dthev2.yaml      | 50 +++++++++++++++++++
>  MAINTAINERS                                   |  6 +++
>  2 files changed, 56 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:


doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250508101723.846210-3-t-pratham@ti.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2
  2025-05-08 11:11   ` Rob Herring (Arm)
@ 2025-06-03 10:52     ` T Pratham
  2025-06-03 12:25       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 6+ messages in thread
From: T Pratham @ 2025-06-03 10:52 UTC (permalink / raw)
  To: Rob Herring (Arm)
  Cc: linux-kernel, Herbert Xu, Praneeth Bajjuri, Krzysztof Kozlowski,
	Manorit Chawdhry, devicetree, Vignesh Raghavendra, Conor Dooley,
	Kamlesh Gurudasani, linux-crypto, David S. Miller

On 08/05/25 16:41, Rob Herring (Arm) wrote:
> 
> On Thu, 08 May 2025 15:37:40 +0530, T Pratham wrote:
>> Add DT binding for Texas Instruments DTHE V2 crypto accelerator.
>>
>> DTHE V2 is introduced as a part of TI AM62L SoC and can currently be
>> only found in it.
>>
>> Signed-off-by: T Pratham <t-pratham@ti.com>
>> ---
>>  .../bindings/crypto/ti,am62l-dthev2.yaml      | 50 +++++++++++++++++++
>>  MAINTAINERS                                   |  6 +++
>>  2 files changed, 56 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
>>
> 
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> 
> 
> doc reference errors (make refcheckdocs):
> 
> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250508101723.846210-3-t-pratham@ti.com
> 
Hi, the error logs here are empty. What does this mean (error, no error)?

Also, I ran `make dt_binding_check` locally and did not see any errors. Below dependencies are installed and up to date. 
> The base for the series is generally the latest rc1. A different dependency
> should be noted in *this* patch.
> 
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
> 
> pip3 install dtschema --upgrade
> 
> Please check and re-submit after running the above command yourself. Note
> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> your schema. However, it must be unset to test all examples with your schema.
> 

Regards
T Pratham <t-pratham@ti.com>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2
  2025-06-03 10:52     ` T Pratham
@ 2025-06-03 12:25       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2025-06-03 12:25 UTC (permalink / raw)
  To: T Pratham, Rob Herring (Arm)
  Cc: linux-kernel, Herbert Xu, Praneeth Bajjuri, Krzysztof Kozlowski,
	Manorit Chawdhry, devicetree, Vignesh Raghavendra, Conor Dooley,
	Kamlesh Gurudasani, linux-crypto, David S. Miller

On 03/06/2025 12:52, T Pratham wrote:
> On 08/05/25 16:41, Rob Herring (Arm) wrote:
>>
>> On Thu, 08 May 2025 15:37:40 +0530, T Pratham wrote:
>>> Add DT binding for Texas Instruments DTHE V2 crypto accelerator.
>>>
>>> DTHE V2 is introduced as a part of TI AM62L SoC and can currently be
>>> only found in it.
>>>
>>> Signed-off-by: T Pratham <t-pratham@ti.com>
>>> ---
>>>  .../bindings/crypto/ti,am62l-dthev2.yaml      | 50 +++++++++++++++++++
>>>  MAINTAINERS                                   |  6 +++
>>>  2 files changed, 56 insertions(+)
>>>  create mode 100644 Documentation/devicetree/bindings/crypto/ti,am62l-dthev2.yaml
>>>
>>
>> My bot found errors running 'make dt_binding_check' on your patch:
>>
>> yamllint warnings/errors:
>>
>> dtschema/dtc warnings/errors:
>>
>>
>> doc reference errors (make refcheckdocs):
>>
>> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250508101723.846210-3-t-pratham@ti.com
>>
> Hi, the error logs here are empty. What does this mean (error, no error)?
> 
> Also, I ran `make dt_binding_check` locally and did not see any errors. Below dependencies are installed and up to date. 


Probably false-positive. This happens sometimes, sorry for this. Service
is provided as is, in good faith.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-06-03 12:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-08 10:07 [PATCH v4 0/2] Add support for Texas Instruments DTHE V2 crypto accelerator T Pratham
2025-05-08 10:07 ` [PATCH v4 1/2] dt-bindings: crypto: Add binding for TI DTHE V2 T Pratham
2025-05-08 10:23   ` Krzysztof Kozlowski
2025-05-08 11:11   ` Rob Herring (Arm)
2025-06-03 10:52     ` T Pratham
2025-06-03 12:25       ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox