* -------------------------------- Arctic Core ------------------------------*/\r
\r
\r
-\r
-\r
-\r
-\r
-\r
-\r
#ifndef EA_H_\r
#define EA_H_\r
\r
-#include "Ea_Cfg.h"\r
-\r
-\r
#define EA_MODULE_ID MODULE_ID_EA\r
#define EA_VENDOR_ID 1\r
\r
#define EA_SW_MAJOR_VERSION 1\r
#define EA_SW_MINOR_VERSION 0\r
#define EA_SW_PATCH_VERSION 0\r
-#define EA_AR_MAJOR_VERSION 3\r
+#define EA_AR_MAJOR_VERSION 4 // Implemented after the 4.0.2 specification due to the poor quality of 3.1 specification\r
#define EA_AR_MINOR_VERSION 0\r
-#define EA_AR_PATCH_VERSION 1\r
+#define EA_AR_PATCH_VERSION 2\r
+\r
+#include "Eep.h"\r
+#include "Ea_Cfg.h"\r
\r
+/*\r
+ * API parameter checking\r
+ */\r
+/** @req EA139 */\r
+#define EA_E_NOT_INITIALIZED 0x01\r
+/** @req EA140 */\r
+#define EA_E_INVALID_BLOCK_NO 0x02\r
+\r
+/*\r
+ * EA Module Service ID Macro Collection\r
+*/\r
+typedef enum {\r
+ EA_INIT_ID = 0x00,\r
+ EA_SETMODE_ID,\r
+ EA_READ_ID,\r
+ EA_WRITE_ID,\r
+ EA_CANCEL_ID,\r
+ EA_GETSTATUS_ID,\r
+ EA_GETJOBRESULT_ID,\r
+ EA_INVALIDATEBLOCK_ID,\r
+ EA_GETVERSIONINFO_ID,\r
+ EA_ERASEIMMEDIATEBLOCK_ID,\r
+ EA_MAIN_ID = 0x12\r
+} Ea_APIServiceIDType;\r
+\r
+/*@req <EA061> */\r
+/*@req <EA062> */\r
+/*@req <EA082> */\r
#if ( EA_VERSION_INFO_API == STD_ON )\r
#define Ea_GetVersionInfo(_vi) STD_GET_VERSION_INFO(_vi, EA) /** @req EA092 */\r
#endif /* EA_VERSION_INFO_API */\r