diff options
author | isiora <none@example.com> | 2018-01-30 22:31:26 +0000 |
---|---|---|
committer | isiora <none@example.com> | 2018-01-30 22:31:26 +0000 |
commit | 065068033faa5c6c8080af92137bf6567e1d68d6 (patch) | |
tree | ad1a12383a02a90375f0cd4b71084560905a6030 | |
parent | e6404fe1a2e59f5693dcd6cdb7447f35b00420e8 (diff) | |
download | ChibiOS-065068033faa5c6c8080af92137bf6567e1d68d6.tar.gz ChibiOS-065068033faa5c6c8080af92137bf6567e1d68d6.tar.bz2 ChibiOS-065068033faa5c6c8080af92137bf6567e1d68d6.zip |
Code cleanup.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11415 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r-- | demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.c | 8 | ||||
-rw-r--r-- | demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.h | 12 |
2 files changed, 13 insertions, 7 deletions
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.c b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.c index 8b9f0edeb..6a56bff14 100644 --- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.c +++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.c @@ -56,11 +56,11 @@ msg_t smcInvoke(smc_service_t handle, smc_params_area_t data, msg_t smcInvokeService(smc_service_t handle, smc_params_area_t data,
size_t size)
{
- msg_t result;
+ msg_t result = MSG_OK;
- do {
- result = smcInvoke(handle, data, size);
- } while (result == MSG_TIMEOUT);
+ result = smcInvoke(handle, data, size);
+ while (result == SMC_SVC_INTR)
+ result = smcInvoke(SMC_HND_REENTER, 0, 0);
return result;
}
diff --git a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.h b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.h index f631e30f6..ceb2941b7 100644 --- a/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.h +++ b/demos/ATSAMA5D2/RT-SAMA5D2-XPLAINED-NSEC/smcclient.h @@ -34,13 +34,19 @@ /*
* Service registry errors
*/
-#define SMC_SVC_OK MSG_OK /* No error */
+#define SMC_SVC_OK MSG_OK /* No error */
+#define SMC_SVC_INTR (msg_t)-1 /* Service interrupted */
+#define SMC_SVC_NOENT (msg_t)-2 /* No existent service */
+#define SMC_SVC_INVALID (msg_t)-3 /* Invalid service parameter(s) */
+#define SMC_SVC_BADH (msg_t)-4 /* Invalid service handle */
+#define SMC_SVC_EXIST (msg_t)-5 /* Service already exists */
/*
* Special service handles
*/
-#define SMC_HND_TRAMP ((smc_service_t)0)
-#define SMC_HND_GET ((smc_service_t)1)
+#define SMC_HND_TRAMP ((smc_service_t *)0) /* Trampoline service handle */
+#define SMC_HND_DISCOVERY ((smc_service_t *)1) /* Discovery service handle */
+#define SMC_HND_REENTER ((smc_service_t *)2) /* Reentering a service service handle */
/*===========================================================================*/
/* Module pre-compile time settings. */
|