Rework internal header files to not have includes, rather have the required includes in the c source files. Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
70 lines
1.6 KiB
C
70 lines
1.6 KiB
C
/*
|
|
* Copyright (c) 2020 Demant
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
struct ull_tx_q {
|
|
uint8_t pause_data; /* Data pause state of the tx queue */
|
|
|
|
sys_slist_t tx_list; /* Data and control node_tx list */
|
|
sys_slist_t data_list; /* Data node_tx wait list */
|
|
};
|
|
|
|
/* Forward declaration of node_tx */
|
|
struct node_tx;
|
|
|
|
/**
|
|
* @brief Initialize a tx queue.
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
*/
|
|
void ull_tx_q_init(struct ull_tx_q *queue);
|
|
|
|
/**
|
|
* @brief Pause the data path of a tx queue.
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
*/
|
|
void ull_tx_q_pause_data(struct ull_tx_q *queue);
|
|
|
|
/**
|
|
* @brief Resume the data path of a tx queue
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
*/
|
|
void ull_tx_q_resume_data(struct ull_tx_q *queue);
|
|
|
|
/**
|
|
* @brief Enqueue a tx node in the data path of a tx queue
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
* @param tx Address of tx node to enqueue.
|
|
*/
|
|
void ull_tx_q_enqueue_data(struct ull_tx_q *queue, struct node_tx *tx);
|
|
|
|
/**
|
|
* @brief Enqueue a tx node in the control path of a tx queue
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
* @param tx Address of tx node to enqueue.
|
|
*/
|
|
void ull_tx_q_enqueue_ctrl(struct ull_tx_q *queue, struct node_tx *tx);
|
|
|
|
/**
|
|
* @brief Peek head tx node of tx queue.
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
*
|
|
* @return Head tx node of the tx queue.
|
|
*/
|
|
struct node_tx *ull_tx_q_peek(struct ull_tx_q *queue);
|
|
|
|
/**
|
|
* @brief Dequeue a tx node from a tx queue.
|
|
*
|
|
* @param ull_tx_q Address of tx queue.
|
|
*
|
|
* @return Head tx node of the tx queue.
|
|
*/
|
|
struct node_tx *ull_tx_q_dequeue(struct ull_tx_q *queue);
|