remoteproc: imx_rproc: enlarge IMX7D_RPROC_MEM_MAX
authorPeng Fan <peng.fan@nxp.com>
Thu, 8 Apr 2021 01:44:47 +0000 (09:44 +0800)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 14 Apr 2021 02:10:32 +0000 (21:10 -0500)
8 is not enough when we need more, such as resource table for remote cores
that booted before Linux Kernel, so enlarge IMX7D_RPROC_MEM_MAX to 32.
And also rename it to IMX_RPROC_MEM_MAX which make more sense.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Link: https://lore.kernel.org/r/1617846289-13496-3-git-send-email-peng.fan@oss.nxp.com
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/remoteproc/imx_rproc.c

index 0774133..b05aae0 100644 (file)
@@ -48,7 +48,7 @@
                                         | IMX6SX_SW_M4C_NON_SCLR_RST \
                                         | IMX6SX_SW_M4C_RST)
 
-#define IMX7D_RPROC_MEM_MAX            8
+#define IMX_RPROC_MEM_MAX              32
 
 /**
  * struct imx_rproc_mem - slim internal memory structure
@@ -88,7 +88,7 @@ struct imx_rproc {
        struct regmap                   *regmap;
        struct rproc                    *rproc;
        const struct imx_rproc_dcfg     *dcfg;
-       struct imx_rproc_mem            mem[IMX7D_RPROC_MEM_MAX];
+       struct imx_rproc_mem            mem[IMX_RPROC_MEM_MAX];
        struct clk                      *clk;
        struct mbox_client              cl;
        struct mbox_chan                *tx_ch;
@@ -272,7 +272,7 @@ static void *imx_rproc_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *i
        if (imx_rproc_da_to_sys(priv, da, len, &sys))
                return NULL;
 
-       for (i = 0; i < IMX7D_RPROC_MEM_MAX; i++) {
+       for (i = 0; i < IMX_RPROC_MEM_MAX; i++) {
                if (sys >= priv->mem[i].sys_addr && sys + len <
                    priv->mem[i].sys_addr +  priv->mem[i].size) {
                        unsigned int offset = sys - priv->mem[i].sys_addr;
@@ -425,7 +425,7 @@ static int imx_rproc_addr_init(struct imx_rproc *priv,
                if (!(att->flags & ATT_OWN))
                        continue;
 
-               if (b >= IMX7D_RPROC_MEM_MAX)
+               if (b >= IMX_RPROC_MEM_MAX)
                        break;
 
                priv->mem[b].cpu_addr = devm_ioremap(&pdev->dev,
@@ -461,7 +461,7 @@ static int imx_rproc_addr_init(struct imx_rproc *priv,
 
                of_node_put(node);
 
-               if (b >= IMX7D_RPROC_MEM_MAX)
+               if (b >= IMX_RPROC_MEM_MAX)
                        break;
 
                /* Not use resource version, because we might share region */