The fastrpc driver has support for 5 types of remoteprocs. There are
some products which support GPDSP remoteprocs. Add changes to support
GPDSP remoteprocs.

Reviewed-by: Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com>
Signed-off-by: Ling Xu <quic_l...@quicinc.com>
---
 drivers/misc/fastrpc.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index 7b7a22c91fe4..80aa554b3042 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -28,7 +28,9 @@
 #define SDSP_DOMAIN_ID (2)
 #define CDSP_DOMAIN_ID (3)
 #define CDSP1_DOMAIN_ID (4)
-#define FASTRPC_DEV_MAX                5 /* adsp, mdsp, slpi, cdsp, cdsp1 */
+#define GDSP0_DOMAIN_ID (5)
+#define GDSP1_DOMAIN_ID (6)
+#define FASTRPC_DEV_MAX                7 /* adsp, mdsp, slpi, cdsp, cdsp1, 
gdsp0, gdsp1 */
 #define FASTRPC_MAX_SESSIONS   14
 #define FASTRPC_MAX_VMIDS      16
 #define FASTRPC_ALIGN          128
@@ -107,7 +109,9 @@
 #define miscdev_to_fdevice(d) container_of(d, struct fastrpc_device, miscdev)
 
 static const char *domains[FASTRPC_DEV_MAX] = { "adsp", "mdsp",
-                                               "sdsp", "cdsp", "cdsp1" };
+                                               "sdsp", "cdsp",
+                                               "cdsp1", "gdsp0",
+                                               "gdsp1" };
 struct fastrpc_phy_page {
        u64 addr;               /* physical address */
        u64 size;               /* size of contiguous region */
@@ -2338,6 +2342,8 @@ static int fastrpc_rpmsg_probe(struct rpmsg_device *rpdev)
                break;
        case CDSP_DOMAIN_ID:
        case CDSP1_DOMAIN_ID:
+       case GDSP0_DOMAIN_ID:
+       case GDSP1_DOMAIN_ID:
                data->unsigned_support = true;
                /* Create both device nodes so that we can allow both Signed 
and Unsigned PD */
                err = fastrpc_device_register(rdev, data, true, 
domains[domain_id]);
-- 
2.34.1

Reply via email to