1 /* 2 * Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /*! 8 * Header file for the PAD RPC implementation. 9 * 10 * @addtogroup PAD_SVC 11 * @{ 12 */ 13 14 #ifndef SCI_PAD_RPC_H 15 #define SCI_PAD_RPC_H 16 17 /* Includes */ 18 19 /* Defines */ 20 21 /*! 22 * @name Defines for RPC PAD function calls 23 */ 24 /*@{*/ 25 #define PAD_FUNC_UNKNOWN 0 /* Unknown function */ 26 #define PAD_FUNC_SET_MUX 1U /* Index for pad_set_mux() RPC call */ 27 #define PAD_FUNC_GET_MUX 6U /* Index for pad_get_mux() RPC call */ 28 #define PAD_FUNC_SET_GP 2U /* Index for pad_set_gp() RPC call */ 29 #define PAD_FUNC_GET_GP 7U /* Index for pad_get_gp() RPC call */ 30 #define PAD_FUNC_SET_WAKEUP 4U /* Index for pad_set_wakeup() RPC call */ 31 #define PAD_FUNC_GET_WAKEUP 9U /* Index for pad_get_wakeup() RPC call */ 32 #define PAD_FUNC_SET_ALL 5U /* Index for pad_set_all() RPC call */ 33 #define PAD_FUNC_GET_ALL 10U /* Index for pad_get_all() RPC call */ 34 #define PAD_FUNC_SET 15U /* Index for pad_set() RPC call */ 35 #define PAD_FUNC_GET 16U /* Index for pad_get() RPC call */ 36 #define PAD_FUNC_SET_GP_28FDSOI 11U /* Index for pad_set_gp_28fdsoi() RPC call */ 37 #define PAD_FUNC_GET_GP_28FDSOI 12U /* Index for pad_get_gp_28fdsoi() RPC call */ 38 #define PAD_FUNC_SET_GP_28FDSOI_HSIC 3U /* Index for pad_set_gp_28fdsoi_hsic() RPC call */ 39 #define PAD_FUNC_GET_GP_28FDSOI_HSIC 8U /* Index for pad_get_gp_28fdsoi_hsic() RPC call */ 40 #define PAD_FUNC_SET_GP_28FDSOI_COMP 13U /* Index for pad_set_gp_28fdsoi_comp() RPC call */ 41 #define PAD_FUNC_GET_GP_28FDSOI_COMP 14U /* Index for pad_get_gp_28fdsoi_comp() RPC call */ 42 /*@}*/ 43 44 /* Types */ 45 46 /* Functions */ 47 48 /*! 49 * This function dispatches an incoming PAD RPC request. 50 * 51 * @param[in] caller_pt caller partition 52 * @param[in] msg pointer to RPC message 53 */ 54 void pad_dispatch(sc_rm_pt_t caller_pt, sc_rpc_msg_t *msg); 55 56 /*! 57 * This function translates and dispatches an PAD RPC request. 58 * 59 * @param[in] ipc IPC handle 60 * @param[in] msg pointer to RPC message 61 */ 62 void pad_xlate(sc_ipc_t ipc, sc_rpc_msg_t *msg); 63 64 #endif /* SCI_PAD_RPC_H */ 65 66 /**@}*/ 67