🚀 New Features
- MbedTLS Upgrade
- Upgraded MbedTLS CAL wrapper APIs for compatibility with Mbed TLS v3.6.3.1 (previously v2.28.4)
🛠 Fixes & Improvements
-
Certificate & Key Handling
- Fixed
atcacert_verify_
APIs to use correct key size macros andcal_buffer
members - Fixed
atca_mbedtls_cert_add()
to correctly read public key usingis_genkey
check - Modified buffer size setting to use P256 signature size before calling
atcacert_set_signature()
, ensuring correct WPC certificate reads from ECC608 devices - Fixed
ATCA_MBEDTLS
guards to exclude MbedTLS code when disabled
- Fixed
-
HAL (Hardware Abstraction Layer)
- Enhanced error handling for initialization (
halinit
) failures by adding appropriatehal_release
calls - Updated
hal_kit_hid_send()
to flush any pending data from HID device input buffer before writes - Added validation of input parameters in
hal_free_shared()
and updated access permissions for shared memory inhal_linux.c
- Updated Zephyr I2C HAL wrapper
- Integrated latest I2C driver configuration updates from Zephyr 3.6.0
- Now utilizes
word_address
parameter inhal_i2c_send()
even when transmit buffer is empty (e.g., device wake-up)
- Updated
hal_esp32_i2c.c
to support latest ESP-IDF library- Maintained backward-compatible I2C initialization and command methods
⚠️ Note:i2c_config_t
fields andi2c_driver_install
API may be deprecated in future ESP-IDF releases. Refer to ESP-IDF official documentation.
- Enhanced error handling for initialization (
-
Initialization & Configuration
- Updated
atcab_init_ext()
to read ECC608 config zone only withATCA_NO_POLL
configuration - MPLAB Harmony Configurator updates
- Added
device_conf.json
to define feature sets per secure element, used as base configuration for device selection - Updated TNG device selection to also generate Tester module files
- Added
- Updated
-
Code Quality & Compliance
- Replaced
memset
withpkcs11_util_memset
in PKCS#11 implementation (for structure handling) - MISRA C:2012 & CERT C compliance
- Addressed more REQUIRED category violations
- Added file-based suppression lists for maximum MISRA check coverage with MPLAB Analysis tool suite
- Replaced
-
Build System
- Replaced
CMAKE_INSTALL_FULL_<dir>
withCMAKE_INSTALL_<dir>
to ensure proper handling of--prefix
and cpack
- Replaced