nRF WiFi
Loading...
Searching...
No Matches
hal_api.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
14#ifndef __HAL_API_SYS_H__
15#define __HAL_API_SYS_H__
16
17#include "osal_api.h"
18#include "common/rpu_if.h"
19#include "bal_api.h"
21#include "common/hal_mem.h"
22#include "common/hal_reg.h"
25
27 void *mac_dev_ctx);
28
29
31
33
51 enum NRF_WIFI_HAL_MSG_TYPE cmd_type,
52 void *data_cmd,
53 unsigned int data_cmd_size,
54 unsigned int desc_id,
55 unsigned int pool_id);
56
71 unsigned long buf,
72 unsigned int buf_len,
73 unsigned int pool_id,
74 unsigned int buf_id);
75
89 unsigned int data_len,
90 unsigned int pool_id,
91 unsigned int buf_id);
92
108 unsigned long buf,
109 unsigned int buf_len,
110 unsigned int desc_id,
111 unsigned int token,
112 unsigned int buf_indx);
113
125 unsigned int desc_id);
126
127#ifdef NRF70_SR_COEX_SLEEP_CTRL_GPIO_CTRL
141enum nrf_wifi_status nrf_wifi_hal_coex_config_sleep_ctrl_gpio_ctrl(
142 struct nrf_wifi_hal_dev_ctx *hal_dev_ctx,
143 unsigned int alt_swctrl1_function_bt_coex_status1,
144 unsigned int invert_bt_coex_grant_output);
145#endif /* NRF70_SR_COEX_SLEEP_CTRL_GPIO_CTRL */
146
147
148#ifdef NRF_WIFI_RX_BUFF_PROG_UMAC
160unsigned long nrf_wifi_hal_get_buf_map_rx(struct nrf_wifi_hal_dev_ctx *hal_dev_ctx,
161 unsigned int pool_id,
162 unsigned int buf_id);
163#endif /*NRF_WIFI_RX_BUFF_PROG_UMAC */
164#endif /* __HAL_API_SYS_H__ */
Header containing API declarations for the HAL Layer of the Wi-Fi driver.
Header containing memory read/write specific declarations for the HAL Layer of the Wi-Fi driver.
Header containing register read/write specific declarations for the HAL Layer of the Wi-Fi driver.
NRF_WIFI_HAL_MSG_TYPE
Enumeration of NRF Wi-Fi HAL message types.
Definition hal_structs_common.h:75
Header containing structure declarations for the HAL Layer of the Wi-Fi driver.
nrf_wifi_status
The status of an operation performed by the RPU driver.
Definition osal_structs.h:39
Common structures and definitions for RPU interface.
struct nrf_wifi_hal_priv * hpriv
Definition hal_structs_common.h:203
void * mac_dev_ctx
Definition hal_structs_common.h:205
Structure to hold per device context information for the HAL layer.
Definition hal_structs_common.h:201
Structure to hold context information for the HAL layer.
Definition hal_structs_common.h:169
enum nrf_wifi_status nrf_wifi_sys_hal_data_cmd_send(struct nrf_wifi_hal_dev_ctx *hal_ctx, enum NRF_WIFI_HAL_MSG_TYPE cmd_type, void *data_cmd, unsigned int data_cmd_size, unsigned int desc_id, unsigned int pool_id)
Send a data command to the RPU.
unsigned long nrf_wifi_sys_hal_buf_unmap_rx(struct nrf_wifi_hal_dev_ctx *hal_ctx, unsigned int data_len, unsigned int pool_id, unsigned int buf_id)
Unmap a receive buffer from the Wi-Fi HAL.
unsigned long nrf_wifi_sys_hal_buf_map_tx(struct nrf_wifi_hal_dev_ctx *hal_ctx, unsigned long buf, unsigned int buf_len, unsigned int desc_id, unsigned int token, unsigned int buf_indx)
Map a transmit buffer for the Wi-Fi HAL.
unsigned long nrf_wifi_sys_hal_buf_map_rx(struct nrf_wifi_hal_dev_ctx *hal_ctx, unsigned long buf, unsigned int buf_len, unsigned int pool_id, unsigned int buf_id)
Map a receive buffer for the Wi-Fi HAL.
void nrf_wifi_sys_hal_lock_rx(struct nrf_wifi_hal_dev_ctx *hal_dev_ctx)
struct nrf_wifi_hal_dev_ctx * nrf_wifi_sys_hal_dev_add(struct nrf_wifi_hal_priv *hpriv, void *mac_dev_ctx)
void nrf_wifi_sys_hal_unlock_rx(struct nrf_wifi_hal_dev_ctx *hal_dev_ctx)
unsigned long nrf_wifi_sys_hal_buf_unmap_tx(struct nrf_wifi_hal_dev_ctx *hal_ctx, unsigned int desc_id)
Unmap a transmit buffer from the Wi-Fi HAL.