summaryrefslogtreecommitdiffstats
path: root/drivers/rpmsg/qcom_glink_native.h
diff options
context:
space:
mode:
authorSricharan R <sricharan@codeaurora.org>2017-08-24 12:51:32 +0530
committerBjorn Andersson <bjorn.andersson@linaro.org>2017-08-29 20:34:12 -0700
commitd31ad615f6fb809b534f6091cd06a7e88c44393e (patch)
tree167ea940cfebeb141fde41b7ed372f3368baafcf /drivers/rpmsg/qcom_glink_native.h
parentcaf989c350e8e0b9584744b9005fc2c45ca30883 (diff)
downloadlinux-d31ad615f6fb809b534f6091cd06a7e88c44393e.tar.bz2
rpmsg: glink: Add support for transport version negotiation
G-link supports a version number and feature flags for each transport. A combination of the version number and feature flags enable/disable: (*) G-Link software updates for each edge (*) Individual features for each edge Endpoints negotiate both the version and the supported flags when the transport is opened and they cannot be changed after negotiation has been completed. Each full implementation of G-Link must support a minimum of the current version, the previous version, and the base negotiation version called v0. Acked-by: Arun Kumar Neelakantam <aneela@codeaurora.org> Signed-off-by: Sricharan R <sricharan@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Diffstat (limited to 'drivers/rpmsg/qcom_glink_native.h')
-rw-r--r--drivers/rpmsg/qcom_glink_native.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/rpmsg/qcom_glink_native.h b/drivers/rpmsg/qcom_glink_native.h
index 197bb9da2c65..456ec79811f7 100644
--- a/drivers/rpmsg/qcom_glink_native.h
+++ b/drivers/rpmsg/qcom_glink_native.h
@@ -14,6 +14,10 @@
#ifndef __QCOM_GLINK_NATIVE_H__
#define __QCOM_GLINK_NATIVE_H__
+#define GLINK_FEATURE_INTENT_REUSE BIT(0)
+#define GLINK_FEATURE_MIGRATION BIT(1)
+#define GLINK_FEATURE_TRACER_PKT BIT(2)
+
struct qcom_glink_pipe {
size_t length;
@@ -31,6 +35,7 @@ struct qcom_glink_pipe {
struct qcom_glink;
struct qcom_glink *qcom_glink_native_probe(struct device *dev,
+ unsigned long features,
struct qcom_glink_pipe *rx,
struct qcom_glink_pipe *tx);
void qcom_glink_native_remove(struct qcom_glink *glink);