From 3e67e235eab1762b562f0e359b9cde9b1302f32d Mon Sep 17 00:00:00 2001 From: Skylar Chang Date: Tue, 21 Feb 2017 09:46:46 -0800 Subject: msm: gsi: add support for generic commands Expose a new API from GSI driver to allow client driver to disable channel for other Execution Environment. This API will be used as part of SSR cleanup. Change-Id: I3b9400643aff76ca2195a597aba9ea18aab3085e CRs-Fixed: 2008582 Acked-by: Ady Abrahan Signed-off-by: Skylar Chang --- include/linux/msm_gsi.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'include') diff --git a/include/linux/msm_gsi.h b/include/linux/msm_gsi.h index 6037fbf00a23..d4b4cc7f8737 100644 --- a/include/linux/msm_gsi.h +++ b/include/linux/msm_gsi.h @@ -1053,6 +1053,18 @@ int gsi_enable_fw(phys_addr_t gsi_base_addr, u32 gsi_size); void gsi_get_inst_ram_offset_and_size(unsigned long *base_offset, unsigned long *size); +/** + * gsi_halt_channel_ee - Peripheral should call this function + * to stop other EE's channel. This is usually used in SSR clean + * + * @chan_idx: Virtual channel index + * @ee: EE + * @code: [out] response code for operation + + * @Return gsi_status + */ +int gsi_halt_channel_ee(unsigned int chan_idx, unsigned int ee, int *code); + /* * Here is a typical sequence of calls * @@ -1250,5 +1262,11 @@ static inline void gsi_get_inst_ram_offset_and_size(unsigned long *base_offset, unsigned long *size) { } + +static inline int gsi_halt_channel_ee(unsigned int chan_idx, unsigned int ee, + int *code) +{ + return -GSI_STATUS_UNSUPPORTED_OP; +} #endif #endif -- cgit v1.2.3