Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
IEEE 802.15.4 driver configuration data. More...
#include <ieee802154_radio.h>
IEEE 802.15.4 driver configuration data.
union { ... } ieee802154_config |
Configuration data.
struct { ... } ieee802154_config::ack_fpb |
struct { ... } ieee802154_config::ack_ie |
uint8_t* ieee802154_config::addr |
little endian for both short and extended address
struct { ... } ieee802154_config::auto_ack_fpb |
uint8_t ieee802154_config::channel |
Used channel.
uint32_t ieee802154_config::csl_period |
see IEEE802154_CONFIG_CSL_PERIOD
in CPU byte order
net_time_t ieee802154_config::duration |
Nanosecond resolution duration of the RX window relative to the above RX window start time during which the receiver is expected to be listening (i.e.
not including any shutdown times). Only positive values larger than or equal zero are allowed.
Setting the duration to zero will disable the receiver, no matter what the start parameter.
bool ieee802154_config::enabled |
Is auto ACK FPB enabled.
Is enabled.
ieee802154_event_cb_t ieee802154_config::event_handler |
net_time_t ieee802154_config::expected_rx_time |
Filters the devices that will receive this IE by extended address.
MAY be set to NULL to configure a fallback for all devices (implies that short_addr MUST also be set to IEEE802154_BROADCAST_ADDRESS).
in big endian
bool ieee802154_config::extended |
Is extended address.
uint32_t ieee802154_config::frame_counter |
struct ieee802154_header_ie* ieee802154_config::header_ie |
Pointer to the header IE, see section 7.4.2.1, figure 7-21.
Certain header IEs may be incomplete if they require timing information to be injected at runtime on-the-fly, see the list in IEEE802154_CONFIG_ENH_ACK_HEADER_IE.
struct ieee802154_key* ieee802154_config::mac_keys |
see IEEE802154_CONFIG_MAC_KEYS
Pointer to an array containing a list of keys used for MAC encryption. Refer to secKeyIdLookupDescriptor and secKeyDescriptor in IEEE 802.15.4
The key_value field points to a buffer containing the 16 byte key. The buffer SHALL be copied by the driver before returning from the call.
The variable length array is terminated by key_value field set to NULL.
enum ieee802154_fpb_mode ieee802154_config::mode |
Auto ACK FPB mode.
bool ieee802154_config::pan_coordinator |
bool ieee802154_config::promiscuous |
bool ieee802154_config::purge_ie |
Flag for purging enh ACK header IEs.
When flag is set to true, driver should remove all existing header IEs, and all other entries in config should be ignored. This means that purging current header IEs and configuring a new one in the same call is not allowed.
bool ieee802154_config::rx_on_when_idle |
struct { ... } ieee802154_config::rx_slot |
uint16_t ieee802154_config::short_addr |
Filters the devices that will receive this IE by short address.
MAY be set to IEEE802154_BROADCAST_ADDRESS to configure a fallback for all devices (implies that ext_addr MUST also set to NULL in this case).
in CPU byte order
net_time_t ieee802154_config::start |
Nanosecond resolution timestamp relative to the network subsystem's local clock defining the start of the RX window during which the receiver is expected to be listening (i.e.
not including any driver startup times).
Configuring an rx_slot with the start attribute set to -1 will cancel and delete any previously active rx slot.