From 043cae74b250f291a48fa36bb091391e917c3eb5 Mon Sep 17 00:00:00 2001 From: Michael Adisumarta Date: Fri, 6 Nov 2020 17:24:34 -0800 Subject: [PATCH] msm: ipa: device assisted low power states support in IPA This change supports device assisted low power modes -M1/M2 states in IPA. For M1/M2 states, GSI is continued to be in poll mode where as for M3 state GSI is moved to doorbell mode. Change-Id: I48a7c9f2c27da0be69a6bb50dfec0a542e46caec Signed-off-by: Michael Adisumarta --- include/linux/ipa_mhi.h | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/include/linux/ipa_mhi.h b/include/linux/ipa_mhi.h index 13fa2475118f..dbb1cace27f2 100644 --- a/include/linux/ipa_mhi.h +++ b/include/linux/ipa_mhi.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* - * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. */ #ifndef IPA_MHI_H_ @@ -22,6 +22,14 @@ enum ipa_mhi_event_type { IPA_MHI_EVENT_MAX, }; +enum ipa_mhi_mstate { + IPA_MHI_STATE_M0, + IPA_MHI_STATE_M1, + IPA_MHI_STATE_M2, + IPA_MHI_STATE_M3, + IPA_MHI_STATE_M_MAX +}; + typedef void (*mhi_client_cb)(void *priv, enum ipa_mhi_event_type event, unsigned long data); @@ -111,6 +119,8 @@ int ipa_mhi_resume(void); void ipa_mhi_destroy(void); +int ipa_mhi_update_mstate(enum ipa_mhi_mstate mstate_info); + #else /* IS_ENABLED(CONFIG_IPA3) */ static inline int ipa_mhi_init(struct ipa_mhi_init_params *params) @@ -149,6 +159,12 @@ static inline void ipa_mhi_destroy(void) } +static inline int ipa_mhi_update_mstate + (enum ipa_mhi_mstate mstate_info) +{ + return -EPERM; +} + #endif /* IS_ENABLED(CONFIG_IPA3) */ #endif /* IPA_MHI_H_ */