This information applies to the following SoftDevice:
S132
This section contains declarations of functions and typedefs used as API of the HAL Transport layer for serialization. This layer is fully hardware independent. Currently, the HAL Transport layer is responsible for controlling the PHY layer and memory management. In the future, it is possible to add more features to it, such as crc or retransmission.
Page-1
Start/End-point
Start
Start
Process.245
HAL_TRANSP_RX_STATE_CLOSED
HAL_TRANSP_RX_STATE_CLOSED
Flowline1
Process.230
HAL_TRANSP_RX_STATE_IDLE
HAL_TRANSP_RX_STATE_IDLE
Process.232
HAL_TRANSP_RX_STATE_RECEIVING
HAL_TRANSP_RX_STATE_RECEIVING
Process.233
HAL_TRANSP_RX_STATE_RECEIVED
HAL_TRANSP_RX_STATE_RECEIVED
Flowline1.234
ser_hal_transport_open(transport_events_handler) / ser_phy_op...
ser_hal_transport_open(transport_events_handler) / ser _ phy _ open ( phy _ events _ handler )
Flowline1.236
SER_PHY_EVT_RX_BUF_REQUEST / transport_events_handler( SER_HA...
SER_PHY_EVT_RX_BUF_REQUEST / transport _ events _ handler ( SER _ HAL _ TRANSP _ EVT _ RX _ PKT _ RECEIVING )
Flowline2
ser_hal_transport_close() / ser_phy_close()
Straight Edge.28
N
Straight Edge.29
N
ser_hal_transport_close() / ser _ phy _ close ()
Sheet.261
from any state
from any state
Annotation/Comment
Sheet.264
Sheet.265
Sheet.266
Sheet.267
Sheet.268
Sheet.269
Sheet.270
Sheet.271
Sheet.272
Sheet.273
Sheet.274
Sheet.275
Sheet.276
Sheet.277
Legend: trigger from PHY layer / actions trigger from layer a...
Legend: trigger from PHY layer / actions trigger from layer above transport / actions [ guard] / actions
Decision.254
Decision.280
Process.281
HAL_TRANSP_RX_STATE_RECEIVED_PENDING_BUF_REQ
HAL_TRANSP_RX_STATE_RECEIVED_PENDING _BUF_REQ
Process.282
HAL_TRANSP_RX_STATE_DROPPING
HAL_TRANSP_RX_STATE_DROPPING
Process.283
HAL_TRANSP_RX_STATE_RECEIVED_DROPPING
HAL_TRANSP_RX_STATE_RECEIVED_DROPPING
Flowline2.295
[rx_buf_request.num_of_bytes > sizeof (m_rx_buffer)] / ser_ph...
Straight Edge.28
N
Straight Edge.29
N
[rx_buf_request.num_of_bytes > sizeof (m_rx_buffer)] / ser _phy_rx_buf_set(NULL)
Flowline2.298
[rx_buf_request.num_of_bytes <= sizeof (m_rx_buffer)] / ser_p...
Straight Edge.28
N
Straight Edge.29
N
[rx_buf_request.num_of_bytes <= sizeof (m_rx_buffer)] / ser _phy_rx_buf_set(m_rx_buffer)
Flowline2.301
SER_PHY_EVT_RX_PKT_RECEIVED / transport_events_handler( HAL_T...
Straight Edge.28
N
Straight Edge.29
N
SER_PHY_EVT_RX_PKT_RECEIVED / transport _ events _ handler ( HAL _ TRANSP _ RX _ STATE _ RECEIVED )
Flowline1.304
SER_PHY_EVT_RX_BUF_REQUEST / transport_events_handler( SER_HA...
SER_PHY_EVT_RX_BUF_REQUEST / transport _ events _ handler ( SER _ HAL _ TRANSP _ EVT _ RX _ PKT _ RECEIVING )
Flowline2.305
[rx_buf_request.num_of_bytes <= sizeof (m_rx_buffer)] / -
Straight Edge.28
N
Straight Edge.29
N
[rx_buf_request.num_of_bytes <= sizeof (m_rx_buffer)] / -
Flowline2.308
[rx_buf_request.num_of_bytes > sizeof (m_rx_buffer)] / ser_ph...
Straight Edge.28
N
Straight Edge.29
N
[rx_buf_request.num_of_bytes > sizeof (m_rx_buffer)] / ser _phy_rx_buf_set(NULL)
Flowline2.311
ser_hal_transport_rx_pkt_free(m_rx_buffer) / ser_phy_rx_buf_s...
Straight Edge.28
N
Straight Edge.29
N
ser_hal_transport_rx_pkt_free(m_rx_buffer) / ser _ phy _ rx _ buf _ set ( m _ rx _ buffer )
Flowline2.314
ser_hal_transport_rx_pkt_free(m_rx_buffer) / -
Straight Edge.28
N
Straight Edge.29
N
ser_hal_transport_rx_pkt_free(m_rx_buffer) / -
Flowline2.317
SER_PHY_EVT_RX_PKT_DROPPED / transport_events_handler( SER_HA...
Straight Edge.28
N
Straight Edge.29
N
SER_PHY_EVT_RX_PKT_DROPPED / transport _ events _ handler ( SER _ HAL _ TRANSP _ EVT _ RX _ PKT _ DROPPED )
Flowline2.320
ser_hal_transport_rx_pkt_free(m_rx_buffer) / -
Straight Edge.28
N
Straight Edge.29
N
ser_hal_transport_rx_pkt_free(m_rx_buffer) / -
Flowline2.323
SER_PHY_EVT_RX_PKT_DROPPED / transport_events_handler( SER_HA...
Straight Edge.28
N
Straight Edge.29
N
SER_PHY_EVT_RX_PKT_DROPPED / transport _ events _ handler ( SER _ HAL _ TRANSP _ EVT _ RX _ PKT _ DROPPED )
RX state machine
TX state machine