summaryrefslogtreecommitdiff
path: root/plat/imx/common/include/sci/rpc.h
diff options
context:
space:
mode:
Diffstat (limited to 'plat/imx/common/include/sci/rpc.h')
-rw-r--r--plat/imx/common/include/sci/rpc.h109
1 files changed, 53 insertions, 56 deletions
diff --git a/plat/imx/common/include/sci/rpc.h b/plat/imx/common/include/sci/rpc.h
index b7e5c7f5..86ad904d 100644
--- a/plat/imx/common/include/sci/rpc.h
+++ b/plat/imx/common/include/sci/rpc.h
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2016 Freescale Semiconductor, Inc.
- * Copyright 2017 NXP
+ * Copyright 2017-2018 NXP
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -9,8 +9,8 @@
* Header file for the RPC implementation.
*/
-#ifndef _SC_RPC_H
-#define _SC_RPC_H
+#ifndef SC_RPC_H
+#define SC_RPC_H
/* Includes */
@@ -19,70 +19,68 @@
/* Defines */
-#define SC_RPC_VERSION 1
+#define SC_RPC_VERSION 1U
-#define SC_RPC_MAX_MSG 8
+#define SC_RPC_MAX_MSG 8U
#define RPC_VER(MSG) ((MSG)->version)
#define RPC_SIZE(MSG) ((MSG)->size)
#define RPC_SVC(MSG) ((MSG)->svc)
#define RPC_FUNC(MSG) ((MSG)->func)
#define RPC_R8(MSG) ((MSG)->func)
-#define RPC_I32(MSG, IDX) ((MSG)->DATA.i32[(IDX) / 4])
-#define RPC_I16(MSG, IDX) ((MSG)->DATA.i16[(IDX) / 2])
+#define RPC_I32(MSG, IDX) ((MSG)->DATA.i32[(IDX) / 4U])
+#define RPC_I16(MSG, IDX) ((MSG)->DATA.i16[(IDX) / 2U])
#define RPC_I8(MSG, IDX) ((MSG)->DATA.i8[(IDX)])
-#define RPC_U32(MSG, IDX) ((MSG)->DATA.u32[(IDX) / 4])
-#define RPC_U16(MSG, IDX) ((MSG)->DATA.u16[(IDX) / 2])
+#define RPC_U32(MSG, IDX) ((MSG)->DATA.u32[(IDX) / 4U])
+#define RPC_U16(MSG, IDX) ((MSG)->DATA.u16[(IDX) / 2U])
#define RPC_U8(MSG, IDX) ((MSG)->DATA.u8[(IDX)])
+#define SC_RPC_SVC_UNKNOWN 0U
+#define SC_RPC_SVC_RETURN 1U
+#define SC_RPC_SVC_PM 2U
+#define SC_RPC_SVC_RM 3U
+#define SC_RPC_SVC_TIMER 5U
+#define SC_RPC_SVC_PAD 6U
+#define SC_RPC_SVC_MISC 7U
+#define SC_RPC_SVC_IRQ 8U
+#define SC_RPC_SVC_ABORT 9U
+
+#define SC_RPC_ASYNC_STATE_RD_START 0U
+#define SC_RPC_ASYNC_STATE_RD_ACTIVE 1U
+#define SC_RPC_ASYNC_STATE_RD_DONE 2U
+#define SC_RPC_ASYNC_STATE_WR_START 3U
+#define SC_RPC_ASYNC_STATE_WR_ACTIVE 4U
+#define SC_RPC_ASYNC_STATE_WR_DONE 5U
+
+#define SC_RPC_MU_GIR_SVC 0x1U
+#define SC_RPC_MU_GIR_DBG 0x8U
+
/* Types */
-typedef enum sc_rpc_svc_e
-{
- SC_RPC_SVC_UNKNOWN = 0,
- SC_RPC_SVC_RETURN = 1,
- SC_RPC_SVC_PM = 2,
- SC_RPC_SVC_RM = 3,
- SC_RPC_SVC_TIMER = 5,
- SC_RPC_SVC_PAD = 6,
- SC_RPC_SVC_MISC = 7,
- SC_RPC_SVC_IRQ = 8,
- SC_RPC_SVC_ABORT = 9
-} sc_rpc_svc_t;
-
-typedef struct sc_rpc_msg_s
-{
- uint8_t version;
- uint8_t size;
- uint8_t svc;
- uint8_t func;
- union
- {
- int32_t i32[(SC_RPC_MAX_MSG - 1)];
- int16_t i16[(SC_RPC_MAX_MSG - 1) * 2];
- int8_t i8[(SC_RPC_MAX_MSG - 1) * 4];
- uint32_t u32[(SC_RPC_MAX_MSG - 1)];
- uint16_t u16[(SC_RPC_MAX_MSG - 1) * 2];
- uint8_t u8[(SC_RPC_MAX_MSG - 1) * 4];
- } DATA;
+typedef uint8_t sc_rpc_svc_t;
+
+typedef struct sc_rpc_msg_s {
+ uint8_t version;
+ uint8_t size;
+ uint8_t svc;
+ uint8_t func;
+ union {
+ int32_t i32[(SC_RPC_MAX_MSG - 1U)];
+ int16_t i16[(SC_RPC_MAX_MSG - 1U) * 2U];
+ int8_t i8[(SC_RPC_MAX_MSG - 1U) * 4U];
+ uint32_t u32[(SC_RPC_MAX_MSG - 1U)];
+ uint16_t u16[(SC_RPC_MAX_MSG - 1U) * 2U];
+ uint8_t u8[(SC_RPC_MAX_MSG - 1U) * 4U];
+ } DATA;
} sc_rpc_msg_t;
-typedef enum sc_rpc_async_state_e
-{
- SC_RPC_ASYNC_STATE_RD_START = 0,
- SC_RPC_ASYNC_STATE_RD_ACTIVE = 1,
- SC_RPC_ASYNC_STATE_RD_DONE = 2,
- SC_RPC_ASYNC_STATE_WR_START = 3,
- SC_RPC_ASYNC_STATE_WR_ACTIVE = 4,
- SC_RPC_ASYNC_STATE_WR_DONE = 5,
-} sc_rpc_async_state_t;
-
-typedef struct sc_rpc_async_msg_s
-{
- sc_rpc_async_state_t state;
- uint8_t wordIdx;
- sc_rpc_msg_t msg;
- uint32_t timeStamp;
+typedef uint8_t sc_rpc_async_state_t;
+
+typedef struct sc_rpc_async_msg_s {
+ sc_rpc_async_state_t state;
+ uint8_t wordIdx;
+ sc_rpc_msg_t msg;
+ uint32_t timeStamp;
} sc_rpc_async_msg_t;
/* Functions */
@@ -95,7 +93,7 @@ typedef struct sc_rpc_async_msg_s
* @param[in,out] msg handle to a message
* @param[in] no_resp response flag
*
- * If \a no_resp is false then this function waits for a response
+ * If \a no_resp is SC_FALSE then this function waits for a response
* and returns the result in \a msg.
*/
void sc_call_rpc(sc_ipc_t ipc, sc_rpc_msg_t *msg, bool no_resp);
@@ -126,5 +124,4 @@ void sc_rpc_dispatch(sc_rsrc_t mu, sc_rpc_msg_t *msg);
*/
void sc_rpc_xlate(sc_ipc_t ipc, sc_rpc_msg_t *msg);
-#endif /* _SC_RPC_H */
-
+#endif /* SC_RPC_H */