This file contains the type definitions for efr32xg2x chip-specific aspects of RAIL.

License#

Copyright 2020 Silicon Laboratories Inc. www.silabs.com

SPDX-License-Identifier: Zlib

The licensor of this software is Silicon Laboratories Inc.

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

  2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

  3. This notice may not be removed or altered from any source distribution.

Modules#

RAIL_ChannelConfigEntryAttr

Macros#

#define

SLI_LIBRARY_BUILD.

#define
RAIL_ENUM (name)

The RAIL library does not use enumerations because the ARM EABI leaves their size ambiguous, which causes problems if the application is built with different flags than the library.

#define
RAIL_ENUM_GENERIC (name, type)

This macro is a more generic version of the RAIL_ENUM() macro that allows the size of the type to be overridden instead of forcing the use of a uint8_t.

#define

Time it takes to take care of protocol switching.

#define

Indicates the number of 2.4 GHz RF Paths suppported.

#define

Indicates the number of sub-GHz RF Paths supported.

#define
RAIL_RF_PATHS (RAIL_RF_PATHS_SUBGIG + RAIL_RF_PATHS_2P4GIG)

Indicates the number of RF Paths supported.

#define

Indicates this version of RAIL supports IR calibration on multiple RF paths Needed for backwards compatibility.

#define

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_HP mode.

#define

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_HP mode.

#define
RAIL_TX_POWER_LEVEL_2P4_MP_MAX (RAIL_TX_POWER_LEVEL_2P4_HP_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_MP mode.

#define
RAIL_TX_POWER_LEVEL_2P4_MP_MIN (RAIL_TX_POWER_LEVEL_2P4_HP_MIN)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_MP mode.

#define
RAIL_TX_POWER_LEVEL_2P4_LP_MAX (RAIL_TX_POWER_LEVEL_2P4_HP_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LP mode.

#define
RAIL_TX_POWER_LEVEL_2P4_LP_MIN (RAIL_TX_POWER_LEVEL_2P4_HP_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LP mode.

#define
RAIL_TX_POWER_LEVEL_2P4_LLP_MAX (RAIL_TX_POWER_LEVEL_2P4_HP_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LLP mode.

#define
RAIL_TX_POWER_LEVEL_2P4_LLP_MIN (RAIL_TX_POWER_LEVEL_2P4_HP_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LLP mode.

#define

The maximum valid value for the RAIL_TxPowerLevel_t when using a SUBGHZ PA mode.

#define

The minimum valid value for the RAIL_TxPowerLevel_t when using a SUBGHZ PA mode.

#define

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_HP mode.

#define

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_HP mode.

#define

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_MP mode.

#define

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_MP mode.

#define

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LP mode.

#define

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LP mode.

#define

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LLP mode.

#define

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LLP mode.

#define
RAIL_TX_POWER_LEVEL_HP_MAX RAIL_TX_POWER_LEVEL_2P4_HP_MAX

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_HP_MIN RAIL_TX_POWER_LEVEL_2P4_HP_MIN

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_MP_MAX RAIL_TX_POWER_LEVEL_2P4_MP_MAX

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_MP_MIN RAIL_TX_POWER_LEVEL_2P4_MP_MIN

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_LP_MAX RAIL_TX_POWER_LEVEL_2P4_LP_MAX

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_LP_MIN RAIL_TX_POWER_LEVEL_2P4_LP_MIN

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_SUBGIG_MAX RAIL_TX_POWER_LEVEL_SUBGIG_HP_MAX

Backwards compatability define.

#define
RAIL_TX_POWER_LEVEL_SUBGIG_MIN RAIL_TX_POWER_LEVEL_SUBGIG_HP_MIN

Backwards compatability define.

#define

The number of PA's on this chip.

#define

The static amount of memory needed per channel for channel hopping, measured in 32 bit words, regardless of the size of radio configuration structures.

#define

Default PRS channel to use when configuring sleep.

#define

Default RTCC channel to use when configuring sleep.

#define

The minimum value for a consistent RAIL transition.

#define

The maximum value for a consistent RAIL transition.

Macro Definition Documentation#

__RAIL_CHIP_SPECIFIC_H_#

#define __RAIL_CHIP_SPECIFIC_H_

SLI_LIBRARY_BUILD.

Include guard


Definition at line 44 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_ENUM#

#define RAIL_ENUM
Value:
(name)

The RAIL library does not use enumerations because the ARM EABI leaves their size ambiguous, which causes problems if the application is built with different flags than the library.

Instead, uint8_t typedefs are used in compiled code for all enumerations. For documentation purposes, this is converted to an actual enumeration since it's much easier to read in Doxygen.


Definition at line 58 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_ENUM_GENERIC#

#define RAIL_ENUM_GENERIC
Value:
(name, type)

This macro is a more generic version of the RAIL_ENUM() macro that allows the size of the type to be overridden instead of forcing the use of a uint8_t.

See RAIL_ENUM() for more information.


Definition at line 62 of file chip/efr32/efr32xg2x/rail_chip_specific.h

TRANSITION_TIME_US#

#define TRANSITION_TIME_US
Value:
500

Time it takes to take care of protocol switching.


Definition at line 514 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_RF_PATHS_2P4GIG#

#define RAIL_RF_PATHS_2P4GIG
Value:
0

Indicates the number of 2.4 GHz RF Paths suppported.


Definition at line 541 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_RF_PATHS_SUBGIG#

#define RAIL_RF_PATHS_SUBGIG
Value:
0

Indicates the number of sub-GHz RF Paths supported.


Definition at line 557 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_RF_PATHS#

#define RAIL_RF_PATHS
Value:
(RAIL_RF_PATHS_SUBGIG + RAIL_RF_PATHS_2P4GIG)

Indicates the number of RF Paths supported.


Definition at line 565 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RADIO_CONFIG_ENABLE_IRCAL_MULTIPLE_RF_PATHS#

#define RADIO_CONFIG_ENABLE_IRCAL_MULTIPLE_RF_PATHS
Value:
0

Indicates this version of RAIL supports IR calibration on multiple RF paths Needed for backwards compatibility.


Definition at line 580 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_HP_MAX#

#define RAIL_TX_POWER_LEVEL_2P4_HP_MAX
Value:
(240)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_HP mode.


Definition at line 709 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_HP_MIN#

#define RAIL_TX_POWER_LEVEL_2P4_HP_MIN
Value:
(1U)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_HP mode.


Definition at line 714 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_MP_MAX#

#define RAIL_TX_POWER_LEVEL_2P4_MP_MAX
Value:
(RAIL_TX_POWER_LEVEL_2P4_HP_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_MP mode.


Definition at line 719 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_MP_MIN#

#define RAIL_TX_POWER_LEVEL_2P4_MP_MIN
Value:
(RAIL_TX_POWER_LEVEL_2P4_HP_MIN)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_MP mode.


Definition at line 724 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_LP_MAX#

#define RAIL_TX_POWER_LEVEL_2P4_LP_MAX
Value:
(RAIL_TX_POWER_LEVEL_2P4_HP_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LP mode.


Definition at line 729 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_LP_MIN#

#define RAIL_TX_POWER_LEVEL_2P4_LP_MIN
Value:
(RAIL_TX_POWER_LEVEL_2P4_HP_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LP mode.


Definition at line 734 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_LLP_MAX#

#define RAIL_TX_POWER_LEVEL_2P4_LLP_MAX
Value:
(RAIL_TX_POWER_LEVEL_2P4_HP_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LLP mode.


Definition at line 739 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_2P4_LLP_MIN#

#define RAIL_TX_POWER_LEVEL_2P4_LLP_MIN
Value:
(RAIL_TX_POWER_LEVEL_2P4_HP_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_2P4GIG_LLP mode.


Definition at line 744 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_SUBGIG_MAX#

#define RAIL_SUBGIG_MAX
Value:
0U

The maximum valid value for the RAIL_TxPowerLevel_t when using a SUBGHZ PA mode.


Definition at line 759 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_SUBGIG_MIN#

#define RAIL_SUBGIG_MIN
Value:
1U

The minimum valid value for the RAIL_TxPowerLevel_t when using a SUBGHZ PA mode.


Definition at line 767 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_HP_MAX#

#define RAIL_TX_POWER_LEVEL_SUBGIG_HP_MAX
Value:
(RAIL_SUBGIG_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_HP mode.


Definition at line 773 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_HP_MIN#

#define RAIL_TX_POWER_LEVEL_SUBGIG_HP_MIN
Value:
(RAIL_SUBGIG_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_HP mode.


Definition at line 778 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_MP_MAX#

#define RAIL_TX_POWER_LEVEL_SUBGIG_MP_MAX
Value:
(RAIL_SUBGIG_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_MP mode.


Definition at line 783 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_MP_MIN#

#define RAIL_TX_POWER_LEVEL_SUBGIG_MP_MIN
Value:
(RAIL_SUBGIG_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_MP mode.


Definition at line 788 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_LP_MAX#

#define RAIL_TX_POWER_LEVEL_SUBGIG_LP_MAX
Value:
(RAIL_SUBGIG_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LP mode.


Definition at line 793 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_LP_MIN#

#define RAIL_TX_POWER_LEVEL_SUBGIG_LP_MIN
Value:
(RAIL_SUBGIG_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LP mode.


Definition at line 798 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_LLP_MAX#

#define RAIL_TX_POWER_LEVEL_SUBGIG_LLP_MAX
Value:
(RAIL_SUBGIG_MAX)

The maximum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LLP mode.


Definition at line 803 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_LLP_MIN#

#define RAIL_TX_POWER_LEVEL_SUBGIG_LLP_MIN
Value:
(RAIL_SUBGIG_MIN)

The minimum valid value for the RAIL_TxPowerLevel_t when in RAIL_TX_POWER_MODE_SUBGIG_LLP mode.


Definition at line 808 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_HP_MAX#

#define RAIL_TX_POWER_LEVEL_HP_MAX
Value:
RAIL_TX_POWER_LEVEL_2P4_HP_MAX

Backwards compatability define.


Definition at line 830 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_HP_MIN#

#define RAIL_TX_POWER_LEVEL_HP_MIN
Value:
RAIL_TX_POWER_LEVEL_2P4_HP_MIN

Backwards compatability define.


Definition at line 832 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_MP_MAX#

#define RAIL_TX_POWER_LEVEL_MP_MAX
Value:
RAIL_TX_POWER_LEVEL_2P4_MP_MAX

Backwards compatability define.


Definition at line 834 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_MP_MIN#

#define RAIL_TX_POWER_LEVEL_MP_MIN
Value:
RAIL_TX_POWER_LEVEL_2P4_MP_MIN

Backwards compatability define.


Definition at line 836 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_LP_MAX#

#define RAIL_TX_POWER_LEVEL_LP_MAX
Value:
RAIL_TX_POWER_LEVEL_2P4_LP_MAX

Backwards compatability define.


Definition at line 838 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_LP_MIN#

#define RAIL_TX_POWER_LEVEL_LP_MIN
Value:
RAIL_TX_POWER_LEVEL_2P4_LP_MIN

Backwards compatability define.


Definition at line 840 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_MAX#

#define RAIL_TX_POWER_LEVEL_SUBGIG_MAX
Value:
RAIL_TX_POWER_LEVEL_SUBGIG_HP_MAX

Backwards compatability define.


Definition at line 842 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TX_POWER_LEVEL_SUBGIG_MIN#

#define RAIL_TX_POWER_LEVEL_SUBGIG_MIN
Value:
RAIL_TX_POWER_LEVEL_SUBGIG_HP_MIN

Backwards compatability define.


Definition at line 844 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_NUM_PA#

#define RAIL_NUM_PA
Value:
(3U)

The number of PA's on this chip.

(Including Virtual PAs)


Definition at line 862 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_CHANNEL_HOPPING_BUFFER_SIZE_PER_CHANNEL#

#define RAIL_CHANNEL_HOPPING_BUFFER_SIZE_PER_CHANNEL
Value:
(56U)

The static amount of memory needed per channel for channel hopping, measured in 32 bit words, regardless of the size of radio configuration structures.


Definition at line 929 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TIMER_SYNC_PRS_CHANNEL_DEFAULT#

#define RAIL_TIMER_SYNC_PRS_CHANNEL_DEFAULT
Value:
(7U)

Default PRS channel to use when configuring sleep.


Definition at line 950 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_TIMER_SYNC_RTCC_CHANNEL_DEFAULT#

#define RAIL_TIMER_SYNC_RTCC_CHANNEL_DEFAULT
Value:
(0U)

Default RTCC channel to use when configuring sleep.


Definition at line 957 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_MINIMUM_TRANSITION_US#

#define RAIL_MINIMUM_TRANSITION_US
Value:
(100U)

The minimum value for a consistent RAIL transition.

Note


Definition at line 977 of file chip/efr32/efr32xg2x/rail_chip_specific.h

RAIL_MAXIMUM_TRANSITION_US#

#define RAIL_MAXIMUM_TRANSITION_US
Value:
(1000000U)

The maximum value for a consistent RAIL transition.


Definition at line 983 of file chip/efr32/efr32xg2x/rail_chip_specific.h