Definitions for stack tokens. See Stack Tokens for documentation. More...

Macros

#define CURRENT_STACK_TOKEN_VERSION
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 

Convenience Macros

The following convenience macros are used to simplify the definition process for commonly specified parameters to the basic TOKEN_DEF macro. See hal/micro/token.h for a more detailed explanation.

#define DEFINE_BASIC_TOKEN(name, type, ...)
 
#define DEFINE_BASIC_TOKEN(name, type, ...)
 
#define DEFINE_COUNTER_TOKEN(name, type, ...)
 
#define DEFINE_COUNTER_TOKEN(name, type, ...)
 
#define DEFINE_INDEXED_TOKEN(name, type, arraysize, ...)
 
#define DEFINE_INDEXED_TOKEN(name, type, arraysize, ...)
 
#define DEFINE_FIXED_BASIC_TOKEN(name, type, address, ...)
 
#define DEFINE_FIXED_BASIC_TOKEN(name, type, address, ...)
 
#define DEFINE_FIXED_COUNTER_TOKEN(name, type, address, ...)
 
#define DEFINE_FIXED_COUNTER_TOKEN(name, type, address, ...)
 
#define DEFINE_FIXED_INDEXED_TOKEN(name, type, arraysize, address, ...)
 
#define DEFINE_FIXED_INDEXED_TOKEN(name, type, arraysize, address, ...)
 

Creator Codes

The CREATOR is used as a distinct identifier tag for the token.

The CREATOR is necessary because the token name is defined differently depending on the hardware platform. Therefore, the CREATOR ensures that token definitions and data stay tagged and known. The only requirement is that each creator definition must be unique. See hal/micro/token.h for a more detailed explanation.

#define CREATOR_STACK_NVDATA_VERSION
 
#define CREATOR_STACK_NVDATA_VERSION
 
#define CREATOR_STACK_ANALYSIS_REBOOT
 
#define CREATOR_STACK_ANALYSIS_REBOOT
 
#define CREATOR_STACK_NODE_DATA
 
#define CREATOR_STACK_NODE_DATA
 
#define CREATOR_STACK_SECURITY_KEY
 
#define CREATOR_STACK_SECURITY_KEY
 
#define CREATOR_STACK_NONCE_COUNTER
 
#define CREATOR_STACK_NONCE_COUNTER
 
#define CREATOR_STACK_CHILD_TABLE
 
#define CREATOR_STACK_CHILD_TABLE
 
#define CREATOR_STACK_LAST_ASSIGNED_ID
 
#define CREATOR_STACK_LAST_ASSIGNED_ID
 
#define CREATOR_STACK_BOOT_COUNTER
 
#define CREATOR_STACK_BOOT_COUNTER
 
#define CREATOR_STACK_PARENT_LONG_ID
 
#define CREATOR_STACK_PARENT_LONG_ID
 

NVM3 Object Keys

The NVM3 object key is used as a distinct identifier tag for a token stored in NVM3.

Every token must have a defined NVM3 object key and the object key must be unique. The object key defined must be in the following format: NVM3KEY_tokenname

where tokenname is the name of the token without NVM3KEY_ or TOKEN_ prefix.

#define NVM3KEY_DOMAIN_USER
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_DOMAIN_USER
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_DOMAIN_CONNECT
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_DOMAIN_CONNECT
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_DOMAIN_COMMON
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_DOMAIN_COMMON
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_NVDATA_VERSION
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_NVDATA_VERSION
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_ANALYSIS_REBOOT
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_ANALYSIS_REBOOT
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_NODE_DATA
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_NODE_DATA
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_SECURITY_KEY
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_SECURITY_KEY
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_NONCE_COUNTER
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_NONCE_COUNTER
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_CHILD_TABLE
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_CHILD_TABLE
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_LAST_ASSIGNED_ID
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_LAST_ASSIGNED_ID
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_BOOT_COUNTER
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_BOOT_COUNTER
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_PARENT_LONG_ID
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define NVM3KEY_STACK_PARENT_LONG_ID
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define CURRENT_STACK_TOKEN_VERSION
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 
#define CURRENT_STACK_TOKEN_VERSION
 The current version number of the stack tokens. MSB is the version. LSB is a complement. More...
 

Convenience Macros

The following convenience macros are used to simplify the definition process for commonly specified parameters to the basic TOKEN_DEF macro. See hal/micro/token.h for a more detailed explanation.

#define DEFINE_BASIC_TOKEN(name, type, ...)
 
#define DEFINE_COUNTER_TOKEN(name, type, ...)
 
#define DEFINE_INDEXED_TOKEN(name, type, arraysize, ...)
 
#define DEFINE_FIXED_BASIC_TOKEN(name, type, address, ...)
 
#define DEFINE_FIXED_COUNTER_TOKEN(name, type, address, ...)
 
#define DEFINE_FIXED_INDEXED_TOKEN(name, type, arraysize, address, ...)
 

Creator Codes

The CREATOR is used as a distinct identifier tag for the token.

The CREATOR is necessary because the token name is defined differently depending on the hardware platform. Therefore, the CREATOR ensures that token definitions and data stay tagged and known. The only requirement is that each creator definition must be unique. See hal/micro/token.h for a more detailed explanation.

#define CREATOR_STACK_NVDATA_VERSION
 
#define CREATOR_STACK_ANALYSIS_REBOOT
 
#define CREATOR_STACK_NODE_DATA
 
#define CREATOR_STACK_SECURITY_KEY
 
#define CREATOR_STACK_NONCE_COUNTER
 
#define CREATOR_STACK_CHILD_TABLE
 
#define CREATOR_STACK_LAST_ASSIGNED_ID
 
#define CREATOR_STACK_BOOT_COUNTER
 
#define CREATOR_STACK_PARENT_LONG_ID
 

NVM3 Object Keys

The NVM3 object key is used as a distinct identifier tag for a token stored in NVM3.

Every token must have a defined NVM3 object key and the object key must be unique. The object key defined must be in the following format: NVM3KEY_tokenname

where tokenname is the name of the token without NVM3KEY_ or TOKEN_ prefix.

#define NVM3KEY_DOMAIN_USER
 
#define NVM3KEY_DOMAIN_CONNECT
 
#define NVM3KEY_DOMAIN_COMMON
 
#define NVM3KEY_STACK_NVDATA_VERSION
 
#define NVM3KEY_STACK_ANALYSIS_REBOOT
 
#define NVM3KEY_STACK_NODE_DATA
 
#define NVM3KEY_STACK_SECURITY_KEY
 
#define NVM3KEY_STACK_NONCE_COUNTER
 
#define NVM3KEY_STACK_CHILD_TABLE
 
#define NVM3KEY_STACK_LAST_ASSIGNED_ID
 
#define NVM3KEY_STACK_BOOT_COUNTER
 
#define NVM3KEY_STACK_PARENT_LONG_ID
 

Detailed Description

Definitions for stack tokens. See Stack Tokens for documentation.

The file token-stack.h should not be included directly. It is accessed by the other token files.

License

Copyright 2018 Silicon Laboratories Inc. www.silabs.com

The licensor of this software is Silicon Laboratories Inc. Your use of this software is governed by the terms of Silicon Labs Master Software License Agreement (MSLA) available at www.silabs.com/about-us/legal/master-software-license-agreement. This software is distributed to you in Source Code format and is governed by the sections of the MSLA applicable to Source Code.

The tokens listed here are divided into three sections (the three main types of tokens mentioned in token.h):

  • manufacturing
  • stack
  • application

For a full explanation of the tokens, see hal/micro/token.h. See token-stack.h for source code.

A set of tokens is predefined in the APPLICATION DATA section at the end of token-stack.h because these tokens are required by the stack. They are classified as application tokens since they are sized by the application via its CONFIGURATION_HEADER.

The user application can include its own tokens in a header file similar to this one. The macro ::APPLICATION_TOKEN_HEADER should be defined to equal the name of the header file in which the application tokens are defined. See the APPLICATION DATA section at the end of token-stack.h for examples of token definitions.

Since token-stack.h contains both the typedefs and the token defs, two #defines are used to select which one is needed when this file is included. #define DEFINETYPES is used to select the type definitions and #define DEFINETOKENS is used to select the token definitions. See token.h and token.c to see how these are used.

Macro Definition Documentation

#define CREATOR_STACK_ANALYSIS_REBOOT

Definition at line 226 of file cortexm3/token.h.

#define CREATOR_STACK_ANALYSIS_REBOOT

Definition at line 226 of file cortexm3/token.h.

#define CREATOR_STACK_ANALYSIS_REBOOT

Definition at line 132 of file token-stack.h.

#define CREATOR_STACK_BOOT_COUNTER

Definition at line 138 of file token-stack.h.

#define CREATOR_STACK_BOOT_COUNTER

Definition at line 232 of file cortexm3/token.h.

#define CREATOR_STACK_BOOT_COUNTER

Definition at line 232 of file cortexm3/token.h.

#define CREATOR_STACK_CHILD_TABLE

Definition at line 136 of file token-stack.h.

#define CREATOR_STACK_CHILD_TABLE

Definition at line 230 of file cortexm3/token.h.

#define CREATOR_STACK_CHILD_TABLE

Definition at line 230 of file cortexm3/token.h.

#define CREATOR_STACK_LAST_ASSIGNED_ID

Definition at line 137 of file token-stack.h.

#define CREATOR_STACK_LAST_ASSIGNED_ID

Definition at line 231 of file cortexm3/token.h.

#define CREATOR_STACK_LAST_ASSIGNED_ID

Definition at line 231 of file cortexm3/token.h.

#define CREATOR_STACK_NODE_DATA

Definition at line 133 of file token-stack.h.

#define CREATOR_STACK_NODE_DATA

Definition at line 227 of file cortexm3/token.h.

#define CREATOR_STACK_NODE_DATA

Definition at line 227 of file cortexm3/token.h.

#define CREATOR_STACK_NONCE_COUNTER

Definition at line 135 of file token-stack.h.

#define CREATOR_STACK_NONCE_COUNTER

Definition at line 229 of file cortexm3/token.h.

#define CREATOR_STACK_NONCE_COUNTER

Definition at line 229 of file cortexm3/token.h.

#define CREATOR_STACK_NVDATA_VERSION

Definition at line 225 of file cortexm3/token.h.

#define CREATOR_STACK_NVDATA_VERSION

Definition at line 225 of file cortexm3/token.h.

#define CREATOR_STACK_NVDATA_VERSION

Definition at line 131 of file token-stack.h.

#define CREATOR_STACK_PARENT_LONG_ID

Definition at line 139 of file token-stack.h.

#define CREATOR_STACK_PARENT_LONG_ID

Definition at line 233 of file cortexm3/token.h.

#define CREATOR_STACK_PARENT_LONG_ID

Definition at line 233 of file cortexm3/token.h.

#define CREATOR_STACK_SECURITY_KEY

Definition at line 134 of file token-stack.h.

#define CREATOR_STACK_SECURITY_KEY

Definition at line 228 of file cortexm3/token.h.

#define CREATOR_STACK_SECURITY_KEY

Definition at line 228 of file cortexm3/token.h.

#define CURRENT_STACK_TOKEN_VERSION

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 202 of file token-stack.h.

#define CURRENT_STACK_TOKEN_VERSION

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 296 of file cortexm3/token.h.

#define CURRENT_STACK_TOKEN_VERSION

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 296 of file cortexm3/token.h.

#define DEFINE_BASIC_TOKEN (   name,
  type,
  ... 
)

Definition at line 180 of file cortexm3/token.h.

#define DEFINE_BASIC_TOKEN (   name,
  type,
  ... 
)

Definition at line 86 of file token-stack.h.

#define DEFINE_BASIC_TOKEN (   name,
  type,
  ... 
)

Definition at line 180 of file cortexm3/token.h.

#define DEFINE_COUNTER_TOKEN (   name,
  type,
  ... 
)

Definition at line 183 of file cortexm3/token.h.

#define DEFINE_COUNTER_TOKEN (   name,
  type,
  ... 
)

Definition at line 183 of file cortexm3/token.h.

#define DEFINE_COUNTER_TOKEN (   name,
  type,
  ... 
)

Definition at line 89 of file token-stack.h.

#define DEFINE_FIXED_BASIC_TOKEN (   name,
  type,
  address,
  ... 
)

Definition at line 189 of file cortexm3/token.h.

#define DEFINE_FIXED_BASIC_TOKEN (   name,
  type,
  address,
  ... 
)

Definition at line 189 of file cortexm3/token.h.

#define DEFINE_FIXED_BASIC_TOKEN (   name,
  type,
  address,
  ... 
)

Definition at line 95 of file token-stack.h.

#define DEFINE_FIXED_COUNTER_TOKEN (   name,
  type,
  address,
  ... 
)

Definition at line 99 of file token-stack.h.

#define DEFINE_FIXED_COUNTER_TOKEN (   name,
  type,
  address,
  ... 
)

Definition at line 193 of file cortexm3/token.h.

#define DEFINE_FIXED_COUNTER_TOKEN (   name,
  type,
  address,
  ... 
)

Definition at line 193 of file cortexm3/token.h.

#define DEFINE_FIXED_INDEXED_TOKEN (   name,
  type,
  arraysize,
  address,
  ... 
)

Definition at line 197 of file cortexm3/token.h.

#define DEFINE_FIXED_INDEXED_TOKEN (   name,
  type,
  arraysize,
  address,
  ... 
)

Definition at line 197 of file cortexm3/token.h.

#define DEFINE_FIXED_INDEXED_TOKEN (   name,
  type,
  arraysize,
  address,
  ... 
)

Definition at line 103 of file token-stack.h.

#define DEFINE_INDEXED_TOKEN (   name,
  type,
  arraysize,
  ... 
)

Definition at line 92 of file token-stack.h.

#define DEFINE_INDEXED_TOKEN (   name,
  type,
  arraysize,
  ... 
)

Definition at line 186 of file cortexm3/token.h.

#define DEFINE_INDEXED_TOKEN (   name,
  type,
  arraysize,
  ... 
)

Definition at line 186 of file cortexm3/token.h.

#define NVM3KEY_DOMAIN_COMMON

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 256 of file cortexm3/token.h.

#define NVM3KEY_DOMAIN_COMMON

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 256 of file cortexm3/token.h.

#define NVM3KEY_DOMAIN_COMMON

Definition at line 162 of file token-stack.h.

#define NVM3KEY_DOMAIN_CONNECT

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 255 of file cortexm3/token.h.

#define NVM3KEY_DOMAIN_CONNECT

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 255 of file cortexm3/token.h.

#define NVM3KEY_DOMAIN_CONNECT

Definition at line 161 of file token-stack.h.

#define NVM3KEY_DOMAIN_USER

Definition at line 160 of file token-stack.h.

#define NVM3KEY_DOMAIN_USER

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 254 of file cortexm3/token.h.

#define NVM3KEY_DOMAIN_USER

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 254 of file cortexm3/token.h.

#define NVM3KEY_STACK_ANALYSIS_REBOOT

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 263 of file cortexm3/token.h.

#define NVM3KEY_STACK_ANALYSIS_REBOOT

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 263 of file cortexm3/token.h.

#define NVM3KEY_STACK_ANALYSIS_REBOOT

Definition at line 169 of file token-stack.h.

#define NVM3KEY_STACK_BOOT_COUNTER

Definition at line 175 of file token-stack.h.

#define NVM3KEY_STACK_BOOT_COUNTER

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 269 of file cortexm3/token.h.

#define NVM3KEY_STACK_BOOT_COUNTER

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 269 of file cortexm3/token.h.

#define NVM3KEY_STACK_CHILD_TABLE

Definition at line 173 of file token-stack.h.

#define NVM3KEY_STACK_CHILD_TABLE

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 267 of file cortexm3/token.h.

#define NVM3KEY_STACK_CHILD_TABLE

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 267 of file cortexm3/token.h.

#define NVM3KEY_STACK_LAST_ASSIGNED_ID

Definition at line 174 of file token-stack.h.

#define NVM3KEY_STACK_LAST_ASSIGNED_ID

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 268 of file cortexm3/token.h.

#define NVM3KEY_STACK_LAST_ASSIGNED_ID

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 268 of file cortexm3/token.h.

#define NVM3KEY_STACK_NODE_DATA

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 264 of file cortexm3/token.h.

#define NVM3KEY_STACK_NODE_DATA

Definition at line 170 of file token-stack.h.

#define NVM3KEY_STACK_NODE_DATA

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 264 of file cortexm3/token.h.

#define NVM3KEY_STACK_NONCE_COUNTER

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 266 of file cortexm3/token.h.

#define NVM3KEY_STACK_NONCE_COUNTER

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 266 of file cortexm3/token.h.

#define NVM3KEY_STACK_NONCE_COUNTER

Definition at line 172 of file token-stack.h.

#define NVM3KEY_STACK_NVDATA_VERSION

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 262 of file cortexm3/token.h.

#define NVM3KEY_STACK_NVDATA_VERSION

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 262 of file cortexm3/token.h.

#define NVM3KEY_STACK_NVDATA_VERSION

Definition at line 168 of file token-stack.h.

#define NVM3KEY_STACK_PARENT_LONG_ID

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 270 of file cortexm3/token.h.

#define NVM3KEY_STACK_PARENT_LONG_ID

Definition at line 176 of file token-stack.h.

#define NVM3KEY_STACK_PARENT_LONG_ID

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 270 of file cortexm3/token.h.

#define NVM3KEY_STACK_SECURITY_KEY

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 265 of file cortexm3/token.h.

#define NVM3KEY_STACK_SECURITY_KEY

The current version number of the stack tokens. MSB is the version. LSB is a complement.

See hal/micro/token.h for a more complete explanation.

Definition at line 265 of file cortexm3/token.h.

#define NVM3KEY_STACK_SECURITY_KEY

Definition at line 171 of file token-stack.h.