6 #include PLATFORM_HEADER
15 #define TOKEN_MFG(name,creator,iscnt,isidx,type,arraysize,...) \
16 const uint16_t TOKEN_##name = TOKEN_##name##_ADDRESS;
29 static const uint8_t nullEui[] = { 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF };
32 void halInternalGetMfgTokenData(
void *data, uint16_t ID, uint8_t index, uint8_t len)
34 uint8_t *ram = (uint8_t*)data;
37 index = (index==0x7F) ? 0 : index;
39 if(ID == MFG_EUI_64_LOCATION) {
45 tokTypeMfgEui64 eui64;
46 halCommonGetMfgToken(&eui64, TOKEN_MFG_CUSTOM_EUI_64);
47 if(MEMCOMPARE(eui64,nullEui, 8 ) == 0) {
48 halCommonGetMfgToken(&eui64, TOKEN_MFG_ST_EUI_64);
50 MEMCOPY(ram, eui64, 8 );
56 uint32_t realAddress = (DATA_BIG_INFO_BASE+ID) + (len*index);
57 uint8_t *flash = (uint8_t *)realAddress;
72 MEMCOPY(ram, flash, len);
77 void halInternalSetMfgTokenData(uint16_t token,
void *data, uint8_t len)
80 uint32_t realAddress = (DATA_BIG_INFO_BASE+token);
81 uint8_t * flash = (uint8_t *)realAddress;
87 assert((token&1) != 1);
89 assert((realAddress>=CIB_BOTTOM) && ((realAddress+len-1)<=CIB_TOP));
96 assert(flash[i] == 0xFF);
101 flashStatus = halInternalFlashWrite(realAddress, data, (len/2));
Cortex-M3 Manufacturing token system.
Definitions for manufacturing tokens.
Header for flash for APIs.
#define ST_SUCCESS(x00)
The generic "no error" message.
uint8_t StStatus
Return type for St functions.