SmartSnippets DA1459x SDK
Data Structures | Macros | Typedefs | Functions
ad_ble.h File Reference

BLE Adapter API. More...

#include "osal.h"
#include "ad_ble_config.h"
#include "ad_nvparam.h"
#include "ble_config.h"
#include "co_bt.h"

Go to the source code of this file.

Data Structures

struct  ble_hci_cmd_hdr
 
struct  ble_hci_acl_msg_hdr
 
struct  ble_hci_sco_hdr
 
struct  ble_hci_evt_hdr
 
struct  hci_cmd_msg
 
struct  hci_acl_msg
 
struct  hci_sco_msg
 
struct  hci_evt_msg
 
struct  ble_hci_msg
 
struct  ble_gtl_msg
 
struct  ble_stack_msg
 
struct  ad_ble_msg
 
struct  ad_ble_hdr
 
struct  ad_ble_interface_t
 
struct  ad_ble_lld_stats
 Structure for low level driver statistics. More...
 

Macros

#define HCI_CMD_HEADER_LENGTH   3
 Kernel message header length for transport through interface between App and SW stack.
 

Typedefs

typedef struct ble_hci_cmd_hdr ble_hci_cmd_hdr_t
 
typedef struct ble_hci_acl_msg_hdr ble_hci_acl_hdr_t
 
typedef struct ble_hci_sco_hdr ble_hci_sco_hdr_t
 
typedef struct ble_hci_evt_hdr ble_hci_evt_hdr_t
 
typedef struct hci_cmd_msg hci_cmd_msg_t
 
typedef struct hci_acl_msg hci_acl_msg_t
 
typedef struct hci_sco_msg hci_sco_msg_t
 
typedef struct hci_evt_msg hci_evt_msg_t
 
typedef struct ble_hci_msg ble_hci_msg_t
 
typedef struct ble_gtl_msg ble_gtl_msg_t
 
typedef struct ble_stack_msg ble_stack_msg_t
 
typedef struct ad_ble_msg ad_ble_msg_t
 
typedef struct ad_ble_hdr ad_ble_hdr_t
 

Functions

OS_BASE_TYPE ad_ble_command_queue_send (const void *item, OS_TICK_TIME wait_ticks)
 Send a message to the BLE adapter command queue. More...
 
void ad_ble_lpclock_available (void)
 Notify the BLE adapter that LP clock is available. More...
 
OS_BASE_TYPE ad_ble_event_queue_send (const void *item, OS_TICK_TIME wait_ticks)
 Send a message to the BLE adapter event queue. More...
 
void ad_ble_task_notify (uint32_t value)
 Notify BLE adapter. More...
 
void ad_ble_init (void)
 Initialize BLE adapter - create command and event queues. More...
 
const ad_ble_interface_tad_ble_get_interface (void)
 Get BLE Adapter interface. More...
 
OS_BASE_TYPE ad_ble_event_queue_register (const OS_TASK task_handle)
 Register task for BLE Adapter's event Queue notifications. More...
 
void ad_ble_get_public_address (uint8_t address[BD_ADDR_LEN])
 Get public static address. More...
 
bool ad_ble_read_nvms_param (uint8_t *param, uint8_t len, uint8_t nvparam_tag, uint32_t nvms_addr)
 Read configuration parameters form NVMS parameter area. More...
 
void ad_ble_get_irk (uint8_t irk[KEY_LEN])
 Get device's IRK. More...
 
void ad_ble_notify_event_queue_avail (void)
 Notifies BLE adapter that there is free space on the event queue.
 
nvparam_t ad_ble_get_nvparam_handle (void)
 Get non-volatile parameter handle. More...
 
void ad_ble_stay_active (bool status)
 Force BLE to stay active. More...
 
bool ad_ble_non_retention_heap_in_use (void)
 Check if the non retention BLE heap is in use.
 
void ad_ble_sys_tcs_config (void)
 Configure CMAC SYS TCS table.
 
void ad_ble_get_lld_stats (struct ad_ble_lld_stats *stats)
 Gets low level driver statistics.
 

Detailed Description

BLE Adapter API.

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.