/* BEGIN_FILE_HDR ******************************************************************************** * NOTICE * This software is the property of HiRain Technologies. Any information * contained in this doc should not be reproduced, or used, or disclosed * without the written authorization from HiRain Technologies. ******************************************************************************** * File Name : CanNm.h ******************************************************************************** * Project/Product : AUTOSAR R21-11 * Title : CAN Network Management module head File * Author : Hirain ******************************************************************************** * Description : CAN Network Management module head File * ******************************************************************************** * Limitations : None * ******************************************************************************** * ******************************************************************************** * Revision History: * Reference to Core C File ******************************************************************************** * END_FILE_HDR*/ #ifndef CANNM_H #define CANNM_H /******************************************************************************* * Includes *******************************************************************************/ #include "CanNm_Lcfg.h" #include "CanNm_PBcfg.h" /******************************************************************************* * Macros *******************************************************************************/ /*SWS_CanNm_00316 Development error code*/ #define CANNM_E_UNINIT ((uint8)0x01) #define CANNM_E_INVALID_CHANNEL ((uint8)0x02) #define CANNM_E_INVALID_PDUID ((uint8)0x03) #define CANNM_E_INIT_FAILED ((uint8)0x05) #define CANNM_E_PARAM_POINTER ((uint8)0x12) #define CANNM_E_NOT_IN_BUS_SLEEP ((uint8)0x13) /*SWS_CanNm_00317 Runtime Errors Code*/ #define CANNM_E_NET_START_IND ((uint8)0x04) #define CANNM_E_NETWORK_TIMEOUT ((uint8)0x11) #define CANNM_E_INVALID_PN_SYNC_SHUTDOWN_REQUEST ((uint8)0x20) #define CANNM_E_TRANSMISSION_OF_PN_SHUTDOWN_MESSAGE_FAILED ((uint8)0x21) #define CANNM_INIT_APIID ((uint8)0x00) #define CANNM_DEINIT_APIID ((uint8)0x10) #define CANNM_PASSIVESTARTUP_APIID ((uint8)0x01) #define CANNM_NETWORKREQUEST_APIID ((uint8)0x02) #define CANNM_NETWORKRELEAE_APIID ((uint8)0x03) #define CANNM_SETUSERDATA_APIID ((uint8)0x04) #define CANNM_GETUSERDATA_APIID ((uint8)0x05) #define CANNM_GETNODEID_APIID ((uint8)0x06) #define CANNM_GETLOCALNODEID_APIID ((uint8)0x07) #define CANNM_RPTMSGREQ_APIID ((uint8)0x08) #define CANNM_GETPDUDATA_APIID ((uint8)0x0A) #define CANNM_GETSTATE_APIID ((uint8)0x0B) #define CANNM_DISABLECOMM_APIID ((uint8)0x0C) #define CANNM_ENABLECOMM_APIID ((uint8)0x0D) #define CANNM_MAINFUNC_APIID ((uint8)0x13) #define CANNM_TRANSMIT_APIID ((uint8)0x49) #define CANNM_TXCFM_APIID ((uint8)0x40) #define CANNM_TRIGGER_TRANS_APIID ((uint8)0x41) #define CANNM_RXIND_APIID ((uint8)0x42) #define CANNM_CFMPNAVAIL_APIID ((uint8)0x16) #define CANNM_REQBUSSYNCH_APIID ((uint8)0xC0) #define CANNM_CHECKRMTSLEEPIND_APIID ((uint8)0xD0) #define CANNM_GETVERSIONINFO_APIID ((uint8)0xF1) #define CANNM_SETSLEEPREADYBIT_APIID ((uint8)0x17) #define CANNM_PNLEARNINGREQUEST_APIID ((uint8)0xF2) #define CANNM_REQSYNCPNCSHUTDOWN_APIID ((uint8)0xF3) /******************************************************************************* * Global Functions *******************************************************************************/ #define CANNM_START_SEC_CODE #include "CanNm_MemMap.h" /*SWS_CanNm_00208*/ extern FUNC(void, CANNM_CODE) CanNm_Init ( P2CONST(CanNm_ConfigType, AUTOMATIC, CANNM_APPL_DATA) cannmConfigPtr ); /*SWS_CanNm_91002*/ extern FUNC(void, CANNM_CODE) CanNm_DeInit ( void ); /*SWS_CanNm_00211*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_PassiveStartUp ( NetworkHandleType nmChannelHandle ); /*SWS_CanNm_00213*//*SWS_CanNm_00257*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_NetworkRequest ( NetworkHandleType nmChannelHandle ); /*SWS_CanNm_00214*//*SWS_CanNm_00260*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_NetworkRelease ( NetworkHandleType nmChannelHandle ); /*SWS_CanNm_00221*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_RepeatMessageRequest ( NetworkHandleType nmChannelHandle ); /*SWS_CanNm_00327*//*SWS_CanNm_00266*//*SWS_CanNm_00158*/ #if((STD_OFF == CANNM_COM_USER_DATA_SUPPORT) && (STD_ON == CANNM_USER_DATA_ENABLED)) /*SWS_CanNm_00217*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_SetUserData ( NetworkHandleType nmChannelHandle, P2CONST(uint8, AUTOMATIC, CANNM_APPL_DATA) nmUserDataPtr ); #endif #if(CANNM_BUS_SYNCHRONIZATION_ENABLED == STD_ON) /*SWS_CanNm_00226*//*SWS_CanNm_00280*//*SWS_CanNm_00185*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_RequestBusSynchronization ( NetworkHandleType nmChannelHandle ); #endif #if(CANNM_REMOTE_SLEEP_IND_ENABLED == STD_ON) /*SWS_CanNm_00227*//*SWS_CanNm_00282*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_CheckRemoteSleepIndication ( NetworkHandleType nmChannelHandle, P2VAR(boolean, AUTOMATIC, CANNM_APPL_DATA) nmRemoteSleepIndPtr ); #endif /*SWS_CanNm_00262*//*SWS_CanNm_00264*/ #if(CANNM_COM_CONTROL_ENABLED == STD_ON) /*SWS_CanNm_00215*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_DisableCommunication ( NetworkHandleType nmChannelHandle ); /*SWS_CanNm_00216*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_EnableCommunication ( NetworkHandleType nmChannelHandle ); #endif /*SWS_CanNm_00268*//*SWS_CanNm_00158*/ #if(CANNM_USER_DATA_ENABLED == STD_ON) /*SWS_CanNm_00218*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_GetUserData ( NetworkHandleType nmChannelHandle, CONSTP2VAR(uint8, AUTOMATIC, CANNM_APPL_DATA) nmUserDataPtr ); #endif /*SWS_CanNm_00330*/ #if(STD_ON == CANNM_COM_USER_DATA_SUPPORT) /*SWS_CanNm_00331*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_Transmit ( PduIdType CanNmTxPduId, P2CONST(PduInfoType, AUTOMATIC, CANNM_APPL_DATA) PduInfoPtr ); #endif /*SWS_CanNm_00219*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_GetNodeIdentifier ( NetworkHandleType nmChannelHandle, P2VAR(uint8, AUTOMATIC, CANNM_APPL_DATA) nmNodeIdPtr ); /*SWS_CanNm_00220*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_GetLocalNodeIdentifier ( NetworkHandleType nmChannelHandle, P2VAR(uint8, AUTOMATIC, CANNM_APPL_DATA) nmNodeIdPtr ); /*SWS_CanNm_00222*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_GetPduData ( NetworkHandleType nmChannelHandle, CONSTP2VAR(uint8, AUTOMATIC, CANNM_APPL_DATA) nmPduDataPtr ); /*SWS_CanNm_00223*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_GetState ( NetworkHandleType nmChannelHandle, P2VAR(Nm_StateType, AUTOMATIC, CANNM_APPL_DATA) nmStatePtr, P2VAR(Nm_ModeType, AUTOMATIC, CANNM_APPL_DATA) nmModePtr ); #if(CANNM_VERSION_INFO_API == STD_ON) /*SWS_CanNm_00224*/ extern FUNC(void, CANNM_CODE) CanNm_GetVersionInfo ( P2VAR(Std_VersionInfoType, AUTOMATIC, CANNM_APPL_DATA) versioninfo ); #endif /*SWS_CanNm_00340*/ #if(CANNM_COORDINATOR_SYNC_SUPPORT == STD_ON) /*SWS_CanNm_00338*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_SetSleepReadyBit ( NetworkHandleType nmChannelHandle, boolean nmSleepReadyBit ); #endif #if(CANNM_GLOBAL_PN_SUPPORT == STD_ON) /*SWS_CanNm_00385*/ #if(CANNM_DYN_PNC_MAPPING_SUPPORT == STD_ON) /*SWS_CanNm_91004*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_PnLearningRequest ( NetworkHandleType nmChannelHandle ); #endif /*SWS_CanNm_91003*/ extern FUNC(Std_ReturnType, CANNM_CODE) CanNm_RequestSynchronizedPncShutdown ( NetworkHandleType nmChannelHandle, PNCHandleType pncId ); #endif/*#if(CANNM_GLOBAL_PN_SUPPORT == STD_ON)*/ /*SWS_CanNm_00234*/ extern FUNC(void, CANNM_CODE) CanNm_MainFunction ( void ); #define CANNM_STOP_SEC_CODE #include "CanNm_MemMap.h" #endif/*CANNM_H*/