Hi Masaki,
Thanks for the question.
At the moment, we do not plan to publish standalone releases of tf-psa-crypto-drivers. The intention is that drivers hosted in this repository are released and validated as part of the projects that integrate them, rather than independently.
For the CryptoCell driver specifically, the main integration is TF-M. This also explains some of the dependencies you noticed on TF-M headers and utilities: the driver is currently primarily intended to be integrated and built within that environment rather than consumed as a completely standalone component.
For a given TF-M release, the corresponding tf-psa-crypto-drivers revision can be determined from the TF-M source tree: the TF-M CMake configuration pins the specific tf-psa-crypto-drivers Git revision used by that release. That is therefore the best reference for identifying the driver revision that was integrated and tested with a particular TF-M release.
There is currently no equivalent one-to-one release mapping of the form:
`TF-PSA-Crypto release -> tf-psa-crypto-drivers release -> TF-M release`
In particular, selecting TF-PSA-Crypto 1.2.0 does not by itself identify a specific tf-psa-crypto-drivers or TF-M revision. Compatibility between TF-PSA-Crypto and external drivers is primarily defined through the PSA Crypto driver interface, and work is ongoing around formalizing that interface and its release/versioning model.
Once that interface has a formal release/versioning scheme, we can also consider whether clearer compatibility documentation between TF-PSA-Crypto and external driver implementations would be useful.
So, for CryptoCell today, I would recommend starting from the TF-M release you intend to use and following the tf-psa-crypto-drivers revision pinned by that release.
Regards,
Amjad
CryptoCell Maintainer
Hi PSA Crypto Developer Forum Organizer,
I'm currently integrating PSA Crypto Drivers into our codebase for hardware that includes CryptoCell module.
While reviewing the Github repositories, I noticed that t-psa-crypto-drivers do not appear to publish tagged releases.
https://github.com/Mbed-TLS/tf-psa-crypto-drivers
In contrast, tf-psa-crypto provides official releases:
https://github.com/Mbed-TLS/TF-PSA-Crypto
I also noticed that tf-psa-crypto-drivers appears to have some dependencies on the TFM code (e.g. crypto_driver_random.h, tfm_utils.h, cc3xx_aes_external_key_loader.c, etc...)
Is there any documentation that describes the dependency relationship and version mapping between TF-PSA-Crypto, TF-PSA-Crypto-Drivers commit, and TF-M?
For example, if we choose TF-PSA-Crypto 1.2.0, how can we determine which tf-psa-crypto-drivers and TFM commit point were used in the official testing and validation of TF-PSA-Crypto release?
Any guidance or pointers to the relevant release notes or documentation would be greatly appreciated.
Thank you.
Regards,
Masaki Sato
________________________________
CONFIDENTIALITY NOTICE: This email and any attachments are for the sole use of the intended recipient(s) and contain information that may be Garmin confidential and/or Garmin legally privileged. If you have received this email in error, please notify the sender by reply email and delete the message. Any disclosure, copying, distribution or use of this communication (including attachments) by someone other than the intended recipient is prohibited. Thank you.