Wdg_Ipw.h 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. /*==================================================================================================
  2. * Project : RTD AUTOSAR 4.4
  3. * Platform : CORTEXM
  4. * Peripheral : Wdog,Ewm
  5. * Dependencies : none
  6. *
  7. * Autosar Version : 4.4.0
  8. * Autosar Revision : ASR_REL_4_4_REV_0000
  9. * Autosar Conf.Variant :
  10. * SW Version : 1.0.0
  11. * Build Version : S32K1_RTD_1_0_0_HF01_D2109_ASR_REL_4_4_REV_0000_20210907
  12. *
  13. * (c) Copyright 2020-2021 NXP Semiconductors
  14. * All Rights Reserved.
  15. *
  16. * NXP Confidential. This software is owned or controlled by NXP and may only be
  17. * used strictly in accordance with the applicable license terms. By expressly
  18. * accepting such terms or by downloading, installing, activating and/or otherwise
  19. * using the software, you are agreeing that you have read, and that you agree to
  20. * comply with and are bound by, such license terms. If you do not agree to be
  21. * bound by the applicable license terms, then you may not retain, install,
  22. * activate or otherwise use the software.
  23. ==================================================================================================*/
  24. #ifndef WDG_IPW_H
  25. #define WDG_IPW_H
  26. /**
  27. * @file
  28. *
  29. * @addtogroup Wdg
  30. * @{
  31. */
  32. #ifdef __cplusplus
  33. extern "C"{
  34. #endif
  35. /*==================================================================================================
  36. * INCLUDE FILES
  37. * 1) system and project includes
  38. * 2) needed interfaces from external units
  39. * 3) internal and external interfaces from this unit
  40. ==================================================================================================*/
  41. #include "Wdg_Ipw_Types.h"
  42. #include "StandardTypes.h"
  43. #if(WDOG_IP_USED == STD_ON)
  44. #include "Wdog_Ip.h"
  45. #endif /*(WDOG_IP_USED == STD_ON)*/
  46. #if(EWM_IP_USED == STD_ON)
  47. #include "Ewm_Ip.h"
  48. #endif /*(EWM_IP_USED == STD_ON)*/
  49. /*==================================================================================================
  50. * SOURCE FILE VERSION INFORMATION
  51. ==================================================================================================*/
  52. #define WDG_IPW_VENDOR_ID 43
  53. #define WDG_IPW_MODULE_ID 102
  54. #define WDG_IPW_AR_RELEASE_MAJOR_VERSION 4
  55. #define WDG_IPW_AR_RELEASE_MINOR_VERSION 4
  56. #define WDG_IPW_AR_RELEASE_REVISION_VERSION 0
  57. #define WDG_IPW_SW_MAJOR_VERSION 1
  58. #define WDG_IPW_SW_MINOR_VERSION 0
  59. #define WDG_IPW_SW_PATCH_VERSION 0
  60. /*==================================================================================================
  61. FILE VERSION CHECKS
  62. ==================================================================================================*/
  63. /* Check if current file and Wdg_Ipw_Types header file are of the same vendor */
  64. #if (WDG_IPW_VENDOR_ID != WDG_IPW_TYPES_VENDOR_ID)
  65. #error "Wdg_Ipw.h and Wdg_Ipw_Types.h have different vendor ids"
  66. #endif
  67. /* Check if current file and Wdg_Ipw_Types header file are of the same Autosar version */
  68. #if ((WDG_IPW_AR_RELEASE_MAJOR_VERSION != WDG_IPW_TYPES_AR_RELEASE_MAJOR_VERSION) || \
  69. (WDG_IPW_AR_RELEASE_MINOR_VERSION != WDG_IPW_TYPES_AR_RELEASE_MINOR_VERSION) || \
  70. (WDG_IPW_AR_RELEASE_REVISION_VERSION != WDG_IPW_TYPES_AR_RELEASE_REVISION_VERSION))
  71. #error "AutoSar Version Numbers of Wdg_Ipw.h and Wdg_Ipw_Types.h are different"
  72. #endif
  73. /* Check if current file and Wdg_Ipw_Types header file are of the same software version */
  74. #if ((WDG_IPW_SW_MAJOR_VERSION != WDG_IPW_TYPES_SW_MAJOR_VERSION) || \
  75. (WDG_IPW_SW_MINOR_VERSION != WDG_IPW_TYPES_SW_MINOR_VERSION) || \
  76. (WDG_IPW_SW_PATCH_VERSION != WDG_IPW_TYPES_SW_PATCH_VERSION))
  77. #error "Software Version Numbers of Wdg_Ipw.h and Wdg_Ipw_Types.h are different"
  78. #endif
  79. #if(WDOG_IP_USED == STD_ON)
  80. /* Check if current file and Wdog_Ip header file are of the same vendor */
  81. #if (WDG_IPW_VENDOR_ID != WDOG_IP_VENDOR_ID)
  82. #error "Wdg_Ipw.h and Wdog_Ip.h have different vendor ids"
  83. #endif
  84. /* Check if current file and Wdog_Ip header file are of the same Autosar version */
  85. #if ((WDG_IPW_AR_RELEASE_MAJOR_VERSION != WDOG_IP_AR_RELEASE_MAJOR_VERSION) || \
  86. (WDG_IPW_AR_RELEASE_MINOR_VERSION != WDOG_IP_AR_RELEASE_MINOR_VERSION) || \
  87. (WDG_IPW_AR_RELEASE_REVISION_VERSION != WDOG_IP_AR_RELEASE_REVISION_VERSION))
  88. #error "AutoSar Version Numbers of Wdg_Ipw.h and Wdog_Ip.h are different"
  89. #endif
  90. /* Check if current file and Wdog_Ip header file are of the same software version */
  91. #if ((WDG_IPW_SW_MAJOR_VERSION != WDOG_IP_SW_MAJOR_VERSION) || \
  92. (WDG_IPW_SW_MINOR_VERSION != WDOG_IP_SW_MINOR_VERSION) || \
  93. (WDG_IPW_SW_PATCH_VERSION != WDOG_IP_SW_PATCH_VERSION))
  94. #error "Software Version Numbers of Wdg_Ipw.h and Wdog_Ip.h are different"
  95. #endif
  96. #endif /*(WDOG_IP_USED == STD_ON)*/
  97. #if(EWM_IP_USED == STD_ON)
  98. /* Check if current file and Ewm_Ip header file are of the same vendor */
  99. #if (WDG_IPW_VENDOR_ID != EWM_IP_VENDOR_ID)
  100. #error "Wdg_Ipw.h and Ewm_Ip.h have different vendor ids"
  101. #endif
  102. /* Check if current file and Ewm_Ip header file are of the same Autosar version */
  103. #if ((WDG_IPW_AR_RELEASE_MAJOR_VERSION != EWM_IP_AR_RELEASE_MAJOR_VERSION) || \
  104. (WDG_IPW_AR_RELEASE_MINOR_VERSION != EWM_IP_AR_RELEASE_MINOR_VERSION) || \
  105. (WDG_IPW_AR_RELEASE_REVISION_VERSION != EWM_IP_AR_RELEASE_REVISION_VERSION))
  106. #error "AutoSar Version Numbers of Wdg_Ipw.h and Ewm_Ip.h are different"
  107. #endif
  108. /* Check if current file and Ewm_Ip header file are of the same software version */
  109. #if ((WDG_IPW_SW_MAJOR_VERSION != EWM_IP_SW_MAJOR_VERSION) || \
  110. (WDG_IPW_SW_MINOR_VERSION != EWM_IP_SW_MINOR_VERSION) || \
  111. (WDG_IPW_SW_PATCH_VERSION != EWM_IP_SW_PATCH_VERSION))
  112. #error "Software Version Numbers of Wdg_Ipw.h and Ewm_Ip.h are different"
  113. #endif
  114. #endif /*(EWM_IP_USED == STD_ON)*/
  115. #ifndef DISABLE_MCAL_INTERMODULE_ASR_CHECK
  116. /* Check if current file and StandardTypes header file are of the same Autosar version */
  117. #if ((WDG_IPW_AR_RELEASE_MAJOR_VERSION != STD_AR_RELEASE_MAJOR_VERSION) || \
  118. (WDG_IPW_AR_RELEASE_MINOR_VERSION != STD_AR_RELEASE_MINOR_VERSION))
  119. #error "AutoSar Version Numbers of Wdg_Ipw.h and StandardTypes.h are different"
  120. #endif
  121. #endif /* DISABLE_MCAL_INTERMODULE_ASR_CHECK */
  122. /*==================================================================================================
  123. * CONSTANTS
  124. ==================================================================================================*/
  125. /*==================================================================================================
  126. * DEFINES AND MACROS
  127. ==================================================================================================*/
  128. /*==================================================================================================
  129. * ENUMS
  130. ==================================================================================================*/
  131. /*==================================================================================================
  132. * STRUCTURES AND OTHER TYPEDEFS
  133. ==================================================================================================*/
  134. /*==================================================================================================
  135. * GLOBAL VARIABLE DECLARATIONS
  136. ==================================================================================================*/
  137. /*==================================================================================================
  138. * FUNCTION PROTOTYPES
  139. ==================================================================================================*/
  140. #ifdef WDG_ROM
  141. #if (WDG_ROM == 1U)
  142. #define WDG_START_SEC_CODE
  143. #endif
  144. #else
  145. #if (WDG_RAM == 0U)
  146. #define WDG_START_SEC_RAMCODE
  147. #endif
  148. #endif
  149. #include "Wdg_MemMap.h"
  150. Std_ReturnType Wdg_Ipw_Init(Wdg_Ipw_InstanceType Wdg_Instance, const Wdg_Ipw_ConfigType * const pIpwConfig);
  151. Std_ReturnType Wdg_Ipw_SetMode(Wdg_Ipw_InstanceType Wdg_Instance, const Wdg_Ipw_ConfigType * const pIpwConfig);
  152. Std_ReturnType Wdg_Ipw_StartTimer(Wdg_Ipw_InstanceType Wdg_Instance);
  153. #if (WDG_IPW_DEINIT == STD_ON)
  154. Std_ReturnType Wdg_Ipw_StopTimer(Wdg_Ipw_InstanceType Wdg_Instance);
  155. #endif
  156. void Wdg_Ipw_Service(Wdg_Ipw_InstanceType Wdg_Instance);
  157. #ifdef WDG_ROM
  158. #if (WDG_ROM == 1U)
  159. #define WDG_STOP_SEC_CODE
  160. #endif
  161. #else
  162. #if (WDG_RAM == 0U)
  163. #define WDG_STOP_SEC_RAMCODE
  164. #endif
  165. #endif
  166. #include "Wdg_MemMap.h"
  167. #ifdef __cplusplus
  168. }
  169. #endif
  170. /** @} */
  171. #endif /*WDG_IPW_H*/