summaryrefslogtreecommitdiff
path: root/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private
diff options
context:
space:
mode:
authorFlorent Duchon2012-12-26 17:36:00 +0100
committerFlorent Duchon2013-02-13 21:21:12 +0100
commitb24866225a6301d3a663f874725e83c012dc25d3 (patch)
treeca527a2aab9abcdfbaf244c53ca63f0c531892b0 /digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private
parent2ba279f4eb2f23fa08a7c13465d16ae6ba5d0f96 (diff)
digital/beacon: add bitcloud stack into common directory digital/zigbit
Diffstat (limited to 'digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private')
-rw-r--r--digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csBuffers.h151
-rw-r--r--digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csDbg.h32
-rw-r--r--digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csParamTable.h304
-rw-r--r--digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csSIB.h207
4 files changed, 694 insertions, 0 deletions
diff --git a/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csBuffers.h b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csBuffers.h
new file mode 100644
index 00000000..bb00718e
--- /dev/null
+++ b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csBuffers.h
@@ -0,0 +1,151 @@
+/******************************************************************************
+ \file csBuffers.h
+
+ \brief
+ BitCloud memory buffers
+
+ \author
+ Atmel Corporation: http://www.atmel.com \n
+ Support email: avr@atmel.com
+
+ Copyright (c) 2010 , Atmel Corporation. All rights reserved.
+ Licensed under Atmel's Limited License Agreement (BitCloudTM).
+
+ \internal
+ History:
+ 21.10.10 A. Razinkov - Created.
+******************************************************************************/
+
+#ifndef _CSBUFFERS_H_
+#define _CSBUFFERS_H_
+
+/******************************************************************************
+ Includes section
+******************************************************************************/
+#ifndef _MAC2_
+#include <apsConfigServer.h>
+#include <nwkConfigServer.h>
+#else
+#include <configServer.h>
+#endif
+
+#ifdef _SECURITY_
+#include <tcAuthentic.h>
+#endif /* _SECURITY */
+#ifdef _LINK_SECURITY_
+#include <tcKeyEstablish.h>
+#endif /* _LINK_SECURITY_ */
+
+#ifdef _ZCL_
+#include <zclMemoryManager.h>
+ #ifdef _OTAU_
+#include <zclOTAUCluster.h>
+#include <zclOtauDiscovery.h>
+#include <zclOtauManager.h>
+ #endif /* _OTAU_ */
+#endif /* _ZCL_ */
+
+/******************************************************************************
+ Types section
+******************************************************************************/
+
+/**//**
+ * \brief Stack buffers list
+ */
+typedef struct _CS_StackBuffers_t
+{
+ /* MAC buffers */
+ uint8_t csMacFrameRxBuffer[CS_MAC_FRAME_RX_BUFFER_SIZE];
+#ifndef _MAC2_
+ MAC_PanDescriptor_t csMacPanDescriptorBuffer[CS_NEIB_TABLE_SIZE];
+#ifdef _MAC_BAN_NODE_
+ MAC_BanTableEntry_t csBanTable[CS_BAN_TABLE_SIZE];
+#endif /* _MAC_BAN_NODE_ */
+
+ /* NWK buffers */
+ Neib_t csNeibTable[CS_NEIB_TABLE_SIZE];
+ MutableNeib_t csMutableNeibTable[CS_NEIB_TABLE_SIZE];
+#if CS_ROUTE_CACHE_SIZE > 0
+ NwkRouteCacheRecord_t csRouteCache[CS_ROUTE_CACHE_SIZE];
+#endif
+#if CS_NWK_BUFFERS_AMOUNT > 0
+ NwkPacket_t csNwkBuffer[CS_NWK_BUFFERS_AMOUNT];
+#endif
+#if CS_ROUTE_TABLE_SIZE > 0
+ NwkRoutingTableEntry_t csRoutingTable[CS_ROUTE_TABLE_SIZE];
+#endif
+#if CS_ROUTE_DISCOVERY_TABLE_SIZE > 0
+ NwkRouteDiscoveryEntry_t csRouteDiscoveryTable[CS_ROUTE_DISCOVERY_TABLE_SIZE];
+#endif
+#if CS_ADDRESS_MAP_TABLE_SIZE > 0
+ NwkAddressMapEntry_t csAddressMapTable[CS_ADDRESS_MAP_TABLE_SIZE];
+#endif
+#if CS_NWK_BTT_SIZE > 0
+ SYS_DuplicateTableEntry_t csBTR[CS_NWK_BTT_SIZE];
+#endif
+#ifdef _GROUP_TABLE_
+ NWK_GroupTableEntry_t csGroupTable[CS_GROUP_TABLE_SIZE];
+#endif
+#ifdef _SECURITY_
+ NWK_SecurityKey_t csNwkSecKeys[CS_NWK_SECURITY_KEYS_AMOUNT];
+ NWK_SecurityFrameCounters_t csNwkSecCounters[CS_NWK_SECURITY_KEYS_AMOUNT];
+#endif /* _SECURITY_ */
+
+ /* APS buffers */
+#if CS_APS_DATA_REQ_BUFFERS_AMOUNT > 0
+ ApsDataBuffer_t csApsDataReqBuffer[CS_APS_DATA_REQ_BUFFERS_AMOUNT];
+#endif
+#if CS_APS_ACK_FRAME_BUFFERS_AMOUNT > 0
+ ApsAckBuffer_t csApsAckFrameBuffer[CS_APS_ACK_FRAME_BUFFERS_AMOUNT];
+#endif
+#if CS_JOIN_IND_OBJ_AMOUNT > 0
+ NwkJoinIndObj_t csJoinIndObjects[CS_JOIN_IND_OBJ_AMOUNT];
+#endif
+#if CS_DUPLICATE_REJECTION_TABLE_SIZE > 0
+ SYS_DuplicateTableEntry_t csDuplicateRejectionTable[CS_DUPLICATE_REJECTION_TABLE_SIZE];
+#endif
+#if defined(_BINDING_) && (CS_APS_BINDING_TABLE_SIZE > 0)
+ ApsBindingEntry_t csApsBindingTable[CS_APS_BINDING_TABLE_SIZE];
+#endif /* _BINDING_ */
+#if defined(_APS_FRAGMENTATION_) && (CS_APS_MAX_BLOCKS_AMOUNT > 0)
+ uint8_t csFragmentationMemoryPool[CS_APS_MAX_BLOCKS_AMOUNT * CS_APS_BLOCK_SIZE + CS_APS_MAX_BLOCKS_AMOUNT];
+ uint8_t csFragmentationPacketBuffer[APS_AFFIX_LENGTH + CS_APS_BLOCK_SIZE];
+#endif /* _APS_FRAGMENTATION_ */
+
+ /* Trust Center buffers */
+#ifdef _SECURITY_
+ #if CS_MAX_TC_AUTHENTIC_PROCESS_AMOUNT > 0
+ TC_AuthenticObj_t csTcAuthenticProcessBuffer[CS_MAX_TC_AUTHENTIC_PROCESS_AMOUNT];
+ #endif
+ #if defined(_TC_PERMISSION_TABLE_) && (CS_MAX_TC_ALLOWED_DEVICES_AMOUNT > 0)
+ ExtAddr_t csTcDevicePermissionTable[CS_MAX_TC_ALLOWED_DEVICES_AMOUNT];
+ #endif
+ #ifdef _LINK_SECURITY_
+ ApsKeyPairDescriptor_t csApsKeyPairDescriptors[CS_APS_KEY_PAIR_DESCRIPTORS_AMOUNT];
+ ApsKeyCounters_t csApsKeyCounters[CS_APS_KEY_PAIR_DESCRIPTORS_AMOUNT];
+ #if CS_MAX_TC_ESTABLISH_KEY_AMOUNT > 0
+ TC_KeyEstablishObj_t csTcEstablishKeyBuffer[CS_MAX_TC_ESTABLISH_KEY_AMOUNT];
+ #endif
+ #endif /* _LINK_SECURITY_ */
+
+#endif /* _SECURITY_ */
+
+ /* ZCL buffers */
+#ifdef _ZCL_
+ ZclMmBufferDescriptor_t zclMmBuffers[CS_ZCL_MEMORY_BUFFERS_AMOUNT];
+ #ifdef _OTAU_
+ ZclOtauDiscoveryResult_t csOtauDiscoveryResult[CS_ZCL_OTAU_DISCOVERED_SERVER_AMOUNT];
+ ZclOtauServerTransac_t csOtauSimultaneousClientSession[CS_ZCL_OTAU_CLIENT_SESSION_AMOUNT];
+ ZclOtauMissedBlockResponses_t csOtauMissedBlocksBuffer[CS_ZCL_OTAU_MISSED_BLOCKS_BUFFER_SIZE];
+ uint8_t csOtauImagePageDataBuffer[CS_ZCL_OTAU_IMAGE_PAGE_REQUEST_PAGE_SIZE];
+ #endif /* _OTAU_ */
+#endif /* _ZCL_ */
+
+#if (defined _NWK_PASSIVE_ACK_) && (CS_NWK_PASSIVE_ACK_AMOUNT > 0)
+ NwkPassiveAckEntry_t csNwkPassiveAckTable[CS_NWK_PASSIVE_ACK_AMOUNT];
+#endif
+#endif /* _MAC2_ */
+} CS_StackBuffers_t;
+
+#endif /* _CSBUFFERS_H_ */
+/* eof csBuffers.h */
diff --git a/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csDbg.h b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csDbg.h
new file mode 100644
index 00000000..3908e385
--- /dev/null
+++ b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csDbg.h
@@ -0,0 +1,32 @@
+/******************************************************************************
+ \file csDbg.h
+
+ \brief
+ Configuration Server debug info
+
+ \author
+ Atmel Corporation: http://www.atmel.com \n
+ Support email: avr@atmel.com
+
+ Copyright (c) 2010 , Atmel Corporation. All rights reserved.
+ Licensed under Atmel's Limited License Agreement (BitCloudTM).
+
+ \internal
+ History:
+ 22.10.10 A. Razinkov - Created.
+******************************************************************************/
+
+#ifndef _CSDBG_H_
+#define _CSDBG_H_
+
+/******************************************************************************
+ Includes section
+******************************************************************************/
+#include <dbg.h>
+
+typedef enum
+{
+ CS_CSGETITEM0 = 0x6000
+} CS_DbgCodeId_t;
+
+#endif /* _CSDBG_H_ */
diff --git a/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csParamTable.h b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csParamTable.h
new file mode 100644
index 00000000..8d65d589
--- /dev/null
+++ b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csParamTable.h
@@ -0,0 +1,304 @@
+/******************************************************************************
+ \file csParamTable.h
+
+ \brief
+ Configuration Server parameters information table
+
+ \author
+ Atmel Corporation: http://www.atmel.com \n
+ Support email: avr@atmel.com
+
+ Copyright (c) 2010 , Atmel Corporation. All rights reserved.
+ Licensed under Atmel's Limited License Agreement (BitCloudTM).
+
+ \internal
+ History:
+ 22.12.10 A. Razinkov - Created.
+******************************************************************************/
+
+/* This table contains information about particular paramter displacement address,
+ * memory type it occupies (FLASH or RAM), and its representation in memory
+ * (as memory region or atomic entity).
+ *
+ * This table should be inlined to external module.
+ * RAM_PARAMETER(id, addr), FLASH_PARAMETER(id, addr), MEMORY_REGION(idm addr),
+ * SEPARATOR(id) and DUMMY_MEMORY(id) macroses should be defined first to provide
+ * specific table morphing.
+ *
+ * SEPARATOR(id) macro is used to separate atomic parameters stored in RAM from
+ * the ones stored in FLASH. It's the only restriction on parameters order in this table.
+ * Memory regions could be described everywhere.
+ *
+ * DUMMY_MEMORY(id) macro is used to specify few stack buffers sizes during the application
+ * compilation phase.
+ */
+
+RAM_PARAMETER(CS_UID_ID, csPIB.macAttr.extAddr)
+RAM_PARAMETER(CS_MAX_FRAME_TRANSMISSION_TIME_ID, csPIB.macAttr.maxFrameTransmissionTime)
+RAM_PARAMETER(CS_MAC_TRANSACTION_TIME_ID, csSIB.csMacTransactionTime)
+RAM_PARAMETER(CS_RF_TX_POWER_ID, csSIB.csRfTxPower)
+#ifndef _MAC2_
+RAM_PARAMETER(CS_MAX_NEIGHBOR_ROUTE_COST_ID, csNIB.maxNeighborRouteCost)
+RAM_PARAMETER(CS_NWK_EXT_PANID_ID, csNIB.extendedPanId)
+RAM_PARAMETER(CS_NWK_ADDR_ID, csNIB.networkAddress)
+RAM_PARAMETER(CS_NWK_PARENT_ADDR_ID, csNIB.parentNetworkAddress)
+RAM_PARAMETER(CS_NWK_DEPTH_ID, csNIB.depth)
+RAM_PARAMETER(CS_NWK_UNIQUE_ADDR_ID, csNIB.uniqueAddr)
+RAM_PARAMETER(CS_CHANNEL_PAGE_ID, csNIB.channelPage)
+RAM_PARAMETER(CS_NWK_USE_MULTICAST_ID, csSIB.csNwkUseMulticast)
+RAM_PARAMETER(CS_NWK_MAX_LINK_STATUS_FAILURES_ID, csSIB.csNwkMaxLinkStatusFailures)
+RAM_PARAMETER(CS_NWK_END_DEVICE_MAX_FAILURES_ID, csSIB.csNwkEndDeviceMaxFailures)
+RAM_PARAMETER(CS_NWK_LOGICAL_CHANNEL_ID, csSIB.csNwkLogicalChannel)
+RAM_PARAMETER(CS_NWK_PANID_ID, csSIB.csNwkPanid)
+RAM_PARAMETER(CS_NWK_PREDEFINED_PANID_ID, csSIB.csNwkPredefinedPanid)
+RAM_PARAMETER(CS_PROTOCOL_VERSION_ID, csNIB.protocolVersion)
+RAM_PARAMETER(CS_STACK_PROFILE_ID, csNIB.stackProfile)
+RAM_PARAMETER(CS_SCAN_DURATION_ID, csZIB.scanDuration)
+RAM_PARAMETER(CS_PERMIT_DURATION_ID, csZIB.permitJoinDuration)
+RAM_PARAMETER(CS_EXT_PANID_ID, csSIB.csExtPANID)
+RAM_PARAMETER(CS_CHANNEL_MASK_ID, csZIB.channelMask)
+RAM_PARAMETER(CS_INDIRECT_POLL_RATE_ID, csSIB.csIndirectPollRate)
+RAM_PARAMETER(CS_END_DEVICE_SLEEP_PERIOD_ID, csSIB.csEndDeviceSleepPeriod)
+RAM_PARAMETER(CS_FFD_SLEEP_PERIOD_ID, csSIB.csFfdSleepPeriod)
+RAM_PARAMETER(CS_RX_ON_WHEN_IDLE_ID, csSIB.csRxOnWhenIdle)
+RAM_PARAMETER(CS_COMPLEX_DESCRIPTOR_AVAILABLE_ID, csSIB.csComplexDescriptorAvailable)
+RAM_PARAMETER(CS_USER_DESCRIPTOR_AVAILABLE_ID, csSIB.csUserDescriptorAvailable)
+RAM_PARAMETER(CS_ZDP_USER_DESCRIPTOR_ID, csSIB.csUserDescriptor)
+RAM_PARAMETER(CS_DEVICE_TYPE_ID, csNIB.deviceType)
+RAM_PARAMETER(CS_ZDO_JOIN_ATTEMPTS_ID, csSIB.csZdoJoinAttempts)
+RAM_PARAMETER(CS_ZDO_JOIN_INTERVAL_ID, csSIB.csZdoJoinInterval)
+RAM_PARAMETER(CS_APS_MAX_FRAME_RETRIES_ID, csSIB.csApsMaxFrameRetries)
+RAM_PARAMETER(CS_ZDP_RESPONSE_TIMEOUT_ID, csZIB.zdpResponseTimeout)
+RAM_PARAMETER(CS_DTR_WAKEUP_ID, csSIB.csDtrWakeup)
+#endif
+
+#ifdef AT86RF212
+RAM_PARAMETER(CS_LBT_MODE_ID, csSIB.csLbtMode)
+#endif
+#ifdef _NWK_CONCENTRATOR_
+RAM_PARAMETER(CS_CONCENTRATOR_DISCOVERY_TIME_ID, csSIB.csNwkConcentratorDiscoveryTime)
+#endif
+#ifdef _TC_SWAPOUT_
+RAM_PARAMETER(CS_ZDO_TC_KEEP_ALIVE_INTERVAL_ID, csSIB.csZdoTcKeepAliveInterval)
+#endif
+#ifdef _APS_FRAGMENTATION_
+RAM_PARAMETER(CS_APS_MAX_TRANSMISSION_WINDOW_SIZE_ID, csSIB.csApsMaxTransmissionWindowSize)
+#endif
+#ifdef _COMMISSIONING_
+RAM_PARAMETER(CS_PDS_STORING_INTERVAL_ID, csSIB.csPdsStoringInterval)
+ #ifdef _POWER_FAILURE_
+RAM_PARAMETER(CS_POWER_FAILURE_ID, csSIB.csPowerFailure)
+ #endif /* _POWER_FAILURE_ */
+#endif /* _COMMISSIONING_ */
+
+#ifdef _ZCL_
+RAM_PARAMETER(CS_ZCL_ATTRIBUTE_REPORT_TIMER_INTERVAL_ID, csSIB.csZclAttributeReportTimerInterval)
+ #ifdef _OTAU_
+RAM_PARAMETER(CS_ZCL_OTAU_DEFAULT_UPGRADE_SERVER_IEEE_ADDRESS_ID, csSIB.csOtauDefaultServerAddress)
+RAM_PARAMETER(CS_ZCL_OTAU_DEFAULT_SERVER_DISCOVERY_PERIOD_ID, csSIB.csOtauServerDiscoveryPeriod)
+RAM_PARAMETER(CS_ZCL_OTAU_IMAGE_PAGE_REQUEST_USAGE_ID, csSIB.csOtauServerPageRequestUsage)
+ #endif /* _OTAU_ */
+#endif /* _ZCL_ */
+#ifdef _SECURITY_
+RAM_PARAMETER(CS_NETWORK_KEY_ID, defaultKey)
+RAM_PARAMETER(CS_SECURITY_ON_ID, csSIB.csSecurityOn)
+RAM_PARAMETER(CS_SECURITY_LEVEL_ID, csNIB.securityIB.securityLevel)
+RAM_PARAMETER(CS_SECURITY_ALL_FRAMES_ID, csNIB.securityIB.secureAllFrames)
+RAM_PARAMETER(CS_ZDO_SECURITY_STATUS_ID, csSIB.csZdoSecurityStatus)
+RAM_PARAMETER(CS_APS_TRUST_CENTER_ADDRESS_ID, csAIB.trustCenterAddress)
+#endif /* _SECURITY_ */
+
+SEPARATOR(CS_FLASH_PARAMETERS_START_ID)
+FLASH_PARAMETER(CS_MAC_FRAME_RX_BUFFER_SIZE_ID, csReadOnlyItems.csMacFrameRxBufferSize)
+#ifndef _MAC2_
+FLASH_PARAMETER(CS_NEIB_TABLE_SIZE_ID, csReadOnlyItems.csNeibTableSize)
+FLASH_PARAMETER(CS_ROUTE_CACHE_SIZE_ID, csReadOnlyItems.csNwkRouteCacheSize)
+#endif
+FLASH_PARAMETER(CS_MAC_PAN_DESCRIPTOR_AMOUNT_ID, csReadOnlyItems.csMacPanDescriptorAmount)
+FLASH_PARAMETER(CS_MAX_CHILDREN_AMOUNT_ID, csReadOnlyItems.csMaxChildrenAmount)
+FLASH_PARAMETER(CS_MAX_CHILDREN_ROUTER_AMOUNT_ID, csReadOnlyItems.csMaxChildrenRouterAmount)
+FLASH_PARAMETER(CS_MAX_NETWORK_DEPTH_ID, csReadOnlyItems.csMaxNetworkDepth)
+FLASH_PARAMETER(CS_ADDRESS_ASSIGNMENT_METHOD_ID, csReadOnlyItems.csAddressAssignmentMethod)
+FLASH_PARAMETER(CS_NWK_BUFFERS_AMOUNT_ID, csReadOnlyItems.csNwkBuffersAmount)
+FLASH_PARAMETER(CS_JOIN_IND_OBJ_AMOUNT_ID, csReadOnlyItems.csJoinIndObjAmount)
+FLASH_PARAMETER(CS_ROUTE_TABLE_SIZE_ID, csReadOnlyItems.csRouteTableSize)
+#ifndef _MAC2_
+FLASH_PARAMETER(CS_ADDRESS_MAP_TABLE_SIZE_ID, csReadOnlyItems.csAddressMapTableSize)
+#endif
+FLASH_PARAMETER(CS_ROUTE_DISCOVERY_TABLE_SIZE_ID, csReadOnlyItems.csRouteDiscoveryTableSize)
+FLASH_PARAMETER(CS_BTT_SIZE_ID, csReadOnlyItems.csNwkBttSize)
+FLASH_PARAMETER(CS_MANUFACTURER_CODE_ID, csReadOnlyItems.csManufacturerCode)
+FLASH_PARAMETER(CS_APS_DATA_REQ_BUFFERS_AMOUNT_ID, csReadOnlyItems.csApsDataReqBuffersAmount)
+FLASH_PARAMETER(CS_APS_ACK_FRAME_BUFFERS_AMOUNT_ID, csReadOnlyItems.csApsAckFrameBuffesAmount)
+FLASH_PARAMETER(CS_DUPLICATE_REJECTION_TABLE_SIZE_ID, csReadOnlyItems.csDuplicateRejectionTableSize)
+FLASH_PARAMETER(CS_STACK_VERSION_ID, csReadOnlyItems.csStackVersion)
+
+#ifdef _MAC_BAN_NODE_
+FLASH_PARAMETER(CS_BAN_TABLE_SIZE_ID, csReadOnlyItems.csMacBanTableSize)
+#endif
+#ifdef _GROUP_TABLE_
+FLASH_PARAMETER(CS_GROUP_TABLE_SIZE_ID, csReadOnlyItems.csGroupTableSize)
+#endif
+#ifdef _NWK_PASSIVE_ACK_
+FLASH_PARAMETER(CS_NWK_PASSIVE_ACK_AMOUNT_ID, csReadOnlyItems.csPassiveAckAmount)
+#endif
+#ifdef _BINDING_
+FLASH_PARAMETER(CS_APS_BINDING_TABLE_SIZE_ID, csReadOnlyItems.csApsBindingTableSize)
+#endif
+#ifdef _APS_FRAGMENTATION_
+FLASH_PARAMETER(CS_APS_MAX_BLOCKS_AMOUNT_ID, csReadOnlyItems.csApsMaxBlocksAmount)
+FLASH_PARAMETER(CS_APS_BLOCK_SIZE_ID, csReadOnlyItems.csApsBlockSize)
+#endif
+#ifdef _ZCL_
+FLASH_PARAMETER(CS_ZCL_MEMORY_BUFFERS_AMOUNT_ID, csReadOnlyItems.csZclMemoryBuffersAmount)
+ #ifdef _OTAU_
+FLASH_PARAMETER(CS_ZCL_OTAU_DISCOVERED_SERVER_AMOUNT_ID, csReadOnlyItems.csOtauDiscoveredServerAmount)
+FLASH_PARAMETER(CS_ZCL_OTAU_CLIENT_SESSION_AMOUNT_ID, csReadOnlyItems.csOtauClientSessionAmount)
+FLASH_PARAMETER(CS_ZCL_OTAU_IMAGE_PAGE_REQUEST_RESPONSE_SPACING_ID, csReadOnlyItems.csOtauServerPageRequestResponseSpacing)
+FLASH_PARAMETER(CS_ZCL_OTAU_IMAGE_PAGE_REQUEST_PAGE_SIZE_ID, csReadOnlyItems.csOtauServerPageSize)
+FLASH_PARAMETER(CS_ZCL_OTAU_MISSED_BLOCKS_BUFFER_SIZE_ID, csReadOnlyItems.csOtauClientMissedBlocksBufferSize)
+ #endif /* _OTAU_ */
+#endif
+#ifdef _SECURITY_
+FLASH_PARAMETER(CS_APS_SECURITY_TIMEOUT_PERIOD_ID, csReadOnlyItems.csApsSecurityTimeoutPeriod)
+ #ifdef _TRUST_CENTRE_
+FLASH_PARAMETER(CS_MAX_TC_AUTHENTIC_PROCESS_AMOUNT_ID, csReadOnlyItems.csMaxTcAuthenticProcessAmount)
+ #ifdef _TC_PERMISSION_TABLE_
+FLASH_PARAMETER(CS_MAX_TC_ALLOWED_DEVICES_AMOUNT_ID, csReadOnlyItems.csMaxTcAllowedDevicesAmount)
+ #endif /* _TC_PERMISSION_TABLE_ */
+ #endif /* _TRUST_CENTRE_ */
+#endif /* _SECURITY_ */
+#ifdef _LINK_SECURITY_
+FLASH_PARAMETER(CS_APS_KEY_PAIR_DESCRIPTORS_AMOUNT_ID, csReadOnlyItems.csApsKeyPairDescriptorsAmount)
+ #ifdef _TRUST_CENTRE_
+FLASH_PARAMETER(CS_MAX_TC_ESTABLISH_KEY_AMOUNT_ID, csReadOnlyItems.csMaxTcEstablishKeyAmount)
+ #endif /* _TRUST_CENTRE_ */
+#endif /* _LINK_SECURITY_ */
+
+MEMORY_REGION(CS_MAC_FRAME_RX_BUFFER_ID, stackBuffers.csMacFrameRxBuffer)
+#ifndef _MAC2_
+MEMORY_REGION(CS_NEIB_TABLE_ID, stackBuffers.csNeibTable)
+MEMORY_REGION(CS_MAC_PAN_DESCRIPTOR_BUFFER_ID, stackBuffers.csMacPanDescriptorBuffer)
+MEMORY_REGION(CS_MUTABLE_NEIB_TABLE_ID, stackBuffers.csMutableNeibTable)
+#endif
+
+#ifdef _MAC_BAN_NODE_
+MEMORY_REGION(CS_BAN_TABLE_ID, stackBuffers.csBanTable)
+#endif
+
+#if CS_ROUTE_CACHE_SIZE > 0
+MEMORY_REGION(CS_ROUTE_CACHE_ID, stackBuffers.csRouteCache)
+#else
+DUMMY_MEMORY(CS_ROUTE_CACHE_ID)
+#endif /* CS_ROUTE_CACHE_SIZE > 0 */
+
+#if CS_NWK_BUFFERS_AMOUNT > 0
+MEMORY_REGION(CS_NWK_BUFFERS_ID, stackBuffers.csNwkBuffer)
+#else
+DUMMY_MEMORY(CS_NWK_BUFFERS_ID)
+#endif /* CS_NWK_BUFFERS_AMOUNT > 0 */
+
+#if CS_JOIN_IND_OBJ_AMOUNT > 0
+MEMORY_REGION(CS_JOIN_IND_OBJ_ID, stackBuffers.csJoinIndObjects)
+#else
+DUMMY_MEMORY(CS_JOIN_IND_OBJ_ID)
+#endif /* CS_JOIN_IND_OBJ_AMOUNT > 0 */
+
+#if CS_DUPLICATE_REJECTION_TABLE_SIZE > 0
+MEMORY_REGION(CS_DUPLICATE_REJECTION_TABLE_ID, stackBuffers.csDuplicateRejectionTable)
+#else
+DUMMY_MEMORY(CS_DUPLICATE_REJECTION_TABLE_ID)
+#endif /* CS_DUPLICATE_REJECTION_TABLE_SIZE > 0 */
+
+#if CS_ROUTE_TABLE_SIZE > 0
+MEMORY_REGION(CS_ROUTE_TABLE_ID, stackBuffers.csRoutingTable)
+#else
+DUMMY_MEMORY(CS_ROUTE_TABLE_ID)
+#endif /* CS_ROUTE_TABLE_SIZE > 0 */
+
+#if CS_ADDRESS_MAP_TABLE_SIZE > 0
+MEMORY_REGION(CS_ADDRESS_MAP_TABLE_ID, stackBuffers.csAddressMapTable)
+#else
+DUMMY_MEMORY(CS_ADDRESS_MAP_TABLE_ID)
+#endif /* CS_ADDRESS_MAP_TABLE_SIZE > 0 */
+
+#if CS_ROUTE_DISCOVERY_TABLE_SIZE > 0
+MEMORY_REGION(CS_ROUTE_DISCOVERY_TABLE_ID, stackBuffers.csRouteDiscoveryTable)
+#else
+DUMMY_MEMORY(CS_ROUTE_DISCOVERY_TABLE_ID)
+#endif /* CS_ROUTE_DISCOVERY_TABLE_SIZE > 0 */
+
+#if CS_NWK_BTT_SIZE > 0
+MEMORY_REGION(CS_BTT_ID, stackBuffers.csBTR)
+#else
+DUMMY_MEMORY(CS_BTT_ID)
+#endif /* CS_NWK_BTT_SIZE > 0 */
+
+#if CS_APS_DATA_REQ_BUFFERS_AMOUNT > 0
+MEMORY_REGION(CS_APS_DATA_REQ_BUFFER_ID, stackBuffers.csApsDataReqBuffer)
+#else
+DUMMY_MEMORY(CS_APS_DATA_REQ_BUFFER_ID)
+#endif /* CS_APS_DATA_REQ_BUFFERS_AMOUNT > 0 */
+
+#if CS_APS_ACK_FRAME_BUFFERS_AMOUNT > 0
+MEMORY_REGION(CS_APS_ACK_FRAME_BUFFER_ID, stackBuffers.csApsAckFrameBuffer)
+#else
+DUMMY_MEMORY(CS_APS_ACK_FRAME_BUFFER_ID)
+#endif /* CS_APS_ACK_FRAME_BUFFERS_AMOUNT > 0 */
+
+#if defined(_APS_FRAGMENTATION_) && (CS_APS_MAX_BLOCKS_AMOUNT > 0)
+MEMORY_REGION(CS_APS_FRAGMENTATION_MEMORY_POOL_ID, stackBuffers.csFragmentationMemoryPool)
+MEMORY_REGION(CS_APS_FRAGMENTATION_PACKET_BUFFER_ID, stackBuffers.csFragmentationPacketBuffer)
+#else
+DUMMY_MEMORY(CS_APS_FRAGMENTATION_MEMORY_POOL_ID)
+DUMMY_MEMORY(CS_APS_FRAGMENTATION_PACKET_BUFFER_ID)
+#endif /* _APS_FRAGMENTATION_ */
+
+#ifdef _GROUP_TABLE_
+MEMORY_REGION(CS_GROUP_TABLE_ID, stackBuffers.csGroupTable)
+#endif
+#ifdef _BINDING_
+MEMORY_REGION(CS_APS_BINDING_TABLE_ID, stackBuffers.csApsBindingTable)
+#endif
+
+#ifdef _ZCL_
+MEMORY_REGION(CS_ZCL_MEMORY_BUFFERS_ID, stackBuffers.zclMmBuffers)
+ #ifdef _OTAU_
+MEMORY_REGION(CS_ZCL_OTAU_DISCOVERED_SERVER_RESULT_ID, stackBuffers.csOtauDiscoveryResult)
+MEMORY_REGION(CS_ZCL_OTAU_CLIENT_SESSION_MEMORY_ID, stackBuffers.csOtauSimultaneousClientSession)
+MEMORY_REGION(CS_ZCL_OTAU_MISSED_BLOCKS_BUFFER_ID, stackBuffers.csOtauMissedBlocksBuffer)
+MEMORY_REGION(CS_ZCL_OTAU_PAGE_REQUEST_PAGE_BUFFER_ID, stackBuffers.csOtauImagePageDataBuffer)
+ #endif /* _OTAU_ */
+#endif
+
+#ifdef _SECURITY_
+MEMORY_REGION(CS_NWK_SECURITY_IB_ID, csNIB.securityIB)
+MEMORY_REGION(CS_NWK_SECURITY_KEYS_ID, stackBuffers.csNwkSecKeys)
+MEMORY_REGION(CS_NWK_MUTABLE_SECURITY_IB_ID, stackBuffers.csNwkSecCounters)
+ #ifdef _TRUST_CENTRE_
+ #if (CS_MAX_TC_AUTHENTIC_PROCESS_AMOUNT > 0)
+MEMORY_REGION(CS_TC_AUTHENTIC_PROCESS_BUFFER_ID, stackBuffers.csTcAuthenticProcessBuffer)
+ #else
+DUMMY_MEMORY(CS_TC_AUTHENTIC_PROCESS_BUFFER_ID)
+ #endif /* (CS_MAX_TC_AUTHENTIC_PROCESS_AMOUNT > 0) */
+ #if defined(_TC_PERMISSION_TABLE_) && (CS_MAX_TC_ALLOWED_DEVICES_AMOUNT > 0)
+MEMORY_REGION(CS_TC_PERMISSION_TABLE_ID, stackBuffers.csTcDevicePermissionTable)
+ #else
+DUMMY_MEMORY(CS_TC_PERMISSION_TABLE_ID)
+ #endif /* defined(_TC_PERMISSION_TABLE_) & (CS_MAX_TC_ALLOWED_DEVICES_AMOUNT > 0) */
+ #endif /* _TRUST_CENTRE_ */
+#endif /* _SECURITY_ */
+#ifdef _LINK_SECURITY_
+MEMORY_REGION(CS_APS_KEY_PAIR_DESCRIPTORS_ID, stackBuffers.csApsKeyPairDescriptors)
+MEMORY_REGION(CS_APS_KEY_PAIR_COUNTERS_ID, stackBuffers.csApsKeyCounters)
+ #if defined(_TRUST_CENTRE_) && (CS_MAX_TC_ESTABLISH_KEY_AMOUNT > 0)
+MEMORY_REGION(CS_TC_ESTABLISH_KEY_BUFFER_ID, stackBuffers.csTcEstablishKeyBuffer)
+ #else
+DUMMY_MEMORY(CS_TC_ESTABLISH_KEY_BUFFER_ID)
+ #endif /* defined _LINK_SECURITY_ & defined(_TRUST_CENTRE_) & (CS_MAX_TC_ESTABLISH_KEY_AMOUNT > 0)*/
+
+#endif /* _LINK_SECURITY_ */
+
+#if (defined _NWK_PASSIVE_ACK_) && (CS_NWK_PASSIVE_ACK_AMOUNT > 0)
+MEMORY_REGION(CS_NWK_PASSIVE_ACK_TABLE_ID, stackBuffers.csNwkPassiveAckTable)
+#endif /* _NWK_PASSIVE_ACK_ */
diff --git a/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csSIB.h b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csSIB.h
new file mode 100644
index 00000000..618959c3
--- /dev/null
+++ b/digital/zigbit/bitcloud/stack/Components/ConfigServer/include/private/csSIB.h
@@ -0,0 +1,207 @@
+/******************************************************************************
+ \file csSIB.h
+
+ \brief
+ BitCloud stack information base
+
+ \author
+ Atmel Corporation: http://www.atmel.com \n
+ Support email: avr@atmel.com
+
+ Copyright (c) 2010 , Atmel Corporation. All rights reserved.
+ Licensed under Atmel's Limited License Agreement (BitCloudTM).
+
+ \internal
+ History:
+ 21.10.10 A. Razinkov - Created.
+******************************************************************************/
+
+#ifndef _CSSIB_H_
+#define _CSSIB_H_
+
+/******************************************************************************
+ Includes section
+******************************************************************************/
+#include <types.h>
+#include <csDefaults.h>
+#ifdef _MAC_BAN_NODE_
+ #include <macBanNode.h>
+#endif /* _MAC_BAN_NODE_ */
+#ifndef _MAC2_
+ #include <apsConfigServer.h>
+ #include <nwkConfigServer.h>
+#endif
+
+/******************************************************************************
+ Types section
+******************************************************************************/
+/**//**
+ * \brief Config Server parameter handler
+ */
+typedef struct _CS_MemoryItem_t
+{
+ union
+ {
+ const void FLASH_PTR* flashValue;
+ void* ramValue;
+ } value;
+ uint16_t size;
+} CS_MemoryItem_t;
+
+/**//**
+ * \brief Read-only parametres, stored in FLASH
+ */
+typedef struct _CS_ReadOnlyItems_t
+{
+ /* MAC parameters */
+ uint16_t csMacFrameRxBufferSize;
+#ifdef _MAC_BAN_NODE_
+ MAC_BanTableSize_t csMacBanTableSize;
+#endif /* _MAC_BAN_NODE_ */
+
+ /* NWK parameters */
+#ifndef _MAC2_
+ NwkRouteCacheSize_t csNwkRouteCacheSize;
+ NwkSizeOfNeighborTable_t csNeibTableSize;
+ NwkSizeOfAddressMap_t csAddressMapTableSize;
+#endif
+ uint8_t csMacPanDescriptorAmount;
+ uint8_t csMaxChildrenAmount;
+ uint8_t csMaxChildrenRouterAmount;
+ uint8_t csMaxNetworkDepth;
+ uint8_t csAddressAssignmentMethod;
+ uint8_t csNwkBuffersAmount;
+ uint8_t csJoinIndObjAmount;
+ uint8_t csRouteTableSize;
+ uint8_t csRouteDiscoveryTableSize;
+ uint8_t csNwkBttSize;
+#ifdef _GROUP_TABLE_
+ uint8_t csGroupTableSize;
+#endif /* _GROUP_TABLE_ */
+#ifdef _NWK_PASSIVE_ACK_
+ uint8_t csPassiveAckAmount;
+#endif /* _NWK_PASSIVE_ACK_ */
+
+ /* APS parameters */
+ uint8_t csApsDataReqBuffersAmount;
+ uint8_t csApsAckFrameBuffesAmount;
+ uint8_t csDuplicateRejectionTableSize;
+#ifdef _BINDING_
+ uint8_t csApsBindingTableSize;
+#endif /* _BINDING_ */
+#ifdef _APS_FRAGMENTATION_
+ uint8_t csApsMaxBlocksAmount;
+ uint16_t csApsBlockSize;
+#endif /* _APS_FRAGMENTATION_ */
+
+ /* ZCL parameters */
+#ifdef _ZCL_
+ uint8_t csZclMemoryBuffersAmount;
+ #ifdef _OTAU_
+ uint8_t csOtauDiscoveredServerAmount;
+ uint8_t csOtauClientSessionAmount;
+ uint16_t csOtauServerPageRequestResponseSpacing;
+ uint16_t csOtauServerPageSize;
+ uint8_t csOtauClientMissedBlocksBufferSize;
+ #endif /* _OTAU_ */
+#endif /* _ZCL_ */
+
+ /* Other parameters */
+ uint32_t csStackVersion;
+ uint16_t csManufacturerCode;
+
+ /* Security parameters */
+#ifdef _SECURITY_
+#ifdef _TRUST_CENTRE_
+ uint8_t csMaxTcAuthenticProcessAmount;
+ #ifdef _TC_PERMISSION_TABLE_
+ uint8_t csMaxTcAllowedDevicesAmount;
+ #endif /* _TC_PERMISSION_TABLE_ */
+#endif /* _TRUST_CENTRE_ */
+ uint32_t csApsSecurityTimeoutPeriod;
+#ifdef _LINK_SECURITY_
+ #ifdef _TRUST_CENTRE_
+ uint8_t csMaxTcEstablishKeyAmount;
+ #endif /* _TRUST_CENTRE_ */
+ uint8_t csApsKeyPairDescriptorsAmount;
+#endif /* _LINK_SECURITY_ */
+
+#endif /* _SECURITY_ */
+} CS_ReadOnlyItems_t;
+
+/**//**
+ * \brief Common stack information base
+ */
+typedef struct _SIB_t
+{
+ /* MAC parameters */
+ uint32_t csMacTransactionTime;
+ int8_t csRfTxPower;
+#ifdef AT86RF212
+ bool csLbtMode;
+#endif /* AT86RF212 */
+#ifndef _MAC2_
+
+ /* NWK parameters */
+ PanId_t csNwkPanid;
+ bool csNwkUseMulticast;
+ uint8_t csNwkMaxLinkStatusFailures;
+ uint8_t csNwkEndDeviceMaxFailures;
+ uint8_t csNwkLogicalChannel;
+ bool csNwkPredefinedPanid;
+#ifdef _NWK_CONCENTRATOR_
+ uint32_t csNwkConcentratorDiscoveryTime;
+#endif
+
+ /* ZDO parameters */
+ uint32_t csEndDeviceSleepPeriod;
+ uint32_t csFfdSleepPeriod;
+ bool csRxOnWhenIdle;
+ bool csComplexDescriptorAvailable;
+ bool csUserDescriptorAvailable;
+ uint32_t csIndirectPollRate;
+ uint8_t csZdoJoinAttempts;
+ uint32_t csZdoJoinInterval;
+ UserDescriptor_t csUserDescriptor; /* to EEPROM */
+ ExtPanId_t csExtPANID; /* user-defined PAN ID */
+#ifdef _TC_SWAPOUT_
+ uint8_t csZdoTcKeepAliveInterval;
+#endif // _TC_SWAPOUT_
+
+ /* APS parameters */
+ uint8_t csApsMaxFrameRetries;
+#ifdef _APS_FRAGMENTATION_
+ uint8_t csApsMaxTransmissionWindowSize;
+#endif /* _APS_FRAGMENTATION_ */
+
+ /* PDS parameters*/
+ bool csDtrWakeup;
+
+ /* ZCL parameters */
+#ifdef _ZCL_
+ uint16_t csZclAttributeReportTimerInterval;
+ #ifdef _OTAU_
+ ExtAddr_t csOtauDefaultServerAddress;
+ uint32_t csOtauServerDiscoveryPeriod;
+ bool csOtauServerPageRequestUsage;
+ #endif /* _OTAU_ */
+#endif /* _ZCL_ */
+
+ /* Other parameters */
+#ifdef _COMMISSIONING_
+ uint32_t csPdsStoringInterval;
+ #ifdef _POWER_FAILURE_
+ bool csPowerFailure;
+ #endif /* _POWER_FAILURE_ */
+#endif /* _COMMISSIONING_ */
+
+ /* Security parameters */
+#ifdef _SECURITY_
+ bool csSecurityOn;
+ uint8_t csZdoSecurityStatus;
+#endif /* _SECURITY_ */
+#endif /* _MAC2_ */
+} SIB_t;
+
+#endif /* _CSSIB_H_ */
+/* eof csSIB.h */