From: Bhaumik Bhatt <bbhatt@codeaurora.org>
To: manivannan.sadhasivam@linaro.org, hemantk@codeaurora.org
Cc: linux-arm-msm@vger.kernel.org, loic.poulain@linaro.org,
jhugo@codeaurora.org, linux-kernel@vger.kernel.org,
Bhaumik Bhatt <bbhatt@codeaurora.org>
Subject: [PATCH v3 7/7] bus: mhi: Improve documentation on channel transfer setup APIs
Date: Wed, 2 Dec 2020 15:40:38 -0800 [thread overview]
Message-ID: <1606952438-15321-8-git-send-email-bbhatt@codeaurora.org> (raw)
In-Reply-To: <1606952438-15321-1-git-send-email-bbhatt@codeaurora.org>
The mhi_prepare_for_transfer() and mhi_unprepare_from_transfer()
APIs could use better explanation, especially with the addition
of two new APIs to start and stop the transfers on channels. Add
better set of information for those APIs.
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
---
include/linux/mhi.h | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/include/linux/mhi.h b/include/linux/mhi.h
index 35779a0..bd229da 100644
--- a/include/linux/mhi.h
+++ b/include/linux/mhi.h
@@ -692,13 +692,35 @@ int mhi_device_get_sync(struct mhi_device *mhi_dev);
void mhi_device_put(struct mhi_device *mhi_dev);
/**
- * mhi_prepare_for_transfer - Setup channel for data transfer
+ * mhi_prepare_for_transfer - Setup UL and DL channels for data transfer.
+ * Allocate and initialize the channel context and
+ * also issue the START channel command to both
+ * channels. Channels can be started only if both
+ * host and device execution environments match and
+ * channels are in a DISABLED state. Calling the
+ * mhi_start_transfer() function is not required
+ * afterwards as channels are already started. This
+ * function also initializes the channel context
+ * whereas mhi_start_transfer() can only be used to
+ * issue the start channel command once the context
+ * is setup.
* @mhi_dev: Device associated with the channels
*/
int mhi_prepare_for_transfer(struct mhi_device *mhi_dev);
/**
- * mhi_unprepare_from_transfer - Unprepare the channels
+ * mhi_unprepare_from_transfer - Reset UL and DL channels for data transfer.
+ * Issue the RESET channel command and let the
+ * device clean-up the context so no incoming
+ * transfers are seen on the host. Free memory
+ * associated with the context on host. If device
+ * is unresponsive, only perform a host side
+ * clean-up. Channels can be reset only if both
+ * host and device execution environments match
+ * and channels are in an ENABLED, STOPPED or
+ * SUSPENDED state. Calling mhi_stop_transfer() is
+ * not required before calling this function as it
+ * will only stop transfers, not reset channels.
* @mhi_dev: Device associated with the channels
*/
void mhi_unprepare_from_transfer(struct mhi_device *mhi_dev);
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
next prev parent reply other threads:[~2020-12-02 23:41 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-02 23:40 [PATCH v3 0/7] Updates to MHI channel handling Bhaumik Bhatt
2020-12-02 23:40 ` [PATCH v3 1/7] bus: mhi: core: Allow receiving a STOP channel command response Bhaumik Bhatt
2020-12-03 0:15 ` Hemant Kumar
2020-12-04 1:43 ` Bhaumik Bhatt
2020-12-02 23:40 ` [PATCH v3 2/7] bus: mhi: core: Allow channel to be disabled from stopped state Bhaumik Bhatt
2020-12-03 0:17 ` Hemant Kumar
2020-12-02 23:40 ` [PATCH v3 3/7] bus: mhi: core: Improvements to the channel handling state machine Bhaumik Bhatt
2020-12-03 0:51 ` Hemant Kumar
2020-12-02 23:40 ` [PATCH v3 4/7] bus: mhi: core: Add support to stop or start channel data transfers Bhaumik Bhatt
2020-12-03 0:33 ` Hemant Kumar
2020-12-04 1:44 ` Bhaumik Bhatt
2020-12-02 23:40 ` [PATCH v3 5/7] bus: mhi: core: Check execution environment for channel before issuing reset Bhaumik Bhatt
2020-12-03 0:54 ` Hemant Kumar
2020-12-02 23:40 ` [PATCH v3 6/7] bus: mhi: core: Remove __ prefix for MHI channel unprepare function Bhaumik Bhatt
2020-12-02 23:48 ` Hemant Kumar
2020-12-02 23:40 ` Bhaumik Bhatt [this message]
2020-12-03 0:56 ` [PATCH v3 7/7] bus: mhi: Improve documentation on channel transfer setup APIs Hemant Kumar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1606952438-15321-8-git-send-email-bbhatt@codeaurora.org \
--to=bbhatt@codeaurora.org \
--cc=hemantk@codeaurora.org \
--cc=jhugo@codeaurora.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=loic.poulain@linaro.org \
--cc=manivannan.sadhasivam@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.