summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSkylar Chang <chiaweic@codeaurora.org>2017-02-21 09:46:46 -0800
committerSkylar Chang <chiaweic@codeaurora.org>2017-02-23 14:06:34 -0800
commit3e67e235eab1762b562f0e359b9cde9b1302f32d (patch)
tree868f8b796a10ecd47e3c01c873f6c9d5a175c2b0 /include
parent7066afbbe98876327824a305c9d0737114136baa (diff)
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 <adya@qti.qualcomm.com> Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/msm_gsi.h18
1 files changed, 18 insertions, 0 deletions
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