HCI PHY layer for serialization. More...
Data Structures |
|
| struct | ser_phy_hci_pkt_params_t |
|
Struct representing a PHY HCI packet.
More...
|
|
| struct | ser_phy_hci_evt_hw_error_params_t |
|
Struct containing parameters of event of type
SER_PHY_HCI_SLIP_EVT_HW_ERROR
.
More...
|
|
| struct | ser_phy_hci_slip_evt_t |
|
Struct containing events from the Serialization PHY module.
More...
|
|
Typedefs |
|
| typedef void(* | ser_phy_hci_slip_event_handler_t )( ser_phy_hci_slip_evt_t *p_event) |
|
Type of generic callback function handler to be used by all PHY HCI events.
More...
|
|
Enumerations |
|
| enum |
ser_phy_hci_slip_evt_type_t
{
SER_PHY_HCI_SLIP_EVT_PKT_SENT = 0, SER_PHY_HCI_SLIP_EVT_ACK_SENT , SER_PHY_HCI_SLIP_EVT_PKT_RECEIVED , SER_PHY_HCI_SLIP_EVT_HW_ERROR , SER_PHY_HCI_SLIP_EVT_TYPE_MAX } |
|
Serialization PHY HCI module events types.
More...
|
|
Functions |
|
| uint32_t | ser_phy_hci_slip_open ( ser_phy_hci_slip_event_handler_t events_handler) |
|
Function for opening and initializing a HCI SLIP PHY module.
More...
|
|
| uint32_t | ser_phy_hci_slip_tx_pkt_send (const ser_phy_hci_pkt_params_t *p_header, const ser_phy_hci_pkt_params_t *p_payload, const ser_phy_hci_pkt_params_t *p_crc) |
|
A function for transmitting a HCI SLIP packet.
More...
|
|
| uint32_t | ser_phy_hci_slip_rx_buf_free (uint8_t *p_buffer) |
|
A function for freeing an RX buffer.
More...
|
|
| void | ser_phy_hci_slip_close (void) |
|
A function for closing a PHY HCI module.
More...
|
|
Detailed Description
HCI PHY layer for serialization.
This file contains declarations of functions and definitions of data structures and identifiers (typedef enum) used as API of the serialization HCI PHY layer.
Typedef Documentation
| typedef void(* ser_phy_hci_slip_event_handler_t)( ser_phy_hci_slip_evt_t *p_event) |
Type of generic callback function handler to be used by all PHY HCI events.
- Parameters
-
[in] event Serialization PHY HCI module event.
Enumeration Type Documentation
Serialization PHY HCI module events types.
Function Documentation
| void ser_phy_hci_slip_close | ( | void | ) |
A function for closing a PHY HCI module.
- Note
- The function disables hardware, resets internal module states, and unregisters the events callback function.
| uint32_t ser_phy_hci_slip_open | ( | ser_phy_hci_slip_event_handler_t | events_handler | ) |
Function for opening and initializing a HCI SLIP PHY module.
- Note
- The function initializes hardware and internal module states and registers callback function to be used by all PHY HCI module events.
- Warning
- If the function has been already called, the function ser_phy_hci_slip_close has to be called before ser_phy_hci_slip_open can be called again.
- Parameters
-
[in] events_handler Generic callback function handler to be used by all PHY HCI module events.
- Return values
-
NRF_SUCCESS Operation success. NRF_ERROR_INVALID_STATE Operation failure. The function has been already called. To call it again, the function ser_phy_hci_slip_close has to be called first. NRF_ERROR_NULL Operation failure. NULL pointer supplied. NRF_ERROR_INVALID_PARAM Operation failure. Hardware initialization parameters are not supported.
| uint32_t ser_phy_hci_slip_rx_buf_free | ( | uint8_t * | p_buffer | ) |
A function for freeing an RX buffer.
- Note
- The function has to be called as a response to event SER_PHY_HCI_SLIP_EVT_PKT_RECEIVED when an RX packet has been processed. The function frees the RX buffer and therefore enables reception of next incoming data.
- Parameters
-
[in] p_buffer Pointer to an RX buffer which must be freed.
- Return values
-
NRF_SUCCESS Operation success. NRF_ERROR_NULL Operation failure. NULL pointer supplied. NRF_ERROR_INVALID_STATE Operation failure. A buffer was already free.
| uint32_t ser_phy_hci_slip_tx_pkt_send | ( | const ser_phy_hci_pkt_params_t * | p_header , |
| const ser_phy_hci_pkt_params_t * | p_payload , | ||
| const ser_phy_hci_pkt_params_t * | p_crc | ||
| ) |
A function for transmitting a HCI SLIP packet.
- Note
- The function adds a packet pointed by p_buffer parameter to a transmission queue and schedules generation of an event of type SER_PHY_HCI_SLIP_EVT_PKT_SENT upon transmission completion.
- Parameters
-
[in] p_header Pointer to ser_phy_hci_pkt_params_t structure representing packet header. [in] p_payload Pointer to ser_phy_hci_pkt_params_t structure representing packet payload. [in] p_crc Pointer to ser_phy_hci_pkt_params_t structure representing packet crc.
- Return values
-
NRF_SUCCESS Operation success. Packet was added to the transmission queue and event will be sent upon transmission completion. NRF_ERROR_NULL Operation failure. NULL pointer supplied in p_header parameter. NULL pointer is allowed for p_payload and p_crc parameters. NRF_ERROR_INVALID_PARAM Operation failure. Number of bytes to be sent equals 0. NRF_ERROR_BUSY Operation failure. Transmitting of a packet in progress.