Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions source/devices/AM62LX/linux/Linux_Performance_Guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -779,6 +779,7 @@ benchmark test.

time -v openssl speed -elapsed -evp aes-128-cbc

.. _crypto-performance:

Crypto Performance Comparison
-----------------------------
Expand Down
1 change: 1 addition & 0 deletions source/devices/AM62PX/linux/Linux_Performance_Guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -797,6 +797,7 @@ Listed for each algorithm are the code snippets used to run each

time -v openssl speed -elapsed -evp aes-128-cbc

.. _crypto-performance:

Crypto Performance Comparison
-----------------------------
Expand Down
1 change: 1 addition & 0 deletions source/devices/AM62X/linux/Linux_Performance_Guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -923,6 +923,7 @@ Listed for each algorithm are the code snippets used to run each

time -v openssl speed -elapsed -evp aes-128-cbc

.. _crypto-performance:

Crypto Performance Comparison
-----------------------------
Expand Down
2 changes: 2 additions & 0 deletions source/devices/AM64X/linux/Linux_Performance_Guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ System Benchmarks
CRYPTO
======

.. _crypto-performance:

Crypto Performance Comparison
-----------------------------

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,43 @@
Hashing - MD5, SHA224, SHA256, SHA384, SHA512
Message Authentication - HMAC(MD5), HMAC(SHA224), HMAC(SHA256), HMAC(SHA384), HMAC(SHA512)


*****************************
Crypto Implementation Options

Check warning on line 28 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Headings] Use sentence-style capitalization in 'Crypto Implementation Options'. Raw Output: {"message": "[RedHat.Headings] Use sentence-style capitalization in 'Crypto Implementation Options'.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 28, "column": 1}}}, "severity": "INFO"}
*****************************

Users can implement cryptographic operations by using one of the following approaches:

1. **Hardware Accelerator (DTHEv2)**

- Offloads crypto operations to dedicated hardware engine
- Frees up CPU cycles for other tasks
- In general lower throughput but optimized for multi-tasking systems

2. **ARM CPU with Cryptographic Extension (ARM CE)**

- Uses ARM processor's built-in cryptographic hardware support
- Delivers higher throughput (faster than hardware accelerator)
- Might require high CPU usage

Choosing the Right Implementation

Check warning on line 45 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.NoGerundsInTitles] Where possible, avoid using gerunds in topic titles. Use the imperative form instead. Raw Output: {"message": "[RedHat.NoGerundsInTitles] Where possible, avoid using gerunds in topic titles. Use the imperative form instead.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 45, "column": 1}}}, "severity": "INFO"}

Check warning on line 45 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Headings] Use sentence-style capitalization in 'Choosing the Right Implementation'. Raw Output: {"message": "[RedHat.Headings] Use sentence-style capitalization in 'Choosing the Right Implementation'.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 45, "column": 1}}}, "severity": "INFO"}
=================================

**Use Hardware Accelerator (DTHEv2) when:**

- **Multi-tasking systems** - system runs computation heavy services that need CPU resources alongside crypto operations
- **Functional safety/security requirements** - ASIL or safety-critical applications require offloading crypto operations away from Linux kernel to reduce attack surface and ensure isolation

Check warning on line 51 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'ASIL') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'ASIL') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 51, "column": 49}}}, "severity": "INFO"}
- **Compliance/regulatory requirements** - FIPS certification, Common Criteria, or TEE integration mandates hardware acceleration

Check warning on line 52 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'TEE') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'TEE') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 52, "column": 84}}}, "severity": "INFO"}

Check warning on line 52 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'FIPS') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'FIPS') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 52, "column": 44}}}, "severity": "INFO"}

**Use ARM CPU (CE) when:**

- **Maximum throughput required** - Need high throughput for bulk data encryption, video transcoding, or media processing
- **Dedicated crypto workload** - Crypto is the primary task and high CPU usage is acceptable
- **Small/infrequent operations** - One-time encryption with small data blocks where accelerator overhead is minimal

Check warning on line 58 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.DoNotUseTerms] Do not use "overhead". Use terminology that is more specific. For example, write "running large queries can increase processor usage". Raw Output: {"message": "[RedHat.DoNotUseTerms] Do not use \"overhead\". Use terminology that is more specific. For example, write \"running large queries can increase processor usage\".", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/DTHEv2.rst", "range": {"start": {"line": 58, "column": 98}}}, "severity": "WARNING"}

**Performance Comparison** : For a detailed comparison of DTHEv2 accelerator performance against ARM Cryptographic Extension (CE) and baseline ARM CPU, see :ref:`crypto-performance` in the Linux Performance Guide.


********************
Building the Drivers
********************
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,41 @@
- SHA256, SHA512
- CMAC(AES)

*****************************
Crypto Implementation Options

Check warning on line 76 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/SA2UL_OMAP.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Headings] Use sentence-style capitalization in 'Crypto Implementation Options'. Raw Output: {"message": "[RedHat.Headings] Use sentence-style capitalization in 'Crypto Implementation Options'.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/SA2UL_OMAP.rst", "range": {"start": {"line": 76, "column": 1}}}, "severity": "INFO"}
*****************************

Users can implement cryptographic operations by using one of the following approaches:

1. **Hardware Accelerator**

- Offloads crypto operations to dedicated hardware engine
- Frees up CPU cycles for other tasks
- In general lower throughput but optimized for multi-tasking systems

2. **ARM CPU with Cryptographic Extension (ARM CE)**

- Uses ARM processor's built-in cryptographic hardware support
- Delivers higher throughput (faster than hardware accelerator)
- Might require high CPU usage

Choosing the Right Implementation

Check warning on line 93 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/SA2UL_OMAP.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.NoGerundsInTitles] Where possible, avoid using gerunds in topic titles. Use the imperative form instead. Raw Output: {"message": "[RedHat.NoGerundsInTitles] Where possible, avoid using gerunds in topic titles. Use the imperative form instead.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/SA2UL_OMAP.rst", "range": {"start": {"line": 93, "column": 1}}}, "severity": "INFO"}

Check warning on line 93 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/SA2UL_OMAP.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Headings] Use sentence-style capitalization in 'Choosing the Right Implementation'. Raw Output: {"message": "[RedHat.Headings] Use sentence-style capitalization in 'Choosing the Right Implementation'.", "location": {"path": "source/linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto/SA2UL_OMAP.rst", "range": {"start": {"line": 93, "column": 1}}}, "severity": "INFO"}
=================================

**Use Hardware Accelerator when:**

- **Multi-tasking systems** - system runs computation heavy services that need CPU resources alongside crypto operations
- **Functional safety/security requirements** - ASIL or safety-critical applications require offloading crypto operations away from Linux kernel to reduce attack surface and ensure isolation
- **Compliance/regulatory requirements** - FIPS certification, Common Criteria, or TEE integration mandates hardware acceleration

**Use ARM CPU (CE) when:**

- **Maximum throughput required** - Need high throughput for bulk data encryption, video transcoding, or media processing
- **Dedicated crypto workload** - Crypto is the primary task and high CPU usage is acceptable
- **Small/infrequent operations** - One-time encryption with small data blocks where accelerator overhead is minimal

**Performance Comparison** : For a detailed comparison of hardware accelerator performance against ARM Cryptographic Extension (CE) and baseline ARM CPU, see :ref:`crypto-performance` in the Linux Performance Guide.

********************
Building the Drivers
********************
Expand Down Expand Up @@ -376,7 +411,6 @@
Hardware Accelerator testing
****************************

===============================
Testing using the tcrypt module
===============================

Expand Down Expand Up @@ -420,7 +454,6 @@
[ 3036.492101] tcrypt:
...

=============
IPSec Testing
=============

Expand Down
Loading