diff options
Diffstat (limited to 'Middlewares/ST/STM32_WPAN/zigbee/core/inc/stm32wbxx_core_interface_def.h')
-rw-r--r-- | Middlewares/ST/STM32_WPAN/zigbee/core/inc/stm32wbxx_core_interface_def.h | 350 |
1 files changed, 350 insertions, 0 deletions
diff --git a/Middlewares/ST/STM32_WPAN/zigbee/core/inc/stm32wbxx_core_interface_def.h b/Middlewares/ST/STM32_WPAN/zigbee/core/inc/stm32wbxx_core_interface_def.h new file mode 100644 index 000000000..37231eebd --- /dev/null +++ b/Middlewares/ST/STM32_WPAN/zigbee/core/inc/stm32wbxx_core_interface_def.h @@ -0,0 +1,350 @@ +/** + ****************************************************************************** + * @file stm32wbxx_core_interface_def.h + * @author MCD Application Team + * @brief This file contains all the defines and structures used for the + * communication between the two core M0 and M4. + * This file is shared between the code running on M4 and the code + * running on M0. + * + ****************************************************************************** + * @attention + * + * <h2><center>© Copyright (c) 2019 STMicroelectronics. + * All rights reserved.</center></h2> + * + * This software component is licensed by ST under Ultimate Liberty license + * SLA0044, the "License"; You may not use this file except in compliance with + * the License. You may obtain a copy of the License at: + * www.st.com/SLA0044 + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32WBxx_CORE_INTERFACE_DEF_H +#define STM32WBxx_CORE_INTERFACE_DEF_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "zigbee_types.h" +#include "stm32wbxx_hal.h" + +/* Structure of the messages exchanged between M0 and M4 */ +#define OT_CMD_BUFFER_SIZE 20U + +typedef struct { + uint32_t ID; + uint32_t Size; + uint32_t Data[OT_CMD_BUFFER_SIZE]; +} Zigbee_Cmd_Request_t; + +/* List of messages between M4 and M0 */ +typedef enum { + MSG_M4TOM0_UNKNOWN = 0x0000, + MSG_M0TOM4_UNKNOWN = 0x0000, + + /* WPAN Interface */ + MSG_M4TOM0_WPAN_GET_UINT32, /* wpan_get_uint32 */ + MSG_M4TOM0_WPAN_GET_UINT64, /* wpan_get_uint64 */ + + /* ZbMalloc / ZbFree */ + MSG_M0TOM4_ZB_MALLOC, + MSG_M0TOM4_ZB_FREE, + + /* Stack Init / Destroy */ + MSG_M4TOM0_ZB_INIT, /* ZbInit */ + MSG_M4TOM0_ZB_DESTROY, /* ZbDestroy */ + + /* Stack Misc */ + MSG_M4TOM0_EXTADDR_GET, /* ZbExtendedAddress */ + MSG_M4TOM0_EXTADDR_CHANGE, /* ZbChangeExtAddr */ + MSG_M4TOM0_UPTIME, /* ZbUptime */ + MSG_M4TOM0_FILTER_ADD, /* ZbMsgFilterRegister - Create filter in stack */ + MSG_M4TOM0_FILTER_DEL, /* ZbMsgFilterRemove - Delete filter in stack */ + MSG_M0TOM4_FILTER_MSG_CB, /* Callback for filter messages from stack */ + MSG_M4TOM0_LOG_CONFIG, /* ZbSetLogging */ + + /* ZbTimer API */ + MSG_M4TOM0_TIMER_ALLOC, /* ZbTimerAlloc */ + MSG_M4TOM0_TIMER_FREE, /* ZbTimerFree */ + MSG_M4TOM0_TIMER_STOP, /* ZbTimerStop */ + MSG_M4TOM0_TIMER_RESET, /* ZbTimerReset */ + MSG_M4TOM0_TIMER_RUNNING, /* ZbTimerRunning */ + MSG_M4TOM0_TIMER_REMAINING, /* ZbTimerRemaining */ + MSG_M0TOM4_TIMER_CB = MSG_M4TOM0_TIMER_REMAINING, /* callback from ZbTimerAlloc() */ + /* Reserved to 0x001f for Future Use */ + + /* Stack Config and Startup */ + MSG_M4TOM0_STARTUP_GET_CFG = 0x0020, /* ZbStartupConfigGetProDefaults */ + MSG_M4TOM0_STARTUP_REQ, /* ZbStartup - Form or Join zigbee network */ + MSG_M0TOM4_STARTUP_CB = MSG_M4TOM0_STARTUP_REQ, /* Callback for ZbStartup */ + MSG_M4TOM0_STARTUP_REJOIN, /* ZbStartupRejoin */ + MSG_M0TOM4_STARTUP_REJOIN_CB = MSG_M4TOM0_STARTUP_REJOIN, /* Callback for ZbStartupRejoin */ + + MSG_M4TOM0_STARTUP_PERSIST, /* ZbStartupPersist */ + MSG_M4TOM0_STARTUP_FINDBIND, /* ZbStartupFindBindStart */ + MSG_M0TOM4_STARTUP_FINDBIND_CB = MSG_M4TOM0_STARTUP_FINDBIND, + MSG_M4TOM0_STARTUP_TOUCHLINK_TARGET_STOP, /* ZbStartupTouchlinkTargetStop */ + MSG_M4TOM0_STARTUP_TCSO_START, /* ZbStartupTcsoStart */ + MSG_M0TOM4_STARTUP_TCSO_CB = MSG_M4TOM0_STARTUP_TCSO_START, + MSG_M4TOM0_STARTUP_TCSO_ABORT, /* ZbStartupTcsoAbort */ + MSG_M4TOM0_STARTUP_TC_REJOIN, /* ZbTrustCenterRejoin */ + MSG_M0TOM4_STARTUP_TC_REJOIN_CB = MSG_M4TOM0_STARTUP_TC_REJOIN, + MSG_M4TOM0_PERSIST_ENABLE, /* ZbPersistNotifyRegister */ + MSG_M0TOM4_PERSIST_CB, /* Persistent data update notification callback */ + MSG_M4TOM0_PERSIST_GET, /* ZbPersistGet */ + + MSG_M4TOM0_ZB_LEAVE_REQ, /* ZbLeaveReq */ + MSG_M0TOM4_ZB_LEAVE_CB = MSG_M4TOM0_ZB_LEAVE_REQ, /* Callback for ZbLeaveReq */ + MSG_M4TOM0_ZB_RESET_REQ, /* ZbReset */ + + /* AES Hashing Functions */ + MSG_M4TOM0_ZB_HASH_ADD, /* ZbHashAdd */ + MSG_M4TOM0_ZB_HASH_BYTE, /* ZbHashByte */ + MSG_M4TOM0_ZB_HASH_DIGEST, /* ZbHashDigest */ + + /* ECDSA Signature Validation */ + MSG_M4TOM0_ZB_SEC_ECDSA_VALIDATE, /* ZbSecEcdsaValidate */ + /* Reserved to 0x003f for Future Use */ + + /* BDB */ + MSG_M4TOM0_BDB_GET_REQ = 0x0040, /* ZbBdbGetReq */ + MSG_M4TOM0_BDB_SET_REQ, /* ZbBdbSetReq */ + MSG_M4TOM0_BDB_SET_EP_STATUS, /* ZbBdbSetEndpointStatus */ + /* Reserved to 0x004f for Future Use */ + + /* ZDO Commands */ + MSG_M4TOM0_ZDO_NWK_ADDR = 0x0050, /* ZbZdoNwkAddrReq */ + MSG_M0TOM4_ZDO_NWK_ADDR_CB = MSG_M4TOM0_ZDO_NWK_ADDR, + MSG_M4TOM0_ZDO_IEEE_ADDR = 0x0051, /* ZbZdoIeeeAddrReq */ + MSG_M0TOM4_ZDO_IEEE_ADDR_CB = MSG_M4TOM0_ZDO_IEEE_ADDR, + MSG_M4TOM0_ZDO_NODE_DESC = 0x0052, /* ZbZdoNodeDescReq */ + MSG_M0TOM4_ZDO_NODE_DESC_CB = MSG_M4TOM0_ZDO_NODE_DESC, + MSG_M4TOM0_ZDO_POWER_DESC = 0x0053, /* ZbZdoPowerDescReq */ + MSG_M0TOM4_ZDO_POWER_DESC_CB = MSG_M4TOM0_ZDO_POWER_DESC, + MSG_M4TOM0_ZDO_SIMPLE_DESC = 0x0054, /* ZbZdoSimpleDescReq */ + MSG_M0TOM4_ZDO_SIMPLE_DESC_CB = MSG_M4TOM0_ZDO_SIMPLE_DESC, + MSG_M4TOM0_ZDO_ACTIVE_EP = 0x0055, /* ZbZdoActiveEpReq */ + MSG_M0TOM4_ZDO_ACTIVE_EP_CB = MSG_M4TOM0_ZDO_ACTIVE_EP, + MSG_M4TOM0_ZDO_MATCH_DESC = 0x0056, /* ZbZdoMatchDescReq */ + MSG_M0TOM4_ZDO_MATCH_DESC_CB = MSG_M4TOM0_ZDO_MATCH_DESC, + MSG_M4TOM0_ZDO_MATCH_DESC_MULTI = 0x0057, /* ZbZdoMatchDescMulti (reusing a reserved ZDO cluster ID) */ + MSG_M0TOM4_ZDO_MATCH_DESC_MULTI_CB = MSG_M4TOM0_ZDO_MATCH_DESC_MULTI, + /* Reserved */ + MSG_M4TOM0_ZDO_DEVICE_ANNCE = 0x0063, /* ZbZdoDeviceAnnce */ + MSG_M4TOM0_ZDO_DEVICE_ANNCE_ALIAS = 0x0064, /* ZbZdoDeviceAnnceAlias (reusing a reserved ZDO cluster ID) */ + /* Reserved */ + MSG_M4TOM0_ZDO_BIND = 0x0071, /* ZbZdoBindReq */ + MSG_M0TOM4_ZDO_BIND_CB = MSG_M4TOM0_ZDO_BIND, + MSG_M4TOM0_ZDO_UNBIND = 0x0072, /* ZbZdoUnbindReq */ + MSG_M0TOM4_ZDO_UNBIND_CB = MSG_M4TOM0_ZDO_UNBIND, + /* Reserved */ + MSG_M4TOM0_ZDO_MGMT_LQI = 0x0081, /* ZbZdoLqiReq */ + MSG_M0TOM4_ZDO_MGMT_LQI_CB = MSG_M4TOM0_ZDO_MGMT_LQI, + /* Reserved */ + MSG_M4TOM0_ZDO_MGMT_BIND = 0x0083, /* ZbZdoMgmtBindReq */ + MSG_M0TOM4_ZDO_MGMT_BIND_CB = MSG_M4TOM0_ZDO_MGMT_BIND, + MSG_M4TOM0_ZDO_MGMT_LEAVE = 0x0084, /* ZbZdoLeaveReq */ + MSG_M0TOM4_ZDO_MGMT_LEAVE_CB = MSG_M4TOM0_ZDO_MGMT_LEAVE, + /* Reserved */ + MSG_M4TOM0_ZDO_MGMT_PERMIT_JOIN = 0x0086, /* ZbZdoPermitJoinReq */ + MSG_M0TOM4_ZDO_MGMT_PERMIT_JOIN_CB = MSG_M4TOM0_ZDO_MGMT_PERMIT_JOIN, + /* Reserved */ + MSG_M4TOM0_ZDO_MGMT_NWK_UPDATE = 0x0088, /* ZbZdoNwkUpdateReq */ + MSG_M0TOM4_ZDO_MGMT_NWK_UPDATE_CB = MSG_M4TOM0_ZDO_MGMT_NWK_UPDATE, +#if 0 /* Not required for 2.4 GHz DUT */ + MSG_M4TOM0_ZDO_MGMT_NWK_ENH_UPDATE_REQ = 0x0089, /* ZbZdoNwkEnhUpdateReq */ + MSG_M4TOM0_ZDO_MGMT_NWK_IEEE_JOIN_REQ = 0x008a, /* ZbZdoNwkIeeeJoinListReq */ + MSG_M4TOM0_ZDO_MGMT_NWK_ENH_UPDATE_NOTIFY = 0x008b, /* ZbZdoUnsolicitedEnhUpdateNotify */ + /* Reserved (0x008c to 0x00df) Future Use */ + MSG_M4TOM0_ZDO_MGMT_NWK_IEEE_JOIN_BCAST = 0x00e0, /* ZbZdoNwkIeeeJoinListBcastAll */ +#endif + /* Reserved (0x00e1 to 0x00ff) Future Use */ + + /* ZDO Utility */ + MSG_M4TOM0_ZDO_DEVICE_ANNCE_FILTER_REG = 0x0100, /* ZbZdoDeviceAnnceFilterRegister */ + MSG_M4TOM0_ZDO_DEVICE_ANNCE_FILTER_DEL, /* ZbZdoDeviceAnnceFilterRemove */ + MSG_M0TOM4_ZDO_DEVICE_ANNCE_FILTER_CB, + /* Reserved to 0x01ff for Future Use */ + + /* APSDE */ + MSG_M4TOM0_APSDE_DATA_REQ = 0x0200, /* ZbApsdeDataReqCallback */ + MSG_M0TOM4_APSDE_DATA_REQ_CB = MSG_M4TOM0_APSDE_DATA_REQ, + + /* APS (Misc) */ + MSG_M4TOM0_APS_FILTER_ENDPOINT_ADD, /* ZbApsFilterEndpointAdd */ + MSG_M0TOM4_APS_FILTER_ENDPOINT_CB, + MSG_M4TOM0_APS_FILTER_ENDPOINT_NOMATCH_ADD, /* ZbApsmeEndpointConfigNoMatchCallback */ + /* Can re-use MSG_M0TOM4_APS_FILTER_ENDPOINT_CB, since parameters are the same. */ + MSG_M4TOM0_APS_FILTER_CLUSTER_ADD, /* ZbApsFilterClusterAdd */ + MSG_M0TOM4_APS_FILTER_CLUSTER_CB, + MSG_M4TOM0_APS_EP_CLUSTER_ID_ADD, /* ZbApsmeEndpointClusterListAppend */ + MSG_M4TOM0_APS_EP_EXISTS, /* ZbApsEndpointExists */ + MSG_M4TOM0_APS_EP_GET_PROFILE, /* ZbApsEndpointProfile */ + + /* APSME */ + MSG_M4TOM0_APS_ENDPOINT_ADD, /* ZbApsmeAddEndpoint */ + MSG_M4TOM0_APS_ENDPOINT_DEL, /* ZbApsmeRemoveEndpoint */ + MSG_M4TOM0_APS_GET_REQ, /* ZbApsmeGetReq */ + MSG_M4TOM0_APS_SET_REQ, /* ZbApsmeSetReq */ + + MSG_M4TOM0_APSME_ADD_GROUP, /* ZbApsmeAddGroupReq */ + MSG_M4TOM0_APSME_REMOVE_GROUP, /* ZbApsmeRemoveGroupReq */ + MSG_M4TOM0_APSME_REMOVE_ALL_GROUPS, /* ZbApsmeRemoveAllGroupsReq */ + + MSG_M4TOM0_APSME_BIND, /* ZbApsmeBindReq */ + MSG_M4TOM0_APSME_UNBIND, /* ZbApsmeUnbindReq */ + MSG_M4TOM0_APS_UNBIND_ALL, /* ZbApsUnbindAllReq */ + + MSG_M4TOM0_APSME_TRANSPORT_KEY, /* ZbApsmeTransportKeyReq */ + MSG_M4TOM0_APSME_REMOVE_DEVICE, /* ZbApsmeRemoveDeviceReq */ + MSG_M4TOM0_APSME_REQUEST_KEY, /* ZbApsmeRequestKeyReq */ + MSG_M4TOM0_APSME_SWITCH_KEY, /* ZbApsmeSwitchKeyReq */ + MSG_M4TOM0_APSME_ADD_KEY, /* ZbApsmeAddKeyReq */ + MSG_M4TOM0_APSME_GET_KEY, /* ZbApsmeGetKeyReq */ + MSG_M4TOM0_APSME_REMOVE_KEY, /* ZbApsmeRemoveKeyReq */ + + /* Reserved to 0x02ff for Future Use */ + + /* NLME */ + MSG_M4TOM0_NWK_GET_INDEX = 0x0300, /* ZbNwkGetIndex */ + MSG_M4TOM0_NWK_SET_INDEX, /* ZbNwkSetIndex */ + MSG_M4TOM0_NLME_DIRECT_JOIN, /* ZbNlmeDirectJoinReq */ + MSG_M4TOM0_NLME_SET_INTERFACE, /* ZbNlmeSetInterface */ + MSG_M4TOM0_NLME_GET_INTERFACE, /* ZbNlmeGetInterface */ + MSG_M4TOM0_NLME_NET_DISC, /* ZbNlmeNetDiscReq */ + MSG_M0TOM4_NLME_NET_DISC_CB = MSG_M4TOM0_NLME_NET_DISC, + MSG_M4TOM0_NLME_LEAVE, /* ZbNlmeLeaveReq */ + MSG_M0TOM4_NLME_LEAVE_CB = MSG_M4TOM0_NLME_LEAVE, + MSG_M4TOM0_NLME_PERMIT_JOIN, /* ZbNlmePermitJoinReq */ + MSG_M4TOM0_NLME_RESET, /* ZbNlmeResetReq */ + MSG_M4TOM0_NLME_SYNC, /* ZbNlmeSyncReq */ + MSG_M0TOM4_NLME_SYNC_CB = MSG_M4TOM0_NLME_SYNC, + MSG_M4TOM0_NLME_ROUTE_DISC, /* ZbNlmeRouteDiscReq */ + MSG_M0TOM4_NLME_ROUTE_DISC_CB = MSG_M4TOM0_NLME_ROUTE_DISC, + /* NWK Misc and Helper API */ + MSG_M4TOM0_NWK_GET_PARENT_EXT, /* ZbNwkGetParentExtAddr */ + MSG_M4TOM0_NWK_GET_PARENT_NWK, /* ZbNwkGetParentShortAddr */ + MSG_M4TOM0_NWK_GET_SEC_MATERIAL, /* ZbNwkGetSecMaterial */ + MSG_M4TOM0_NWK_NNT_CLEAR_ALL, /* ZbNwkNeighborClearAll */ + MSG_M4TOM0_NWK_SET_FRAME_COUNTER, /* ZbNwkSetFrameCounter */ + MSG_M4TOM0_NWK_ADDR_LOOKUP_EXT, /* ZbNwkAddrLookupExt */ + MSG_M4TOM0_NWK_ADDR_LOOKUP_NWK, /* ZbNwkAddrLookupNwk */ + MSG_M4TOM0_NWK_ADDR_IS_CHILD_EXT, /* ZbNwkAddrIsChildExt */ + MSG_M4TOM0_NWK_ADDR_IS_CHILD_NWK, /* ZbNwkAddrIsChildNwk */ + MSG_M4TOM0_NWK_FAST_POLL_REQUEST, /* ZbNwkFastPollRequest */ + MSG_M4TOM0_NWK_FAST_POLL_RELEASE, /* ZbNwkFastPollRelease */ + MSG_M4TOM0_NWK_FAST_POLL_RESOURCE, /* ZbNwkFastPollResourceCount */ + MSG_M4TOM0_NWK_IFC_SET_TX_POWER, /* ZbNwkIfSetTxPower */ + MSG_M4TOM0_NWK_IFC_GET_TX_POWER, /* ZbNwkIfGetTxPower */ + MSG_M4TOM0_NWK_IFC_SET_DSN, /* ZbNwkIfSetDsn */ + MSG_M4TOM0_NWK_SET_NEXT_CHILD_ADDR, /* ZbNwkAddrSetNextChildAddr */ + /* Reserved to 0x03ff for Future Use */ + + /* ZCL Endpoint */ + MSG_M4TOM0_ZCL_ENDPOINT_ADD = 0x0400, /* ZbZclAddEndpoint */ + MSG_M4TOM0_ZCL_ENDPOINT_DEL, /* ZbZclRemoveEndpoint */ + MSG_M4TOM0_ZCL_CLUSTER_ATTACH, /* ZbZclClusterAttach */ + MSG_M4TOM0_ZCL_CLUSTER_DETACH, /* ZbZclClusterDetach */ + MSG_M4TOM0_ZCL_CLUSTER_EP_REGISTER, /* ZbZclClusterEndpointRegister */ + MSG_M4TOM0_ZCL_CLUSTER_EP_REMOVE, /* ZbZclClusterEndpointRemove */ + MSG_M4TOM0_ZCL_CLUSTER_BIND, /* zcl_cluster_bind */ + + /* ZCL Cluster Alarms */ + MSG_M4TOM0_ZCL_CLUSTER_ALARM_ADD_FILTER, /* ZbZclClusterRegisterAlarmResetHandler */ + MSG_M0TOM4_ZCL_CLUSTER_ALARM_CB = MSG_M4TOM0_ZCL_CLUSTER_ALARM_ADD_FILTER, + MSG_M4TOM0_ZCL_CLUSTER_ALARM_SEND, /* ZbZclClusterSendAlarm */ + + /* ZCL Cluster Unsolicited Callbacks */ + MSG_M0TOM4_ZCL_CLUSTER_COMMAND_CB, /* ZbZclClusterT.command() */ + MSG_M0TOM4_ZCL_CLUSTER_CONFIG_CB, /* ZbZclClusterT.config() */ + MSG_M0TOM4_ZCL_CLUSTER_REPORT_CB, /* ZbZclClusterT.report() */ + MSG_M0TOM4_ZCL_CLUSTER_GET_SCENE_CB, /* ZbZclClusterT.get_scene_data() */ + MSG_M0TOM4_ZCL_CLUSTER_SET_SCENE_CB, /* ZbZclClusterT.set_scene_data() */ + MSG_M0TOM4_ZCL_CLUSTER_CLEANUP_CB, /* ZbZclClusterT.cleanup() */ + + /* ZCL Cluster Command and Response */ + MSG_M4TOM0_ZCL_CLUSTER_CMD_REQ, /* ZbZclClusterCommandReq */ + MSG_M0TOM4_ZCL_CLUSTER_CMD_REQ_CB = MSG_M4TOM0_ZCL_CLUSTER_CMD_REQ, + MSG_M4TOM0_ZCL_CLUSTER_CMD_RSP, /* ZbZclClusterCommandRsp */ + MSG_M4TOM0_ZCL_CLUSTER_CMD_RSP_WITH_CB, /* ZbZclClusterCommandRspWithCb */ + MSG_M0TOM4_ZCL_CLUSTER_CMD_RSP_CONF_CB = MSG_M4TOM0_ZCL_CLUSTER_CMD_RSP_WITH_CB, + MSG_M4TOM0_ZCL_CLUSTER_CMD_RSP_WITH_STATUS, /* ZbZclSendClusterStatusResponse */ + + /* ZCL Attributes */ + MSG_M4TOM0_ZCL_ATTR_REGISTER, /* Used by ZbZclAttrAppendList */ + MSG_M0TOM4_ZCL_ATTR_CB, + + /* ZCL Profile-Wide Commands */ + MSG_M4TOM0_ZCL_GET_SEQNUM, /* ZbZclGetNextSeqnum */ + MSG_M4TOM0_ZCL_COMMAND_REQ, /* ZbZclCommandReq */ + MSG_M0TOM4_ZCL_COMMAND_REQ_CB = MSG_M4TOM0_ZCL_COMMAND_REQ, + MSG_M4TOM0_ZCL_COMMAND_NO_RSP, /* ZbZclCommandNoResp */ + MSG_M0TOM4_ZCL_COMMAND_NO_RSP_CB = MSG_M4TOM0_ZCL_COMMAND_NO_RSP, + MSG_M4TOM0_ZCL_SEND_DEFAULT_RSP, /* ZbZclSendDefaultResponse */ + MSG_M4TOM0_ZCL_READ_REQ, /* ZbZclReadReq */ + MSG_M0TOM4_ZCL_READ_CB = MSG_M4TOM0_ZCL_READ_REQ, + MSG_M4TOM0_ZCL_WRITE_REQ, /* ZbZclWriteReq */ + MSG_M0TOM4_ZCL_WRITE_CB = MSG_M4TOM0_ZCL_WRITE_REQ, + MSG_M4TOM0_ZCL_DISCOVER_ATTR_REQ, /* ZbZclDiscoverAttrReq */ + MSG_M0TOM4_ZCL_DISCOVER_ATTR_CB = MSG_M4TOM0_ZCL_DISCOVER_ATTR_REQ, + + /* Reserved to 0x043f for Future Use */ + + /* ZCL Cluster Specific APIs */ + + /* ZCL Key Exchange (i.e. CBKE) */ + MSG_M4TOM0_ZCL_KE_WITH_DEVICE = 0x0440, /* ZbZclKeWithDevice */ + MSG_M0TOM4_ZCL_KE_WITH_DEVICE_CB = MSG_M4TOM0_ZCL_KE_WITH_DEVICE, + +#if 0 /* needed? */ + /* ZCL Device Log */ + MSG_M4TOM0_ZCL_DEVICE_LOG_ADD, /* ZbZclDeviceLogAdd */ + MSG_M4TOM0_ZCL_DEVICE_LOG_CLEAR, /* ZbZclDeviceLogClear */ + MSG_M4TOM0_ZCL_DEVICE_LOG_ENABLE, /* ZbZclDeviceLogEnable */ + MSG_M4TOM0_ZCL_DEVICE_LOG_REMOVE, /* ZbZclDeviceLogRemove */ +#endif + + /* ZCL Basic Server */ + MSG_M4TOM0_ZCL_BASIC_SERVER_ALARM_POST, /* ZbZclBasicPostAlarm */ + MSG_M4TOM0_ZCL_BASIC_SERVER_CONFIG_RESET, /* ZbZclBasicServerResetCmdConfig */ + MSG_M4TOM0_ZCL_BASIC_SERVER_LOCAL_WRITE, /* ZbZclBasicWriteDirect */ + + /* ZCL Diagnostics Server */ + MSG_M4TOM0_ZCL_DIAG_SERVER_ALLOC, /* ZbZclDiagnosticsServerAlloc */ + + /* Reserved to 0x0fff for Future Use */ + + /* Test Hooks */ + MSG_M4TOM0_TEST_CASE_CLEAR = 0x1000, /* ZbTestCaseClear */ + MSG_M4TOM0_TEST_CASE_CURRENT, /* ZbTestCaseCurrent */ + MSG_M4TOM0_TEST_CASE_DISABLE, /* ZbTestCaseDisable */ + MSG_M4TOM0_TEST_CASE_ENABLE, /* ZbTestCaseEnable */ + MSG_M4TOM0_APS_FRAG_DROP_ADD, /* ZbApsFragDropTxAdd */ + MSG_M4TOM0_APS_FRAG_DROP_CLEAR, /* ZbApsFragDropTxClear */ + + /* Raw MCP Messages */ + MSG_M4TOM0_WPAN_MCP_MSG, + MSG_M0TOM4_WPAN_MCP_MSG +} MsgId_Zigbee_Enum_t; + +/* List of errors returned by the interface */ +typedef enum { + ERR_INTERFACE_IPCC_INIT_FAIL = 100U, + ERR_INTERFACE_IPCC_REMOTE_FAIL = 101U, + ERR_INTERFACE_IPCC_SEND_ACK_TO_M0 = 102U, +} Error_Interface_Id_Enum_t; + +HAL_StatusTypeDef Zigbee_CallBackProcessing(void); +HAL_StatusTypeDef Zigbee_LoggingProcessing(void); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* STM32WBxx_CORE_INTERFACE_DEF_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |