ipumm: Use FW_RSC_ADDR_ANY for vrings in IPU resource table master
authorRamprasad N <x0038811@ti.com>
Thu, 13 Feb 2020 04:13:21 +0000 (09:43 +0530)
committerRamprasad N <x0038811@ti.com>
Thu, 13 Feb 2020 05:09:35 +0000 (10:39 +0530)
Mark the vring device addresses as FW_RSC_ADDR_ANY, so that Linux kernel
knows it needs to update these to the actual dynamically allocated
memory locations. The virtqueue driver itself will poll for the
completion status of this update.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Ramprasad N <x0038811@ti.com>
platform/ti/dce/baseimage/custom_rsc_table_vayu_ipu.h

index f0ed50576d257f0e7f660f2588ed361960e6642d..e21c7f7755fb1b63c70bf77cde3fe531b63dabce 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * Copyright (c) 2013-2015, Texas Instruments Incorporated
+ * Copyright (c) 2013-2020, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -86,8 +86,6 @@
 
 #define IPU_MEM_IPC_DATA        0x9F000000
 #define IPU_MEM_IPC_VRING       0x60000000
 
 #define IPU_MEM_IPC_DATA        0x9F000000
 #define IPU_MEM_IPC_VRING       0x60000000
-#define IPU_MEM_RPMSG_VRING0    0x60000000
-#define IPU_MEM_RPMSG_VRING1    0x60004000
 #define IPU_MEM_VRING_BUFS0     0x60040000
 #define IPU_MEM_VRING_BUFS1     0x60080000
 
 #define IPU_MEM_VRING_BUFS0     0x60040000
 #define IPU_MEM_VRING_BUFS1     0x60080000
 
 /* flip up bits whose indices represent features we support */
 #define RPMSG_IPU_C0_FEATURES   1
 
 /* flip up bits whose indices represent features we support */
 #define RPMSG_IPU_C0_FEATURES   1
 
+
+#define RPMSG_VRING_ADDR_ANY    FW_RSC_ADDR_ANY
+
 struct my_resource_table {
     struct resource_table base;
 
 struct my_resource_table {
     struct resource_table base;
 
@@ -219,8 +220,8 @@ struct my_resource_table ti_ipc_remoteproc_ResourceTable = {
         /* no config data */
     },
     /* the two vrings */
         /* no config data */
     },
     /* the two vrings */
-    { IPU_MEM_RPMSG_VRING0, 4096, IPU_RPMSG_VQ0_SIZE, 1, 0 },
-    { IPU_MEM_RPMSG_VRING1, 4096, IPU_RPMSG_VQ1_SIZE, 2, 0 },
+    { RPMSG_VRING_ADDR_ANY, 4096, IPU_RPMSG_VQ0_SIZE, 1, 0 },
+    { RPMSG_VRING_ADDR_ANY, 4096, IPU_RPMSG_VQ1_SIZE, 2, 0 },
 
     {
         TYPE_CARVEOUT,
 
     {
         TYPE_CARVEOUT,