Contributions to MbedTLS 3.5

Mbed TLS is an open source library which implements cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocols. It provides a reference implementation of the ARM Platform Security Architecture (PSA) Cryptography API. The project also supports the PSA Cryptoprocessor Driver Interface which enables support for cryptoprocessor drivers. The small code footprint makes the project suitable for embedded systems. It has many users, including TF-ATF-M and OP-TEE.

MbedTLS v3.5 was released on October 5th with several contributions from BayLibre. Valerio Setti focused mainly on enabling elliptic curve keys and algorithm acceleration through PSA drivers. It is now possible to completely accelerate ECDH, ECDSA and ECJPAKE without any need to rely on library’s builtin implementations. We also contributed to the PK module reshaping and improvements for private/public key parsing and management. Other interesting improvements included in this release concern TLS 1.2/1.3, x509, code’s footprint reductions (which is particularly interesting for embedded platforms) as well as drivers’ acceleration support for FFDH algorithm with DH keys, hashes and HMAC.

BayLibre contributions to Linux 6.6

Linux 6.6 was released on October 29th. LWN has great coverage of the 6.6 merge window (part 1part 2).

Here is a summary of our contributions per SoC family:

Amlogic SoCs

BayLibre continues to maintain and improve support for Amlogic SoCs in the kernel. 

Jerome Brunet made an ASoC driver fix. For SPDIF input to report the locked rate correctly, even when no capture is running, the HW and reference clock must be started as soon as the DAI (digital audio interface) is probed.

MediaTek SoCs

BayLibre continued to support of MediaTek SoCs during this kernel release.

Alexandre Mergnat and Guillaume La Roque added support for the Startek KD070FHFID015, which is a 7-inch TFT LCD display using MIPI DSI interface.

Texas Instruments SoCs

BayLibre continues to provide upstream support for TI parts.  The TI TCAN is an external CAN-FD controller and transceiver which is currently supported in Linux in its current version 4550. Markus Schneider-Pargmann added support for two new chip versions (4552 and 4553) to the existing driver and did a few cleanups while working on the driver.

The J784S4 SoC belongs to the K3 Multicore SoC architecture platform, providing advanced system integration in automotive, ADAS and industrial applications requiring AI at the network edge.  Apelete Seketeli and Esteban Blanc fixed the range of some GPIO banks on J784S4 System-on-Module (SoM). This was needed in order to use these GPIO lines as an interrupt trigger.

The AM335x-EVM started producing boot errors because of subtle timing changes.  Julien Panis fixed the issue by using the appropriate sleep function in sysc reset.

Jerome Neanne fixed a kernel crash detected in the TI testing farm when the TPS6594 regulator driver is added.

T-Head RISC-V SoC

The T-Head TH1520 is a multi-core 64-bit RISC-V SoC used in RISC-V development boards such as the BeagleV Ahead.  Drew Fustini added the BeagleV Ahead board device tree to the Linux 6.6 release which allows users to boot to a basic shell.  Drew is continuing to work on adding support for additional TH1520 hardware peripherals like eMMC and microSD.

Summary of BayLibre contributions in Linux 6.6

  Lines added: 737
Lines removed: 83
Files changed: 24
Commits: 16
Signed-off-by: 24
Reviewed-by: 30
Reported-by: 1
Tested-by: 3