diff --git a/features/mbedtls/mbed_rng.c b/features/mbedtls/mbed_trng.c similarity index 76% rename from features/mbedtls/mbed_rng.c rename to features/mbedtls/mbed_trng.c index e7237f6469..5eceaaf743 100644 --- a/features/mbedtls/mbed_rng.c +++ b/features/mbedtls/mbed_trng.c @@ -14,15 +14,15 @@ * limitations under the License. */ -#include "hal/rng_api.h" +#include "hal/trng_api.h" -#if defined(MBEDTLS_ENTROPY_HARDWARE_ALT) && defined(DEVICE_RNG) +#if defined(MBEDTLS_ENTROPY_HARDWARE_ALT) && defined(DEVICE_TRNG) int mbedtls_hardware_poll( void *data, unsigned char *output, size_t len, size_t *olen ) { - rng_t rng_obj; - rng_init(&rng_obj); - int ret = rng_get_bytes(&rng_obj, output, len, olen); - rng_free(&rng_obj); + trng_t trng_obj; + trng_init(&trng_obj); + int ret = trng_get_bytes(&trng_obj, output, len, olen); + trng_free(&trng_obj); return ret; } diff --git a/hal/hal/rng_api.h b/hal/hal/trng_api.h similarity index 62% rename from hal/hal/rng_api.h rename to hal/hal/trng_api.h index dd67c50594..909dc37c89 100644 --- a/hal/hal/rng_api.h +++ b/hal/hal/trng_api.h @@ -13,55 +13,55 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -#ifndef MBED_RNG_API_H -#define MBED_RNG_API_H +#ifndef MBED_TRNG_API_H +#define MBED_TRNG_API_H #include #include "device.h" -#if DEVICE_RNG +#if DEVICE_TRNG -/** RNG HAL structure. rng_s is declared in the target's HAL +/** TRNG HAL structure. trng_s is declared in the target's HAL */ -typedef struct rng_s rng_t; +typedef struct trng_s trng_t; #ifdef __cplusplus extern "C" { #endif /** - * \defgroup hal_rng RNG hal functions + * \defgroup hal_trng TRNG hal functions * @{ */ -/** Initialize the RNG peripheral +/** Initialize the TRNG peripheral * - * @param obj The RNG object + * @param obj The TRNG object */ -void rng_init(rng_t *obj); +void trng_init(trng_t *obj); -/** Deinitialize the RNG peripheral +/** Deinitialize the TRNG peripheral * - * @param obj The RNG object + * @param obj The TRNG object */ -void rng_free(rng_t *obj); +void trng_free(trng_t *obj); -/** Get random data from RNG peripheral +/** Get random data from TRNG peripheral * - * @param obj The RNG object + * @param obj The TRNG object * @param output The pointer to an output array * @param length The length of output data * @param output_length The length of generated data * @return 0 success, -1 fail */ -int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_length); +int trng_get_bytes(trng_t *obj, uint8_t *output, size_t length, size_t *output_length); /** Set an external entropy value * - * @param obj The RNG object + * @param obj The TRNG object * @param seed_value Entropy value to be set */ -void rng_set_seed(rng_t *obj, uint32_t seed_value); +void trng_set_seed(trng_t *obj, uint32_t seed_value); /**@}*/ diff --git a/hal/targets.json b/hal/targets.json index 15038affd4..e689f4557d 100644 --- a/hal/targets.json +++ b/hal/targets.json @@ -565,7 +565,7 @@ "inherits": ["Target"], "progen": {"target": "frdm-k64f"}, "detect_code": ["0240"], - "device_has": ["ANALOGIN", "ANALOGOUT", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES", "STORAGE", "RNG"], + "device_has": ["ANALOGIN", "ANALOGOUT", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES", "STORAGE", "TRNG"], "features": ["IPV4", "STORAGE"], "release_versions": ["2", "5"] }, @@ -603,7 +603,7 @@ "inherits": ["Target"], "progen": {"target": "frdm-k66f"}, "detect_code": ["0311"], - "device_has": ["ANALOGIN", "ANALOGOUT", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES", "RNG"], + "device_has": ["ANALOGIN", "ANALOGOUT", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES", "TRNG"], "release_versions": ["2", "5"] }, "NUCLEO_F030R8": { @@ -795,7 +795,7 @@ "progen": {"target": "nucleo-f410rb"}, "macros": ["MBEDTLS_ENTROPY_HARDWARE_ALT", "TRANSACTION_QUEUE_SIZE_SPI=2"], "detect_code": ["0740"], - "device_has": ["ANALOGIN", "ANALOGOUT", "ERROR_RED", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES", "RNG"], + "device_has": ["ANALOGIN", "ANALOGOUT", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES", "TRNG"], "release_versions": ["2", "5"] }, "NUCLEO_F411RE": { @@ -833,7 +833,7 @@ "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "IAR"], "progen": {"target": "nucleo-f429zi"}, "macros": ["MBEDTLS_ENTROPY_HARDWARE_ALT", "DEVICE_RTC_LSI=1", "TRANSACTION_QUEUE_SIZE_SPI=2"], - "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "ERROR_RED", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "RTC_LSI", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES"], + "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "ERROR_RED", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "RTC_LSI", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES", "TRNG"], "detect_code": ["0796"], "features": ["IPV4"], "release_versions": ["2", "5"] @@ -1077,7 +1077,7 @@ "macros": ["MBEDTLS_ENTROPY_HARDWARE_ALT","DEVICE_RTC_LSI=1","TRANSACTION_QUEUE_SIZE_SPI=2"], "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "IAR"], "progen": {"target": "disco-f429zi"}, - "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "ERROR_RED", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES", "RNG"], + "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "ERROR_RED", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "STDIO_MESSAGES", "TRNG"], "release_versions": ["2", "5"] }, "DISCO_F469NI": { @@ -1090,7 +1090,7 @@ "macros": ["MBEDTLS_ENTROPY_HARDWARE_ALT","TRANSACTION_QUEUE_SIZE_SPI=2"], "progen": {"target": "disco-f469ni"}, "detect_code": ["0788"], - "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES", "RNG"], + "device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES", "TRNG"], "release_versions": ["2", "5"] }, "DISCO_L053C8": { @@ -2088,7 +2088,7 @@ "supported_toolchains": ["ARM", "uARM", "GCC_ARM", "IAR"], "inherits": ["Target"], "progen": {"target": "numaker-pfm-nuc472"}, - "device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "RNG"], + "device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "I2C_ASYNCH", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "SPI_ASYNCH", "TRNG"], "features": ["IPV4"], "release_versions": ["2", "5"] }, diff --git a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_K66F/rng_api.c b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_K66F/trng_api.c similarity index 88% rename from hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_K66F/rng_api.c rename to hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_K66F/trng_api.c index 2a604cf007..7f9a78e62b 100644 --- a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_K66F/rng_api.c +++ b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_K66F/trng_api.c @@ -26,9 +26,9 @@ #include "cmsis.h" #include "fsl_common.h" #include "fsl_clock.h" -#include "rng_api.h" +#include "trng_api.h" -void rng_init(rng_t *obj) +void trng_init(trng_t *obj) { (void)obj; CLOCK_EnableClock(kCLOCK_Rnga0); @@ -36,7 +36,7 @@ void rng_init(rng_t *obj) CLOCK_EnableClock(kCLOCK_Rnga0); } -void rng_free(rng_t *obj) +void trng_free(trng_t *obj) { (void)obj; CLOCK_DisableClock(kCLOCK_Rnga0); @@ -46,7 +46,7 @@ void rng_free(rng_t *obj) * Get one byte of entropy from the RNG, assuming it is up and running. * As recommended (34.1.1), get only one bit of each output. */ -static void rng_get_byte(unsigned char *byte) +static void trng_get_byte(unsigned char *byte) { size_t bit; @@ -58,7 +58,7 @@ static void rng_get_byte(unsigned char *byte) } } -int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_length) +int trng_get_bytes(trng_t *obj, uint8_t *output, size_t length, size_t *output_length) { (void)obj; size_t i; @@ -69,7 +69,7 @@ int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_len RNG->CR = RNG_CR_INTM_MASK | RNG_CR_HA_MASK | RNG_CR_GO_MASK; for (i = 0; i < length; i++) { - rng_get_byte(output + i); + trng_get_byte(output + i); } /* Just be extra sure that we didn't do it wrong */ diff --git a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_MCU_K64F/rng_api.c b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_MCU_K64F/trng_api.c similarity index 84% rename from hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_MCU_K64F/rng_api.c rename to hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_MCU_K64F/trng_api.c index 027a98cd73..c4ef754cdc 100644 --- a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_MCU_K64F/rng_api.c +++ b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_MCU_K64F/trng_api.c @@ -26,9 +26,9 @@ #include "cmsis.h" #include "fsl_common.h" #include "fsl_clock.h" -#include "rng_api.h" +#include "trng_api.h" -void rng_init(rng_t *obj) +void trng_init(trng_t *obj) { (void)obj; CLOCK_EnableClock(kCLOCK_Rnga0); @@ -36,7 +36,7 @@ void rng_init(rng_t *obj) CLOCK_EnableClock(kCLOCK_Rnga0); } -void rng_free(rng_t *obj) +void trng_free(trng_t *obj) { (void)obj; CLOCK_DisableClock(kCLOCK_Rnga0); @@ -46,19 +46,19 @@ void rng_free(rng_t *obj) * Get one byte of entropy from the RNG, assuming it is up and running. * As recommended (34.1.1), get only one bit of each output. */ -static void rng_get_byte(unsigned char *byte) +static void trng_get_byte(unsigned char *byte) { size_t bit; /* 34.5 Steps 3-4-5: poll SR and read from OR when ready */ for( bit = 0; bit < 8; bit++ ) { - while( ( RNG->SR & RNG_SR_OREG_LVL_MASK ) == 0 ); - *byte |= ( RNG->OR & 1 ) << bit; + while((RNG->SR & RNG_SR_OREG_LVL_MASK) == 0 ); + *byte |= (RNG->OR & 1) << bit; } } -int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_length) +int trng_get_bytes(trng_t *obj, uint8_t *output, size_t length, size_t *output_length) { (void)obj; size_t i; @@ -69,7 +69,7 @@ int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_len RNG->CR = RNG_CR_INTM_MASK | RNG_CR_HA_MASK | RNG_CR_GO_MASK; for (i = 0; i < length; i++) { - rng_get_byte(output + i); + trng_get_byte(output + i); } /* Just be extra sure that we didn't do it wrong */ diff --git a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/api/objects.h b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/api/objects.h index 1c690524ee..ad87f64fda 100644 --- a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/api/objects.h +++ b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/api/objects.h @@ -61,7 +61,7 @@ struct dac_s { DACName dac; }; -struct rng_s { +struct trng_s { }; diff --git a/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/TARGET_NUMAKER_PFM_NUC472/objects.h b/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/TARGET_NUMAKER_PFM_NUC472/objects.h index 96921f5542..57d9e93201 100644 --- a/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/TARGET_NUMAKER_PFM_NUC472/objects.h +++ b/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/TARGET_NUMAKER_PFM_NUC472/objects.h @@ -124,7 +124,7 @@ struct sleep_s { int powerdown; }; -struct rng_s { +struct trng_s { }; diff --git a/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/rng_api.c b/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/trng_api.c similarity index 87% rename from hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/rng_api.c rename to hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/trng_api.c index f95be5e015..7e34c025ba 100644 --- a/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/rng_api.c +++ b/hal/targets/hal/TARGET_NUVOTON/TARGET_NUC472/trng_api.c @@ -24,7 +24,7 @@ #include "cmsis.h" #include "NUC472_442.h" #include "us_ticker_api.h" -#include "rng_api.h" +#include "trng_api.h" /* * Get Random number generator. @@ -39,7 +39,7 @@ void CRYPTO_IRQHandler() } } -static void rng_get(unsigned char *pConversionData) +static void trng_get(unsigned char *pConversionData) { uint32_t *p32ConversionData; @@ -52,7 +52,7 @@ static void rng_get(unsigned char *pConversionData) PRNG_Read(p32ConversionData); } -void rng_init(rng_t *obj) +void trng_init(trng_t *obj) { (void)obj; /* Unlock protected registers */ @@ -67,26 +67,26 @@ void rng_init(rng_t *obj) PRNG_ENABLE_INT(); } -void rng_free(rng_t *obj) +void trng_free(trng_t *obj) { (void)obj; PRNG_DISABLE_INT(); NVIC_DisableIRQ(CRPT_IRQn); } -int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_length) +int trng_get_bytes(trng_t *obj, uint8_t *output, size_t length, size_t *output_length) { (void)obj; *output_length = 0; if (length < 32) { unsigned char tmpBuff[32]; - rng_get(tmpBuff); + trng_get(tmpBuff); memcpy(output, &tmpBuff, length); *output_length = length; } else { for (int i = 0; i < (length/32); i++) { - rng_get(output); + trng_get(output); *output_length += 32; output += 32; } diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F429ZI/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F429ZI/objects.h index b710252191..c0015d8cfe 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F429ZI/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F429ZI/objects.h @@ -70,7 +70,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F469NI/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F469NI/objects.h index 85ce8557f0..f734506cde 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F469NI/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_DISCO_F469NI/objects.h @@ -70,7 +70,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F410RB/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F410RB/objects.h index f53486d2f7..c08ba3a952 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F410RB/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F410RB/objects.h @@ -65,7 +65,7 @@ struct dac_s { uint8_t channel; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F429ZI/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F429ZI/objects.h index 563e1befcd..42d97424d3 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F429ZI/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/TARGET_NUCLEO_F429ZI/objects.h @@ -70,7 +70,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/rng_api.c b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/trng_api.c similarity index 88% rename from hal/targets/hal/TARGET_STM/TARGET_STM32F4/rng_api.c rename to hal/targets/hal/TARGET_STM/TARGET_STM32F4/trng_api.c index 357ea89ec4..4f7a147a39 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F4/rng_api.c +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F4/trng_api.c @@ -25,18 +25,19 @@ defined(TARGET_STM32F479xx) #include #include "cmsis.h" -#include "rng_api.h" +#include "trng_api.h" -/** rng_get_byte +/** trng_get_byte * @brief Get one byte of entropy from the RNG, assuming it is up and running. + * @param obj TRNG obj * @param pointer to the hardware generated random byte. */ -static void rng_get_byte(rng_t *obj, unsigned char *byte ) +static void trng_get_byte(trng_t *obj, unsigned char *byte ) { *byte = (unsigned char)HAL_RNG_GetRandomNumber(&obj->handle); } -void rng_init(rng_t *obj) +void trng_init(trng_t *obj) { /* RNG Peripheral clock enable */ __HAL_RCC_RNG_CLK_ENABLE(); @@ -47,7 +48,7 @@ void rng_init(rng_t *obj) } -void rng_free(rng_t *obj) +void trng_free(trng_t *obj) { /*Disable the RNG peripheral */ HAL_RNG_DeInit(&obj->handle); @@ -55,13 +56,13 @@ void rng_free(rng_t *obj) __HAL_RCC_RNG_CLK_DISABLE(); } -int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_length) +int trng_get_bytes(trng_t *obj, uint8_t *output, size_t length, size_t *output_length) { int ret; /* Get Random byte */ for( uint32_t i = 0; i < length; i++ ){ - rng_get_byte(obj, output + i ); + trng_get_byte(obj, output + i ); } *output_length = length; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F746NG/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F746NG/objects.h index b8f03b319e..84c61ff544 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F746NG/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F746NG/objects.h @@ -90,7 +90,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F769NI/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F769NI/objects.h index a1a0675269..7639c231df 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F769NI/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_DISCO_F769NI/objects.h @@ -90,7 +90,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F746ZG/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F746ZG/objects.h index eb7c0345d2..e8af139f96 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F746ZG/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F746ZG/objects.h @@ -90,7 +90,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F767ZI/objects.h b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F767ZI/objects.h index a1a0675269..7639c231df 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F767ZI/objects.h +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/TARGET_NUCLEO_F767ZI/objects.h @@ -90,7 +90,7 @@ struct can_s { int index; }; -struct rng_s { +struct trng_s { RNG_HandleTypeDef handle; }; diff --git a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/rng_api.c b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/trng_api.c similarity index 85% rename from hal/targets/hal/TARGET_STM/TARGET_STM32F7/rng_api.c rename to hal/targets/hal/TARGET_STM/TARGET_STM32F7/trng_api.c index 46c43b3fa2..31c5a04fc5 100644 --- a/hal/targets/hal/TARGET_STM/TARGET_STM32F7/rng_api.c +++ b/hal/targets/hal/TARGET_STM/TARGET_STM32F7/trng_api.c @@ -21,18 +21,18 @@ #include #include "cmsis.h" -#include "rng_api.h" +#include "trng_api.h" -/** rng_get_byte +/** trng_get_byte * @brief Get one byte of entropy from the RNG, assuming it is up and running. * @param pointer to the hardware generated random byte. */ -static void rng_get_byte(rng_t *obj, unsigned char *byte ) +static void trng_get_byte(trng_t *obj, unsigned char *byte ) { *byte = (unsigned char)HAL_RNG_GetRandomNumber(&obj->handle); } -void rng_init(rng_t *obj) +void trng_init(trng_t *obj) { /* RNG Peripheral clock enable */ __HAL_RCC_RNG_CLK_ENABLE(); @@ -43,7 +43,7 @@ void rng_init(rng_t *obj) } -void rng_free(rng_t *obj) +void trng_free(trng_t *obj) { /*Disable the RNG peripheral */ HAL_RNG_DeInit(&obj->handle); @@ -51,13 +51,13 @@ void rng_free(rng_t *obj) __HAL_RCC_RNG_CLK_DISABLE(); } -int rng_get_bytes(rng_t *obj, uint8_t *output, size_t length, size_t *output_length) +int trng_get_bytes(trng_t *obj, uint8_t *output, size_t length, size_t *output_length) { int ret; /* Get Random byte */ for( uint32_t i = 0; i < length; i++ ){ - rng_get_byte(obj, output + i ); + trng_get_byte(obj, output + i ); } *output_length = length;