FlexCAN_Ip_Irq.h 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. /*==================================================================================================
  2. * Project : RTD AUTOSAR 4.4
  3. * Platform : CORTEXM
  4. * Peripheral : FLEXCAN
  5. * Dependencies :
  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. /**
  25. * @file FlexCAN_Ip_Irq.h
  26. *
  27. * @brief Interrupt Handlers for FlexCAN
  28. * @details Contains the Interrupt Handlers Header file
  29. *
  30. * @addtogroup FlexCAN
  31. * @{
  32. */
  33. #ifndef FLEXCAN_IP_IRQ_H
  34. #define FLEXCAN_IP_IRQ_H
  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 "FlexCAN_Ip.h"
  42. /*==================================================================================================
  43. * SOURCE FILE VERSION INFORMATION
  44. ==================================================================================================*/
  45. #define FLEXCAN_IP_IRQ_VENDOR_ID_H 43
  46. #define FLEXCAN_IP_IRQ_AR_RELEASE_MAJOR_VERSION_H 4
  47. #define FLEXCAN_IP_IRQ_AR_RELEASE_MINOR_VERSION_H 4
  48. #define FLEXCAN_IP_IRQ_AR_RELEASE_REVISION_VERSION_H 0
  49. #define FLEXCAN_IP_IRQ_SW_MAJOR_VERSION_H 1
  50. #define FLEXCAN_IP_IRQ_SW_MINOR_VERSION_H 0
  51. #define FLEXCAN_IP_IRQ_SW_PATCH_VERSION_H 0
  52. /*==================================================================================================
  53. * FILE VERSION CHECKS
  54. ==================================================================================================*/
  55. /* Check if current file and FlexCAN_Ip_Irq header file are of the same vendor */
  56. #if (FLEXCAN_IP_IRQ_VENDOR_ID_H != FLEXCAN_IP_VENDOR_ID_H)
  57. #error "FlexCAN_Ip_Irq.h and FlexCAN_Ip.h have different vendor ids"
  58. #endif
  59. /* Check if current file and FlexCAN_Ip_Irq header file are of the same Autosar version */
  60. #if ((FLEXCAN_IP_IRQ_AR_RELEASE_MAJOR_VERSION_H != FLEXCAN_IP_AR_RELEASE_MAJOR_VERSION_H) || \
  61. (FLEXCAN_IP_IRQ_AR_RELEASE_MINOR_VERSION_H != FLEXCAN_IP_AR_RELEASE_MINOR_VERSION_H) || \
  62. (FLEXCAN_IP_IRQ_AR_RELEASE_REVISION_VERSION_H != FLEXCAN_IP_AR_RELEASE_REVISION_VERSION_H))
  63. #error "AutoSar Version Numbers of FlexCAN_Ip_Irq.h and FlexCAN_Ip.h are different"
  64. #endif
  65. /* Check if current file and FlexCAN_Ip_Irq header file are of the same Software version */
  66. #if ((FLEXCAN_IP_IRQ_SW_MAJOR_VERSION_H != FLEXCAN_IP_SW_MAJOR_VERSION_H) || \
  67. (FLEXCAN_IP_IRQ_SW_MINOR_VERSION_H != FLEXCAN_IP_SW_MINOR_VERSION_H) || \
  68. (FLEXCAN_IP_IRQ_SW_PATCH_VERSION_H != FLEXCAN_IP_SW_PATCH_VERSION_H))
  69. #error "Software Version Numbers of FlexCAN_Ip_Irq.h and FlexCAN_Ip.h are different"
  70. #endif
  71. /*==================================================================================================
  72. * CONSTANTS
  73. ==================================================================================================*/
  74. /*==================================================================================================
  75. * DEFINES AND MACROS
  76. ==================================================================================================*/
  77. /*==================================================================================================
  78. * FUNCTION PROTOTYPES
  79. ==================================================================================================*/
  80. #define CAN_START_SEC_CODE
  81. #include "Can_MemMap.h"
  82. void FlexCAN_IRQHandler
  83. (
  84. uint8 instance,
  85. uint32 startMbIdx,
  86. uint32 endMbIdx
  87. #if (FLEXCAN_IP_FEATURE_HAS_ENHANCED_RX_FIFO == STD_ON)
  88. ,boolean bEnhancedFifoExisted
  89. #endif
  90. );
  91. #if (FLEXCAN_IP_FEATURE_BUSOFF_ERROR_INTERRUPT_UNIFIED == STD_ON)
  92. void FlexCAN_Busoff_Error_IRQHandler(uint8 instance);
  93. #else
  94. void FlexCAN_BusOff_IRQHandler(uint8 instance);
  95. void FlexCAN_Error_IRQHandler(uint8 instance);
  96. #endif
  97. #if (FLEXCAN_IP_FEATURE_HAS_PRETENDED_NETWORKING == STD_ON)
  98. void FlexCAN_WakeUp_IRQHandler(uint8 u8Instance);
  99. #endif
  100. #define CAN_STOP_SEC_CODE
  101. #include "Can_MemMap.h"
  102. #endif /* FLEXCAN_IP_IRQ_H*/
  103. /** @} */