SmartSnippets DA1459x SDK
Typedefs | Enumerations | Functions
hw_aes_hash.h File Reference

Definition of API for the AES/HASH Engine Low Level Driver. More...

#include <stdbool.h>
#include "sdk_defs.h"

Go to the source code of this file.

Typedefs

typedef void(* hw_aes_hash_cb) (uint32_t status)
 AES/Hash callback. More...
 

Enumerations

enum  HW_AES_HASH_STATUS
 AES/HASH engine status.
 
enum  HW_AES_HASH_IRQ_MASK
 Masks of AES/HASH Engine Interrupt sources. More...
 

Functions

__STATIC_INLINE void hw_aes_hash_set_input_data_mode (bool wait_more_input)
 Set AES/HASH engine input data mode. More...
 
__STATIC_INLINE bool hw_aes_hash_get_input_data_mode (void)
 Get AES/HASH engine input data mode. More...
 
__STATIC_INLINE void hw_aes_hash_set_input_data_len (uint32_t len)
 Set the input data length. More...
 
__STATIC_INLINE uint32_t hw_aes_hash_get_input_data_len (void)
 Get the input data length. More...
 
__STATIC_INLINE bool hw_aes_hash_waiting_for_input_data (void)
 Check whether the AES/Hash Engine is waiting for more input data or not. More...
 
void hw_aes_hash_set_input_data_addr (uint32_t inp_data_addr)
 Set the address of the Input Data. More...
 
void hw_aes_hash_set_output_data_addr (uint32_t out_data_addr)
 Set the address of the Output Data. More...
 
HW_AES_HASH_STATUS hw_aes_hash_get_status (void)
 Get the status of the AES/HASH engine. More...
 
__STATIC_INLINE void hw_aes_hash_enable_clock (void)
 Enable AES/HASH engine clock. More...
 
__STATIC_INLINE void hw_aes_hash_disable_clock (void)
 Disable AES/HASH engine clock. More...
 
__STATIC_INLINE bool hw_aes_hash_clock_is_enabled (void)
 Check whether the AES/HASH engine clock is enabled or not. More...
 
__ALWAYS_RETAINED_CODE bool hw_aes_hash_is_active (void)
 AES/Hash is active. More...
 
__STATIC_INLINE void hw_aes_hash_start (void)
 Start AES/HASH engine operation. More...
 
void hw_aes_hash_deinit (void)
 De-initialize AES/HASH crypto engine. More...
 
void hw_aes_hash_interrupt_enable (hw_aes_hash_cb cb)
 Enable interrupt for AES/HASH crypto engine. More...
 
void hw_aes_hash_interrupt_disable (void)
 Disable interrupt for AES/HASH crypto engine. More...
 

Detailed Description

Definition of API for the AES/HASH Engine Low Level Driver.

Copyright (C) 2015-2023 Renesas Electronics Corporation and/or its affiliates. All rights reserved. Confidential Information.

This software ("Software") is supplied by Renesas Electronics Corporation and/or its affiliates ("Renesas"). Renesas grants you a personal, non-exclusive, non-transferable, revocable, non-sub-licensable right and license to use the Software, solely if used in or together with Renesas products. You may make copies of this Software, provided this copyright notice and disclaimer ("Notice") is included in all such copies. Renesas reserves the right to change or discontinue the Software at any time without notice.

THE SOFTWARE IS PROVIDED "AS IS". RENESAS DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. TO THE MAXIMUM EXTENT PERMITTED UNDER LAW, IN NO EVENT SHALL RENESAS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE, EVEN IF RENESAS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. USE OF THIS SOFTWARE MAY BE SUBJECT TO TERMS AND CONDITIONS CONTAINED IN AN ADDITIONAL AGREEMENT BETWEEN YOU AND RENESAS. IN CASE OF CONFLICT BETWEEN THE TERMS OF THIS NOTICE AND ANY SUCH ADDITIONAL LICENSE AGREEMENT, THE TERMS OF THE AGREEMENT SHALL TAKE PRECEDENCE. BY CONTINUING TO USE THIS SOFTWARE, YOU AGREE TO THE TERMS OF THIS NOTICE.IF YOU DO NOT AGREE TO THESE TERMS, YOU ARE NOT PERMITTED TO USE THIS SOFTWARE.