diff options
| author | Ghanim Fodi <gfodi@codeaurora.org> | 2017-06-20 10:35:20 +0300 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-06-25 23:49:59 -0700 |
| commit | 7d7714eae2d106d27de361a1fe2030d6d975031d (patch) | |
| tree | e1ab1ca7e0783b6d4e4d06e229eaf16f89bcfb19 /include/linux | |
| parent | 6f56b2a9c8e2ce69e2a98e52d5f1342b25cae44e (diff) | |
msm: ipa3: Ring IPA MHI event ring doorbell on channel start
Ringing IPA MHI event ring doorbell is done at MHI device
during MHI channel start. This is done after the rings
are allocated. The ring write pointer updated by the host is
used as the doorbell value. Doorbell ringing is required
in order to supply event credits to GSI H/W.
Change-Id: I2db110b4f99c8ab6c6878d426b3ebb37149b0b76
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/msm_gsi.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/msm_gsi.h b/include/linux/msm_gsi.h index d4b4cc7f8737..b95ea88c2424 100644 --- a/include/linux/msm_gsi.h +++ b/include/linux/msm_gsi.h @@ -749,6 +749,18 @@ int gsi_query_evt_ring_db_addr(unsigned long evt_ring_hdl, uint32_t *db_addr_wp_lsb, uint32_t *db_addr_wp_msb); /** + * gsi_ring_evt_ring_db - Peripheral should call this function for + * ringing the event ring doorbell with given value + * + * @evt_ring_hdl: Client handle previously obtained from + * gsi_alloc_evt_ring + * @value: The value to be used for ringing the doorbell + * + * @Return gsi_status + */ +int gsi_ring_evt_ring_db(unsigned long evt_ring_hdl, uint64_t value); + +/** * gsi_reset_evt_ring - Peripheral should call this function to * reset an event ring to recover from error state * @@ -1138,6 +1150,12 @@ static inline int gsi_query_evt_ring_db_addr(unsigned long evt_ring_hdl, return -GSI_STATUS_UNSUPPORTED_OP; } +static inline int gsi_ring_evt_ring_db(unsigned long evt_ring_hdl, + uint64_t value) +{ + return -GSI_STATUS_UNSUPPORTED_OP; +} + static inline int gsi_reset_evt_ring(unsigned long evt_ring_hdl) { return -GSI_STATUS_UNSUPPORTED_OP; |
