IPv6 Medium Interface. More...
Data Structures |
|
| struct | ipv6_medium_instance_t |
|
IPv6 medium instance type.
More...
|
|
| struct | eui48_t |
|
EUI-48 value type.
More...
|
|
| struct | ipv6_medium_evt_t |
|
Type of IPv6 medium event parameters.
More...
|
|
| struct | ipv6_medium_error_t |
|
Type of IPv6 medium error parameters.
More...
|
|
| struct | ipv6_medium_init_params_t |
|
Structure for initialization parameters of the IPv6 medium.
More...
|
|
Macros |
|
| #define | EUI_48_SIZE 6 |
| #define | IPV6_MEDIUM_ID_ANY 0x00 |
| #define | IPV6_MEDIUM_ID_BLE 0x01 |
| #define | IPV6_MEDIUM_ID_802154 0x02 |
| #define | IPV6_MEDIUM_EVT_CONN_DOWN 0x01 |
| #define | IPV6_MEDIUM_EVT_CONN_UP 0x02 |
| #define | IPV6_MEDIUM_EVT_CONNECTABLE_MODE_ENTER 0x01 |
| #define | IPV6_MEDIUM_EVT_CONNECTABLE_MODE_EXIT 0x02 |
| #define | IPV6_MEDIUM_EVT_MAC_ADDRESS_CHANGED 0x03 |
| #define | IPV6_MEDIUM_EVT_PHY_SPECIFIC 0xFF |
Typedefs |
|
| typedef uint32_t | ipv6_medium_instance_id_t |
|
IPv6 medium instance identifier type.
|
|
| typedef uint8_t | ipv6_medium_type_t |
|
Type of IPv6 medium type.
|
|
| typedef void(* | ipv6_medium_evt_handler_t )( ipv6_medium_evt_t *p_ipv6_medium_evt) |
|
IPv6 medium event handler type.
|
|
| typedef void(* | ipv6_medium_error_handler_t )( ipv6_medium_error_t *p_ipv6_medium_error) |
|
IPv6 medium error handler type.
|
|
Functions |
|
| uint32_t | ipv6_medium_init ( ipv6_medium_init_params_t *p_init_param, ipv6_medium_type_t desired_medium_type, ipv6_medium_instance_t *p_new_medium_instance) |
|
Function for initializing the IPv6 medium.
More...
|
|
| uint32_t | ipv6_medium_connectable_mode_enter ( ipv6_medium_instance_id_t ipv6_medium_instance_id) |
|
Function for entering connectible mode.
More...
|
|
| uint32_t | ipv6_medium_connectable_mode_exit ( ipv6_medium_instance_id_t ipv6_medium_instance_id) |
|
Function for exiting connectible mode.
More...
|
|
| uint32_t | ipv6_medium_eui48_get ( ipv6_medium_instance_id_t ipv6_medium_instance_id, eui48_t *p_ipv6_medium_eui48) |
|
Function for getting the 48-bit Extended Unique Identifier.
More...
|
|
| uint32_t | ipv6_medium_eui48_set ( ipv6_medium_instance_id_t ipv6_medium_instance_id, eui48_t *p_ipv6_medium_eui48) |
|
Function for setting the 48-bit Extended Unique Identifier.
More...
|
|
| uint32_t | ipv6_medium_eui64_get ( ipv6_medium_instance_id_t ipv6_medium_instance_id, eui64_t *p_ipv6_medium_eui64) |
|
Function for getting the 64-bit Extended Unique Identifier.
More...
|
|
| uint32_t | ipv6_medium_eui64_set ( ipv6_medium_instance_id_t ipv6_medium_instance_id, eui64_t *p_ipv6_medium_eui64) |
|
Function for setting the 64-bit Extended Unique Identifier.
More...
|
|
Detailed Description
IPv6 Medium Interface.
Implementation-agnostic interface of the physical transport that facilitates IPv6 traffic.
Macro Definition Documentation
| #define EUI_48_SIZE 6 |
Size of a 48-bit Extended Unique Identifier in bytes.
| #define IPV6_MEDIUM_EVT_CONN_DOWN 0x01 |
Indicates that a connection is established.
| #define IPV6_MEDIUM_EVT_CONN_UP 0x02 |
Indicates that a connection is torn down.
| #define IPV6_MEDIUM_EVT_CONNECTABLE_MODE_ENTER 0x01 |
Indicates that the medium entered connectable mode.
| #define IPV6_MEDIUM_EVT_CONNECTABLE_MODE_EXIT 0x02 |
Indicates that the medium exited connectable mode.
| #define IPV6_MEDIUM_EVT_MAC_ADDRESS_CHANGED 0x03 |
Indicates that the device has a new MAC address.
| #define IPV6_MEDIUM_EVT_PHY_SPECIFIC 0xFF |
Indicates miscellaneous event from the physical layer.
| #define IPV6_MEDIUM_ID_802154 0x02 |
Indicates that the physical transport is 802.15.4.
| #define IPV6_MEDIUM_ID_ANY 0x00 |
Indicates invalid physical transport type.
| #define IPV6_MEDIUM_ID_BLE 0x01 |
Indicates that the physical transport is BLE.
Function Documentation
| uint32_t ipv6_medium_connectable_mode_enter | ( | ipv6_medium_instance_id_t | ipv6_medium_instance_id | ) |
Function for entering connectible mode.
Requests the IPv6 medium to enter connectible mode.
- Parameters
-
[in] ipv6_medium_instance_id Specifies the IPv6 medium instance.
- Return values
-
NRF_SUCCESS If the procedure was successful. Otherwise, a propagated error code is returned.
| uint32_t ipv6_medium_connectable_mode_exit | ( | ipv6_medium_instance_id_t | ipv6_medium_instance_id | ) |
Function for exiting connectible mode.
Requests the IPv6 medium to exit connectible mode.
- Parameters
-
[in] ipv6_medium_instance_id Specifies the IPv6 medium instance.
- Return values
-
NRF_SUCCESS If the procedure was successful. Otherwise, a propagated error code is returned.
| uint32_t ipv6_medium_eui48_get | ( | ipv6_medium_instance_id_t | ipv6_medium_instance_id , |
| eui48_t * | p_ipv6_medium_eui48 | ||
| ) |
Function for getting the 48-bit Extended Unique Identifier.
- Parameters
-
[in] ipv6_medium_instance_id Specifies the IPv6 medium instance. [out] p_ipv6_medium_eui48 Pointer to the EUI-48 value.
- Return values
-
NRF_SUCCESS If the procedure was successful. Otherwise, a propagated error code is returned.
| uint32_t ipv6_medium_eui48_set | ( | ipv6_medium_instance_id_t | ipv6_medium_instance_id , |
| eui48_t * | p_ipv6_medium_eui48 | ||
| ) |
Function for setting the 48-bit Extended Unique Identifier.
- Parameters
-
[in] ipv6_medium_instance_id Specifies the IPv6 medium instance. [in] p_ipv6_medium_eui48 Pointer to the EUI-48 value.
- Return values
-
NRF_SUCCESS If the procedure was successful. Otherwise, a propagated error code is returned.
| uint32_t ipv6_medium_eui64_get | ( | ipv6_medium_instance_id_t | ipv6_medium_instance_id , |
| eui64_t * | p_ipv6_medium_eui64 | ||
| ) |
Function for getting the 64-bit Extended Unique Identifier.
- Parameters
-
[in] ipv6_medium_instance_id Specifies the IPv6 medium instance. [out] p_ipv6_medium_eui64 Pointer to the EUI-64 value.
- Return values
-
NRF_SUCCESS If the procedure was successful. Otherwise, a propagated error code is returned.
| uint32_t ipv6_medium_eui64_set | ( | ipv6_medium_instance_id_t | ipv6_medium_instance_id , |
| eui64_t * | p_ipv6_medium_eui64 | ||
| ) |
Function for setting the 64-bit Extended Unique Identifier.
- Parameters
-
[in] ipv6_medium_instance_id Specifies the IPv6 medium instance. [in] p_ipv6_medium_eui64 Pointer to the EUI-64 value.
- Return values
-
NRF_SUCCESS If the procedure was successful. Otherwise, a propagated error code is returned.
| uint32_t ipv6_medium_init | ( | ipv6_medium_init_params_t * | p_init_param , |
| ipv6_medium_type_t | desired_medium_type , | ||
| ipv6_medium_instance_t * | p_new_medium_instance | ||
| ) |
Function for initializing the IPv6 medium.
Initializes the IPv6 medium module. Performs all setup necessary that is specific to the implementation.
- Parameters
-
[in] p_init_param Pointer to the initialization parameters. [in] desired_medium_type Value of the desired medium type. [out] p_new_medium_instance Pointer to the new medium instance initialized.
- Return values
-
NRF_SUCCESS If initialization was successful. Otherwise, a propagated error code is returned.