summaryrefslogtreecommitdiffstats
path: root/drivers/cdx/controller/mcdi.h
diff options
context:
space:
mode:
authorNipun Gupta <nipun.gupta@amd.com>2023-03-13 14:26:35 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-03-29 12:26:32 +0200
commit2a226927d9b836ddec674aebbcea311727d04240 (patch)
tree508575830ba25653e4d63ea2c7be34c9a630d0f1 /drivers/cdx/controller/mcdi.h
parentcdx: add cdx controller (diff)
downloadlinux-2a226927d9b836ddec674aebbcea311727d04240.tar.xz
linux-2a226927d9b836ddec674aebbcea311727d04240.zip
cdx: add rpmsg communication channel for CDX
RPMsg is used as a transport communication channel. This change introduces RPMsg driver and integrates it with the CDX controller. Signed-off-by: Abhijit Gangurde <abhijit.gangurde@amd.com> Signed-off-by: Nipun Gupta <nipun.gupta@amd.com> Reviewed-by: Pieter Jansen van Vuuren <pieter.jansen-van-vuuren@amd.com> Tested-by: Nikhil Agarwal <nikhil.agarwal@amd.com> Link: https://lore.kernel.org/r/20230313132636.31850-7-nipun.gupta@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to '')
-rw-r--r--drivers/cdx/controller/mcdi.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/cdx/controller/mcdi.h b/drivers/cdx/controller/mcdi.h
index 63933ede33ed..0bfbeab04e43 100644
--- a/drivers/cdx/controller/mcdi.h
+++ b/drivers/cdx/controller/mcdi.h
@@ -9,6 +9,7 @@
#include <linux/mutex.h>
#include <linux/kref.h>
+#include <linux/rpmsg.h>
#include "bitfield.h"
#include "mc_cdx_pcol.h"
@@ -62,11 +63,20 @@ enum cdx_mcdi_cmd_state {
* with CDX controller.
* @mcdi: MCDI interface
* @mcdi_ops: MCDI operations
+ * @r5_rproc : R5 Remoteproc device handle
+ * @rpdev: RPMsg device
+ * @ept: RPMsg endpoint
+ * @work: Post probe work
*/
struct cdx_mcdi {
/* MCDI interface */
struct cdx_mcdi_data *mcdi;
const struct cdx_mcdi_ops *mcdi_ops;
+
+ struct rproc *r5_rproc;
+ struct rpmsg_device *rpdev;
+ struct rpmsg_endpoint *ept;
+ struct work_struct work;
};
struct cdx_mcdi_ops {