2023-03-16 09:19:59

by Yu Zhe

[permalink] [raw]
Subject: [PATCH] remoteproc: qcom_q6v5_mss: remove unnecessary (void*) conversions

Pointer variables of void * type do not require type cast.

Signed-off-by: Yu Zhe <[email protected]>
---
drivers/remoteproc/qcom_q6v5_mss.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
index ab053084f7a2..e7a67c8c16a0 100644
--- a/drivers/remoteproc/qcom_q6v5_mss.c
+++ b/drivers/remoteproc/qcom_q6v5_mss.c
@@ -1562,7 +1562,7 @@ static void qcom_q6v5_dump_segment(struct rproc *rproc,

static int q6v5_start(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int xfermemop_ret;
int ret;

@@ -1604,7 +1604,7 @@ static int q6v5_start(struct rproc *rproc)

static int q6v5_stop(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int ret;

ret = qcom_q6v5_request_stop(&qproc->q6v5, qproc->sysmon);
@@ -1662,7 +1662,7 @@ static int qcom_q6v5_register_dump_segments(struct rproc *rproc,

static unsigned long q6v5_panic(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;

return qcom_q6v5_panic(&qproc->q6v5);
}
@@ -1977,7 +1977,7 @@ static int q6v5_probe(struct platform_device *pdev)
rproc->auto_boot = false;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- qproc = (struct q6v5 *)rproc->priv;
+ qproc = rproc->priv;
qproc->dev = &pdev->dev;
qproc->rproc = rproc;
qproc->hexagon_mdt_image = "modem.mdt";
--
2.11.0



2023-03-16 10:35:31

by Mukesh Ojha

[permalink] [raw]
Subject: Re: [PATCH] remoteproc: qcom_q6v5_mss: remove unnecessary (void*) conversions



On 3/16/2023 2:49 PM, Yu Zhe wrote:
> Pointer variables of void * type do not require type cast.
>
> Signed-off-by: Yu Zhe <[email protected]>
> ---
> drivers/remoteproc/qcom_q6v5_mss.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
> index ab053084f7a2..e7a67c8c16a0 100644
> --- a/drivers/remoteproc/qcom_q6v5_mss.c
> +++ b/drivers/remoteproc/qcom_q6v5_mss.c
> @@ -1562,7 +1562,7 @@ static void qcom_q6v5_dump_segment(struct rproc *rproc,
>
> static int q6v5_start(struct rproc *rproc)
> {
> - struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
> + struct q6v5 *qproc = rproc->priv;
> int xfermemop_ret;
> int ret;
>
> @@ -1604,7 +1604,7 @@ static int q6v5_start(struct rproc *rproc)
>
> static int q6v5_stop(struct rproc *rproc)
> {
> - struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
> + struct q6v5 *qproc = rproc->priv;
> int ret;
>
> ret = qcom_q6v5_request_stop(&qproc->q6v5, qproc->sysmon);
> @@ -1662,7 +1662,7 @@ static int qcom_q6v5_register_dump_segments(struct rproc *rproc,
>
> static unsigned long q6v5_panic(struct rproc *rproc)
> {
> - struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
> + struct q6v5 *qproc = rproc->priv;
>
> return qcom_q6v5_panic(&qproc->q6v5);
> }
> @@ -1977,7 +1977,7 @@ static int q6v5_probe(struct platform_device *pdev)
> rproc->auto_boot = false;
> rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
>
> - qproc = (struct q6v5 *)rproc->priv;
> + qproc = rproc->priv;
> qproc->dev = &pdev->dev;
> qproc->rproc = rproc;
> qproc->hexagon_mdt_image = "modem.mdt";

Well, there is quite a few files under driver/remoteproc/ which has this
kind of assignation.

Do you intend to do this for all ?

Acked-by: Mukesh Ojha <[email protected]>

-- Mukesh

2023-03-20 06:12:57

by Yu Zhe

[permalink] [raw]
Subject: [PATCH v2] remoteproc: remove unnecessary (void*) conversions

Pointer variables of void * type do not require type cast.

Signed-off-by: Yu Zhe <[email protected]>
---
drivers/remoteproc/da8xx_remoteproc.c | 12 ++++++------
drivers/remoteproc/mtk_scp.c | 12 ++++++------
drivers/remoteproc/qcom_q6v5_adsp.c | 10 +++++-----
drivers/remoteproc/qcom_q6v5_mss.c | 8 ++++----
drivers/remoteproc/qcom_q6v5_pas.c | 14 +++++++-------
drivers/remoteproc/qcom_wcnss.c | 10 +++++-----
drivers/remoteproc/remoteproc_core.c | 2 +-
drivers/remoteproc/st_remoteproc.c | 2 +-
drivers/remoteproc/stm32_rproc.c | 2 +-
drivers/remoteproc/ti_k3_dsp_remoteproc.c | 2 +-
drivers/remoteproc/ti_k3_r5_remoteproc.c | 2 +-
drivers/remoteproc/xlnx_r5_remoteproc.c | 16 ++++++++--------
12 files changed, 46 insertions(+), 46 deletions(-)

diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
index 98e0be9476a4..768217f0f5cd 100644
--- a/drivers/remoteproc/da8xx_remoteproc.c
+++ b/drivers/remoteproc/da8xx_remoteproc.c
@@ -84,7 +84,7 @@ struct da8xx_rproc {
*/
static irqreturn_t handle_event(int irq, void *p)
{
- struct rproc *rproc = (struct rproc *)p;
+ struct rproc *rproc = p;

/* Process incoming buffers on all our vrings */
rproc_vq_interrupt(rproc, 0);
@@ -104,8 +104,8 @@ static irqreturn_t handle_event(int irq, void *p)
*/
static irqreturn_t da8xx_rproc_callback(int irq, void *p)
{
- struct rproc *rproc = (struct rproc *)p;
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct rproc *rproc = p;
+ struct da8xx_rproc *drproc = rproc->priv;
u32 chipsig;

chipsig = readl(drproc->chipsig);
@@ -133,7 +133,7 @@ static irqreturn_t da8xx_rproc_callback(int irq, void *p)
static int da8xx_rproc_start(struct rproc *rproc)
{
struct device *dev = rproc->dev.parent;
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;
struct clk *dsp_clk = drproc->dsp_clk;
struct reset_control *dsp_reset = drproc->dsp_reset;
int ret;
@@ -183,7 +183,7 @@ static int da8xx_rproc_stop(struct rproc *rproc)
/* kick a virtqueue */
static void da8xx_rproc_kick(struct rproc *rproc, int vqid)
{
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;

/* Interrupt remote proc */
writel(SYSCFG_CHIPSIG2, drproc->chipsig);
@@ -360,7 +360,7 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
static int da8xx_rproc_remove(struct platform_device *pdev)
{
struct rproc *rproc = platform_get_drvdata(pdev);
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;
struct device *dev = &pdev->dev;

/*
diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 0861b76f185f..e1d93e63d7df 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -74,8 +74,8 @@ static void scp_wdt_handler(struct mtk_scp *scp, u32 scp_to_host)

static void scp_init_ipi_handler(void *data, unsigned int len, void *priv)
{
- struct mtk_scp *scp = (struct mtk_scp *)priv;
- struct scp_run *run = (struct scp_run *)data;
+ struct mtk_scp *scp = priv;
+ struct scp_run *run = data;

scp->run.signaled = run->signaled;
strscpy(scp->run.fw_ver, run->fw_ver, SCP_FW_VER_LEN);
@@ -498,7 +498,7 @@ static int scp_parse_fw(struct rproc *rproc, const struct firmware *fw)

static int scp_start(struct rproc *rproc)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;
struct device *dev = scp->dev;
struct scp_run *run = &scp->run;
int ret;
@@ -587,7 +587,7 @@ static void *mt8192_scp_da_to_va(struct mtk_scp *scp, u64 da, size_t len)

static void *scp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;

return scp->data->scp_da_to_va(scp, da, len);
}
@@ -627,7 +627,7 @@ static void mt8195_scp_stop(struct mtk_scp *scp)

static int scp_stop(struct rproc *rproc)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;
int ret;

ret = clk_prepare_enable(scp->clk);
@@ -829,7 +829,7 @@ static int scp_probe(struct platform_device *pdev)
if (!rproc)
return dev_err_probe(dev, -ENOMEM, "unable to allocate remoteproc\n");

- scp = (struct mtk_scp *)rproc->priv;
+ scp = rproc->priv;
scp->rproc = rproc;
scp->dev = dev;
scp->data = of_device_get_match_data(dev);
diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 08d8dad22ca7..d546ab9dc141 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -321,7 +321,7 @@ static int qcom_adsp_shutdown(struct qcom_adsp *adsp)

static int adsp_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

ret = qcom_mdt_load_no_init(adsp->dev, fw, rproc->firmware, 0,
@@ -379,7 +379,7 @@ static int adsp_map_carveout(struct rproc *rproc)

static int adsp_start(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;
unsigned int val;

@@ -469,7 +469,7 @@ static void qcom_adsp_pil_handover(struct qcom_q6v5 *q6v5)

static int adsp_stop(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int handover;
int ret;

@@ -492,7 +492,7 @@ static int adsp_stop(struct rproc *rproc)

static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int offset;

offset = da - adsp->mem_reloc;
@@ -696,7 +696,7 @@ static int adsp_probe(struct platform_device *pdev)
rproc->has_iommu = desc->has_iommu;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- adsp = (struct qcom_adsp *)rproc->priv;
+ adsp = rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
adsp->info_name = desc->sysmon_name;
diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
index ab053084f7a2..e7a67c8c16a0 100644
--- a/drivers/remoteproc/qcom_q6v5_mss.c
+++ b/drivers/remoteproc/qcom_q6v5_mss.c
@@ -1562,7 +1562,7 @@ static void qcom_q6v5_dump_segment(struct rproc *rproc,

static int q6v5_start(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int xfermemop_ret;
int ret;

@@ -1604,7 +1604,7 @@ static int q6v5_start(struct rproc *rproc)

static int q6v5_stop(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int ret;

ret = qcom_q6v5_request_stop(&qproc->q6v5, qproc->sysmon);
@@ -1662,7 +1662,7 @@ static int qcom_q6v5_register_dump_segments(struct rproc *rproc,

static unsigned long q6v5_panic(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;

return qcom_q6v5_panic(&qproc->q6v5);
}
@@ -1977,7 +1977,7 @@ static int q6v5_probe(struct platform_device *pdev)
rproc->auto_boot = false;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- qproc = (struct q6v5 *)rproc->priv;
+ qproc = rproc->priv;
qproc->dev = &pdev->dev;
qproc->rproc = rproc;
qproc->hexagon_mdt_image = "modem.mdt";
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index 0871108fb4dc..8eec88119fdd 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -186,7 +186,7 @@ static int adsp_shutdown_poll_decrypt(struct qcom_adsp *adsp)

static int adsp_unprepare(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;

/*
* adsp_load() did pass pas_metadata to the SCM driver for storing
@@ -203,7 +203,7 @@ static int adsp_unprepare(struct rproc *rproc)

static int adsp_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

/* Store firmware handle to be used in adsp_start() */
@@ -244,7 +244,7 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)

static int adsp_start(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

ret = qcom_q6v5_prepare(&adsp->q6v5);
@@ -360,7 +360,7 @@ static void qcom_pas_handover(struct qcom_q6v5 *q6v5)

static int adsp_stop(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int handover;
int ret;

@@ -390,7 +390,7 @@ static int adsp_stop(struct rproc *rproc)

static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int offset;

offset = da - adsp->mem_reloc;
@@ -405,7 +405,7 @@ static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iom

static unsigned long adsp_panic(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;

return qcom_q6v5_panic(&adsp->q6v5);
}
@@ -683,7 +683,7 @@ static int adsp_probe(struct platform_device *pdev)
rproc->auto_boot = desc->auto_boot;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- adsp = (struct qcom_adsp *)rproc->priv;
+ adsp = rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
adsp->minidump_id = desc->minidump_id;
diff --git a/drivers/remoteproc/qcom_wcnss.c b/drivers/remoteproc/qcom_wcnss.c
index 9d4d04fff8c6..0fc317265064 100644
--- a/drivers/remoteproc/qcom_wcnss.c
+++ b/drivers/remoteproc/qcom_wcnss.c
@@ -154,7 +154,7 @@ static const struct wcnss_data pronto_v3_data = {

static int wcnss_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret;

ret = qcom_mdt_load(wcnss->dev, fw, rproc->firmware, WCNSS_PAS_ID,
@@ -227,7 +227,7 @@ static void wcnss_configure_iris(struct qcom_wcnss *wcnss)

static int wcnss_start(struct rproc *rproc)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret, i;

mutex_lock(&wcnss->iris_lock);
@@ -293,7 +293,7 @@ static int wcnss_start(struct rproc *rproc)

static int wcnss_stop(struct rproc *rproc)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret;

if (wcnss->state) {
@@ -320,7 +320,7 @@ static int wcnss_stop(struct rproc *rproc)

static void *wcnss_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int offset;

offset = da - wcnss->mem_reloc;
@@ -566,7 +566,7 @@ static int wcnss_probe(struct platform_device *pdev)
}
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- wcnss = (struct qcom_wcnss *)rproc->priv;
+ wcnss = rproc->priv;
wcnss->dev = &pdev->dev;
wcnss->rproc = rproc;
platform_set_drvdata(pdev, wcnss);
diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
index 80072b6b6283..c48089e83026 100644
--- a/drivers/remoteproc/remoteproc_core.c
+++ b/drivers/remoteproc/remoteproc_core.c
@@ -2584,7 +2584,7 @@ EXPORT_SYMBOL(rproc_del);

static void devm_rproc_free(struct device *dev, void *res)
{
- rproc_free(*(struct rproc **)res);
+ rproc_free(res);
}

/**
diff --git a/drivers/remoteproc/st_remoteproc.c b/drivers/remoteproc/st_remoteproc.c
index a3268d95a50e..0e0a377ddb18 100644
--- a/drivers/remoteproc/st_remoteproc.c
+++ b/drivers/remoteproc/st_remoteproc.c
@@ -358,7 +358,7 @@ static int st_rproc_probe(struct platform_device *pdev)

rproc->has_iommu = false;
ddata = rproc->priv;
- ddata->config = (struct st_rproc_config *)match->data;
+ ddata->config = match->data;

platform_set_drvdata(pdev, rproc);

diff --git a/drivers/remoteproc/stm32_rproc.c b/drivers/remoteproc/stm32_rproc.c
index 7d782ed9e589..22c0241c2c97 100644
--- a/drivers/remoteproc/stm32_rproc.c
+++ b/drivers/remoteproc/stm32_rproc.c
@@ -629,7 +629,7 @@ stm32_rproc_get_loaded_rsc_table(struct rproc *rproc, size_t *table_sz)
* entire area by overwriting it with the initial values stored in rproc->clean_table.
*/
*table_sz = RSC_TBL_SIZE;
- return (struct resource_table *)ddata->rsc_va;
+ return ddata->rsc_va;
}

static const struct rproc_ops st_rproc_ops = {
diff --git a/drivers/remoteproc/ti_k3_dsp_remoteproc.c b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
index ec626a37fef6..4bee10acf6fa 100644
--- a/drivers/remoteproc/ti_k3_dsp_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
@@ -429,7 +429,7 @@ static struct resource_table *k3_dsp_get_loaded_rsc_table(struct rproc *rproc,
* the hard-coded value suffices to support the IPC-only mode.
*/
*rsc_table_sz = 256;
- return (struct resource_table *)kproc->rmem[0].cpu_addr;
+ return kproc->rmem[0].cpu_addr;
}

/*
diff --git a/drivers/remoteproc/ti_k3_r5_remoteproc.c b/drivers/remoteproc/ti_k3_r5_remoteproc.c
index 0481926c6975..115901d1ea04 100644
--- a/drivers/remoteproc/ti_k3_r5_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_r5_remoteproc.c
@@ -708,7 +708,7 @@ static struct resource_table *k3_r5_get_loaded_rsc_table(struct rproc *rproc,
* the hard-coded value suffices to support the IPC-only mode.
*/
*rsc_table_sz = 256;
- return (struct resource_table *)kproc->rmem[0].cpu_addr;
+ return kproc->rmem[0].cpu_addr;
}

/*
diff --git a/drivers/remoteproc/xlnx_r5_remoteproc.c b/drivers/remoteproc/xlnx_r5_remoteproc.c
index 2db57d394155..5dbc12bdc29e 100644
--- a/drivers/remoteproc/xlnx_r5_remoteproc.c
+++ b/drivers/remoteproc/xlnx_r5_remoteproc.c
@@ -242,7 +242,7 @@ static int add_mem_regions_carveout(struct rproc *rproc)
struct reserved_mem *rmem;
int i, num_mem_regions;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
num_mem_regions = r5_core->rmem_count;

for (i = 0; i < num_mem_regions; i++) {
@@ -363,7 +363,7 @@ static int add_tcm_carveout_split_mode(struct rproc *rproc)
size_t bank_size;
char *bank_name;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
dev = r5_core->dev;
num_banks = r5_core->tcm_bank_count;

@@ -432,7 +432,7 @@ static int add_tcm_carveout_lockstep_mode(struct rproc *rproc)
u32 pm_domain_id;
char *bank_name;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
dev = r5_core->dev;

/* Go through zynqmp banks for r5 node */
@@ -502,7 +502,7 @@ static int add_tcm_banks(struct rproc *rproc)
struct zynqmp_r5_core *r5_core;
struct device *dev;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
if (!r5_core)
return -EINVAL;

@@ -595,7 +595,7 @@ static int zynqmp_r5_rproc_unprepare(struct rproc *rproc)
u32 pm_domain_id;
int i;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;

for (i = 0; i < r5_core->tcm_bank_count; i++) {
pm_domain_id = r5_core->tcm_banks[i]->pm_domain_id;
@@ -649,7 +649,7 @@ static struct zynqmp_r5_core *zynqmp_r5_add_rproc_core(struct device *cdev)
}

r5_rproc->auto_boot = false;
- r5_core = (struct zynqmp_r5_core *)r5_rproc->priv;
+ r5_core = r5_rproc->priv;
r5_core->dev = cdev;
r5_core->np = dev_of_node(cdev);
if (!r5_core->np) {
@@ -978,12 +978,12 @@ static int zynqmp_r5_cluster_init(struct zynqmp_r5_cluster *cluster)

static void zynqmp_r5_cluster_exit(void *data)
{
- struct platform_device *pdev = (struct platform_device *)data;
+ struct platform_device *pdev = data;
struct zynqmp_r5_cluster *cluster;
struct zynqmp_r5_core *r5_core;
int i;

- cluster = (struct zynqmp_r5_cluster *)platform_get_drvdata(pdev);
+ cluster = platform_get_drvdata(pdev);
if (!cluster)
return;

--
2.11.0


2023-03-20 11:52:52

by kernel test robot

[permalink] [raw]
Subject: Re: [PATCH v2] remoteproc: remove unnecessary (void*) conversions

Hi Yu,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on v6.3-rc3]
[also build test WARNING on linus/master]
[cannot apply to remoteproc/rproc-next next-20230320]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Yu-Zhe/remoteproc-remove-unnecessary-void-conversions/20230320-141403
patch link: https://lore.kernel.org/r/20230320061157.29660-1-yuzhe%40nfschina.com
patch subject: [PATCH v2] remoteproc: remove unnecessary (void*) conversions
config: arm-allmodconfig (https://download.01.org/0day-ci/archive/20230320/[email protected]/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/38335303eda6c4de037cd00e20c9065a76f82291
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Yu-Zhe/remoteproc-remove-unnecessary-void-conversions/20230320-141403
git checkout 38335303eda6c4de037cd00e20c9065a76f82291
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/remoteproc/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>
| Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All warnings (new ones prefixed by >>):

drivers/remoteproc/st_remoteproc.c: In function 'st_rproc_probe':
>> drivers/remoteproc/st_remoteproc.c:361:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
361 | ddata->config = match->data;
| ^


vim +/const +361 drivers/remoteproc/st_remoteproc.c

337
338 static int st_rproc_probe(struct platform_device *pdev)
339 {
340 struct device *dev = &pdev->dev;
341 const struct of_device_id *match;
342 struct st_rproc *ddata;
343 struct device_node *np = dev->of_node;
344 struct rproc *rproc;
345 struct mbox_chan *chan;
346 int enabled;
347 int ret, i;
348
349 match = of_match_device(st_rproc_match, dev);
350 if (!match || !match->data) {
351 dev_err(dev, "No device match found\n");
352 return -ENODEV;
353 }
354
355 rproc = rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata));
356 if (!rproc)
357 return -ENOMEM;
358
359 rproc->has_iommu = false;
360 ddata = rproc->priv;
> 361 ddata->config = match->data;
362
363 platform_set_drvdata(pdev, rproc);
364
365 ret = st_rproc_parse_dt(pdev);
366 if (ret)
367 goto free_rproc;
368
369 enabled = st_rproc_state(pdev);
370 if (enabled < 0) {
371 ret = enabled;
372 goto free_clk;
373 }
374
375 if (enabled) {
376 atomic_inc(&rproc->power);
377 rproc->state = RPROC_RUNNING;
378 } else {
379 clk_set_rate(ddata->clk, ddata->clk_rate);
380 }
381
382 if (of_get_property(np, "mbox-names", NULL)) {
383 ddata->mbox_client_vq0.dev = dev;
384 ddata->mbox_client_vq0.tx_done = NULL;
385 ddata->mbox_client_vq0.tx_block = false;
386 ddata->mbox_client_vq0.knows_txdone = false;
387 ddata->mbox_client_vq0.rx_callback = st_rproc_mbox_callback_vq0;
388
389 ddata->mbox_client_vq1.dev = dev;
390 ddata->mbox_client_vq1.tx_done = NULL;
391 ddata->mbox_client_vq1.tx_block = false;
392 ddata->mbox_client_vq1.knows_txdone = false;
393 ddata->mbox_client_vq1.rx_callback = st_rproc_mbox_callback_vq1;
394
395 /*
396 * To control a co-processor without IPC mechanism.
397 * This driver can be used without mbox and rpmsg.
398 */
399 chan = mbox_request_channel_byname(&ddata->mbox_client_vq0, "vq0_rx");
400 if (IS_ERR(chan)) {
401 dev_err(&rproc->dev, "failed to request mbox chan 0\n");
402 ret = PTR_ERR(chan);
403 goto free_clk;
404 }
405 ddata->mbox_chan[ST_RPROC_VQ0 * MBOX_MAX + MBOX_RX] = chan;
406
407 chan = mbox_request_channel_byname(&ddata->mbox_client_vq0, "vq0_tx");
408 if (IS_ERR(chan)) {
409 dev_err(&rproc->dev, "failed to request mbox chan 0\n");
410 ret = PTR_ERR(chan);
411 goto free_mbox;
412 }
413 ddata->mbox_chan[ST_RPROC_VQ0 * MBOX_MAX + MBOX_TX] = chan;
414
415 chan = mbox_request_channel_byname(&ddata->mbox_client_vq1, "vq1_rx");
416 if (IS_ERR(chan)) {
417 dev_err(&rproc->dev, "failed to request mbox chan 1\n");
418 ret = PTR_ERR(chan);
419 goto free_mbox;
420 }
421 ddata->mbox_chan[ST_RPROC_VQ1 * MBOX_MAX + MBOX_RX] = chan;
422
423 chan = mbox_request_channel_byname(&ddata->mbox_client_vq1, "vq1_tx");
424 if (IS_ERR(chan)) {
425 dev_err(&rproc->dev, "failed to request mbox chan 1\n");
426 ret = PTR_ERR(chan);
427 goto free_mbox;
428 }
429 ddata->mbox_chan[ST_RPROC_VQ1 * MBOX_MAX + MBOX_TX] = chan;
430 }
431
432 ret = rproc_add(rproc);
433 if (ret)
434 goto free_mbox;
435
436 return 0;
437
438 free_mbox:
439 for (i = 0; i < ST_RPROC_MAX_VRING * MBOX_MAX; i++)
440 mbox_free_channel(ddata->mbox_chan[i]);
441 free_clk:
442 clk_unprepare(ddata->clk);
443 free_rproc:
444 rproc_free(rproc);
445 return ret;
446 }
447

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

2023-03-26 11:22:14

by kernel test robot

[permalink] [raw]
Subject: Re: [PATCH v2] remoteproc: remove unnecessary (void*) conversions

Hi Yu,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on v6.3-rc3]
[also build test WARNING on linus/master]
[cannot apply to remoteproc/rproc-next next-20230324]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Yu-Zhe/remoteproc-remove-unnecessary-void-conversions/20230320-141403
patch link: https://lore.kernel.org/r/20230320061157.29660-1-yuzhe%40nfschina.com
patch subject: [PATCH v2] remoteproc: remove unnecessary (void*) conversions
config: arm-randconfig-s053-20230326 (https://download.01.org/0day-ci/archive/20230326/[email protected]/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-39-gce1a6720-dirty
# https://github.com/intel-lab-lkp/linux/commit/38335303eda6c4de037cd00e20c9065a76f82291
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Yu-Zhe/remoteproc-remove-unnecessary-void-conversions/20230320-141403
git checkout 38335303eda6c4de037cd00e20c9065a76f82291
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm SHELL=/bin/bash drivers/remoteproc/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>
| Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/

sparse warnings: (new ones prefixed by >>)
drivers/remoteproc/stm32_rproc.c:122:12: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *va @@ got void [noderef] __iomem * @@
drivers/remoteproc/stm32_rproc.c:122:12: sparse: expected void *va
drivers/remoteproc/stm32_rproc.c:122:12: sparse: got void [noderef] __iomem *
drivers/remoteproc/stm32_rproc.c:139:20: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *io_addr @@ got void *va @@
drivers/remoteproc/stm32_rproc.c:139:20: sparse: expected void volatile [noderef] __iomem *io_addr
drivers/remoteproc/stm32_rproc.c:139:20: sparse: got void *va
>> drivers/remoteproc/stm32_rproc.c:632:21: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected struct resource_table * @@ got void [noderef] __iomem *rsc_va @@
drivers/remoteproc/stm32_rproc.c:632:21: sparse: expected struct resource_table *
drivers/remoteproc/stm32_rproc.c:632:21: sparse: got void [noderef] __iomem *rsc_va

vim +632 drivers/remoteproc/stm32_rproc.c

588
589 static struct resource_table *
590 stm32_rproc_get_loaded_rsc_table(struct rproc *rproc, size_t *table_sz)
591 {
592 struct stm32_rproc *ddata = rproc->priv;
593 struct device *dev = rproc->dev.parent;
594 phys_addr_t rsc_pa;
595 u32 rsc_da;
596 int err;
597
598 /* The resource table has already been mapped, nothing to do */
599 if (ddata->rsc_va)
600 goto done;
601
602 err = regmap_read(ddata->rsctbl.map, ddata->rsctbl.reg, &rsc_da);
603 if (err) {
604 dev_err(dev, "failed to read rsc tbl addr\n");
605 return ERR_PTR(-EINVAL);
606 }
607
608 if (!rsc_da)
609 /* no rsc table */
610 return ERR_PTR(-ENOENT);
611
612 err = stm32_rproc_da_to_pa(rproc, rsc_da, &rsc_pa);
613 if (err)
614 return ERR_PTR(err);
615
616 ddata->rsc_va = devm_ioremap_wc(dev, rsc_pa, RSC_TBL_SIZE);
617 if (IS_ERR_OR_NULL(ddata->rsc_va)) {
618 dev_err(dev, "Unable to map memory region: %pa+%zx\n",
619 &rsc_pa, RSC_TBL_SIZE);
620 ddata->rsc_va = NULL;
621 return ERR_PTR(-ENOMEM);
622 }
623
624 done:
625 /*
626 * Assuming the resource table fits in 1kB is fair.
627 * Notice for the detach, that this 1 kB memory area has to be reserved in the coprocessor
628 * firmware for the resource table. On detach, the remoteproc core re-initializes this
629 * entire area by overwriting it with the initial values stored in rproc->clean_table.
630 */
631 *table_sz = RSC_TBL_SIZE;
> 632 return ddata->rsc_va;
633 }
634

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

2023-03-27 14:51:01

by kernel test robot

[permalink] [raw]
Subject: Re: [PATCH v2] remoteproc: remove unnecessary (void*) conversions

Hi Yu,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on v6.3-rc3]
[also build test ERROR on linus/master]
[cannot apply to remoteproc/rproc-next next-20230327]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Yu-Zhe/remoteproc-remove-unnecessary-void-conversions/20230320-141403
patch link: https://lore.kernel.org/r/20230320061157.29660-1-yuzhe%40nfschina.com
patch subject: [PATCH v2] remoteproc: remove unnecessary (void*) conversions
config: arm-defconfig (https://download.01.org/0day-ci/archive/20230327/[email protected]/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project 67409911353323ca5edf2049ef0df54132fa1ca7)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/intel-lab-lkp/linux/commit/38335303eda6c4de037cd00e20c9065a76f82291
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Yu-Zhe/remoteproc-remove-unnecessary-void-conversions/20230320-141403
git checkout 38335303eda6c4de037cd00e20c9065a76f82291
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/remoteproc/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>
| Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

>> drivers/remoteproc/st_remoteproc.c:361:16: error: assigning to 'struct st_rproc_config *' from 'const void *const' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
ddata->config = match->data;
^ ~~~~~~~~~~~
1 error generated.


vim +361 drivers/remoteproc/st_remoteproc.c

337
338 static int st_rproc_probe(struct platform_device *pdev)
339 {
340 struct device *dev = &pdev->dev;
341 const struct of_device_id *match;
342 struct st_rproc *ddata;
343 struct device_node *np = dev->of_node;
344 struct rproc *rproc;
345 struct mbox_chan *chan;
346 int enabled;
347 int ret, i;
348
349 match = of_match_device(st_rproc_match, dev);
350 if (!match || !match->data) {
351 dev_err(dev, "No device match found\n");
352 return -ENODEV;
353 }
354
355 rproc = rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata));
356 if (!rproc)
357 return -ENOMEM;
358
359 rproc->has_iommu = false;
360 ddata = rproc->priv;
> 361 ddata->config = match->data;
362
363 platform_set_drvdata(pdev, rproc);
364
365 ret = st_rproc_parse_dt(pdev);
366 if (ret)
367 goto free_rproc;
368
369 enabled = st_rproc_state(pdev);
370 if (enabled < 0) {
371 ret = enabled;
372 goto free_clk;
373 }
374
375 if (enabled) {
376 atomic_inc(&rproc->power);
377 rproc->state = RPROC_RUNNING;
378 } else {
379 clk_set_rate(ddata->clk, ddata->clk_rate);
380 }
381
382 if (of_get_property(np, "mbox-names", NULL)) {
383 ddata->mbox_client_vq0.dev = dev;
384 ddata->mbox_client_vq0.tx_done = NULL;
385 ddata->mbox_client_vq0.tx_block = false;
386 ddata->mbox_client_vq0.knows_txdone = false;
387 ddata->mbox_client_vq0.rx_callback = st_rproc_mbox_callback_vq0;
388
389 ddata->mbox_client_vq1.dev = dev;
390 ddata->mbox_client_vq1.tx_done = NULL;
391 ddata->mbox_client_vq1.tx_block = false;
392 ddata->mbox_client_vq1.knows_txdone = false;
393 ddata->mbox_client_vq1.rx_callback = st_rproc_mbox_callback_vq1;
394
395 /*
396 * To control a co-processor without IPC mechanism.
397 * This driver can be used without mbox and rpmsg.
398 */
399 chan = mbox_request_channel_byname(&ddata->mbox_client_vq0, "vq0_rx");
400 if (IS_ERR(chan)) {
401 dev_err(&rproc->dev, "failed to request mbox chan 0\n");
402 ret = PTR_ERR(chan);
403 goto free_clk;
404 }
405 ddata->mbox_chan[ST_RPROC_VQ0 * MBOX_MAX + MBOX_RX] = chan;
406
407 chan = mbox_request_channel_byname(&ddata->mbox_client_vq0, "vq0_tx");
408 if (IS_ERR(chan)) {
409 dev_err(&rproc->dev, "failed to request mbox chan 0\n");
410 ret = PTR_ERR(chan);
411 goto free_mbox;
412 }
413 ddata->mbox_chan[ST_RPROC_VQ0 * MBOX_MAX + MBOX_TX] = chan;
414
415 chan = mbox_request_channel_byname(&ddata->mbox_client_vq1, "vq1_rx");
416 if (IS_ERR(chan)) {
417 dev_err(&rproc->dev, "failed to request mbox chan 1\n");
418 ret = PTR_ERR(chan);
419 goto free_mbox;
420 }
421 ddata->mbox_chan[ST_RPROC_VQ1 * MBOX_MAX + MBOX_RX] = chan;
422
423 chan = mbox_request_channel_byname(&ddata->mbox_client_vq1, "vq1_tx");
424 if (IS_ERR(chan)) {
425 dev_err(&rproc->dev, "failed to request mbox chan 1\n");
426 ret = PTR_ERR(chan);
427 goto free_mbox;
428 }
429 ddata->mbox_chan[ST_RPROC_VQ1 * MBOX_MAX + MBOX_TX] = chan;
430 }
431
432 ret = rproc_add(rproc);
433 if (ret)
434 goto free_mbox;
435
436 return 0;
437
438 free_mbox:
439 for (i = 0; i < ST_RPROC_MAX_VRING * MBOX_MAX; i++)
440 mbox_free_channel(ddata->mbox_chan[i]);
441 free_clk:
442 clk_unprepare(ddata->clk);
443 free_rproc:
444 rproc_free(rproc);
445 return ret;
446 }
447

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

2023-03-28 02:01:15

by Yu Zhe

[permalink] [raw]
Subject: [PATCH v3] remoteproc: remove unnecessary (void*) conversions

Pointer variables of void * type do not require type cast.

Reported-by: kernel test robot <[email protected]>
Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/
Signed-off-by: Yu Zhe <[email protected]>
---
drivers/remoteproc/da8xx_remoteproc.c | 12 ++++++------
drivers/remoteproc/mtk_scp.c | 12 ++++++------
drivers/remoteproc/qcom_q6v5_adsp.c | 10 +++++-----
drivers/remoteproc/qcom_q6v5_mss.c | 8 ++++----
drivers/remoteproc/qcom_q6v5_pas.c | 14 +++++++-------
drivers/remoteproc/qcom_wcnss.c | 10 +++++-----
drivers/remoteproc/remoteproc_core.c | 2 +-
drivers/remoteproc/stm32_rproc.c | 2 +-
drivers/remoteproc/ti_k3_dsp_remoteproc.c | 2 +-
drivers/remoteproc/ti_k3_r5_remoteproc.c | 2 +-
drivers/remoteproc/xlnx_r5_remoteproc.c | 16 ++++++++--------
11 files changed, 45 insertions(+), 45 deletions(-)

diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
index 98e0be9476a4..768217f0f5cd 100644
--- a/drivers/remoteproc/da8xx_remoteproc.c
+++ b/drivers/remoteproc/da8xx_remoteproc.c
@@ -84,7 +84,7 @@ struct da8xx_rproc {
*/
static irqreturn_t handle_event(int irq, void *p)
{
- struct rproc *rproc = (struct rproc *)p;
+ struct rproc *rproc = p;

/* Process incoming buffers on all our vrings */
rproc_vq_interrupt(rproc, 0);
@@ -104,8 +104,8 @@ static irqreturn_t handle_event(int irq, void *p)
*/
static irqreturn_t da8xx_rproc_callback(int irq, void *p)
{
- struct rproc *rproc = (struct rproc *)p;
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct rproc *rproc = p;
+ struct da8xx_rproc *drproc = rproc->priv;
u32 chipsig;

chipsig = readl(drproc->chipsig);
@@ -133,7 +133,7 @@ static irqreturn_t da8xx_rproc_callback(int irq, void *p)
static int da8xx_rproc_start(struct rproc *rproc)
{
struct device *dev = rproc->dev.parent;
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;
struct clk *dsp_clk = drproc->dsp_clk;
struct reset_control *dsp_reset = drproc->dsp_reset;
int ret;
@@ -183,7 +183,7 @@ static int da8xx_rproc_stop(struct rproc *rproc)
/* kick a virtqueue */
static void da8xx_rproc_kick(struct rproc *rproc, int vqid)
{
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;

/* Interrupt remote proc */
writel(SYSCFG_CHIPSIG2, drproc->chipsig);
@@ -360,7 +360,7 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
static int da8xx_rproc_remove(struct platform_device *pdev)
{
struct rproc *rproc = platform_get_drvdata(pdev);
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;
struct device *dev = &pdev->dev;

/*
diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 0861b76f185f..e1d93e63d7df 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -74,8 +74,8 @@ static void scp_wdt_handler(struct mtk_scp *scp, u32 scp_to_host)

static void scp_init_ipi_handler(void *data, unsigned int len, void *priv)
{
- struct mtk_scp *scp = (struct mtk_scp *)priv;
- struct scp_run *run = (struct scp_run *)data;
+ struct mtk_scp *scp = priv;
+ struct scp_run *run = data;

scp->run.signaled = run->signaled;
strscpy(scp->run.fw_ver, run->fw_ver, SCP_FW_VER_LEN);
@@ -498,7 +498,7 @@ static int scp_parse_fw(struct rproc *rproc, const struct firmware *fw)

static int scp_start(struct rproc *rproc)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;
struct device *dev = scp->dev;
struct scp_run *run = &scp->run;
int ret;
@@ -587,7 +587,7 @@ static void *mt8192_scp_da_to_va(struct mtk_scp *scp, u64 da, size_t len)

static void *scp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;

return scp->data->scp_da_to_va(scp, da, len);
}
@@ -627,7 +627,7 @@ static void mt8195_scp_stop(struct mtk_scp *scp)

static int scp_stop(struct rproc *rproc)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;
int ret;

ret = clk_prepare_enable(scp->clk);
@@ -829,7 +829,7 @@ static int scp_probe(struct platform_device *pdev)
if (!rproc)
return dev_err_probe(dev, -ENOMEM, "unable to allocate remoteproc\n");

- scp = (struct mtk_scp *)rproc->priv;
+ scp = rproc->priv;
scp->rproc = rproc;
scp->dev = dev;
scp->data = of_device_get_match_data(dev);
diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 08d8dad22ca7..d546ab9dc141 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -321,7 +321,7 @@ static int qcom_adsp_shutdown(struct qcom_adsp *adsp)

static int adsp_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

ret = qcom_mdt_load_no_init(adsp->dev, fw, rproc->firmware, 0,
@@ -379,7 +379,7 @@ static int adsp_map_carveout(struct rproc *rproc)

static int adsp_start(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;
unsigned int val;

@@ -469,7 +469,7 @@ static void qcom_adsp_pil_handover(struct qcom_q6v5 *q6v5)

static int adsp_stop(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int handover;
int ret;

@@ -492,7 +492,7 @@ static int adsp_stop(struct rproc *rproc)

static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int offset;

offset = da - adsp->mem_reloc;
@@ -696,7 +696,7 @@ static int adsp_probe(struct platform_device *pdev)
rproc->has_iommu = desc->has_iommu;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- adsp = (struct qcom_adsp *)rproc->priv;
+ adsp = rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
adsp->info_name = desc->sysmon_name;
diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
index ab053084f7a2..e7a67c8c16a0 100644
--- a/drivers/remoteproc/qcom_q6v5_mss.c
+++ b/drivers/remoteproc/qcom_q6v5_mss.c
@@ -1562,7 +1562,7 @@ static void qcom_q6v5_dump_segment(struct rproc *rproc,

static int q6v5_start(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int xfermemop_ret;
int ret;

@@ -1604,7 +1604,7 @@ static int q6v5_start(struct rproc *rproc)

static int q6v5_stop(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int ret;

ret = qcom_q6v5_request_stop(&qproc->q6v5, qproc->sysmon);
@@ -1662,7 +1662,7 @@ static int qcom_q6v5_register_dump_segments(struct rproc *rproc,

static unsigned long q6v5_panic(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;

return qcom_q6v5_panic(&qproc->q6v5);
}
@@ -1977,7 +1977,7 @@ static int q6v5_probe(struct platform_device *pdev)
rproc->auto_boot = false;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- qproc = (struct q6v5 *)rproc->priv;
+ qproc = rproc->priv;
qproc->dev = &pdev->dev;
qproc->rproc = rproc;
qproc->hexagon_mdt_image = "modem.mdt";
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index 0871108fb4dc..8eec88119fdd 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -186,7 +186,7 @@ static int adsp_shutdown_poll_decrypt(struct qcom_adsp *adsp)

static int adsp_unprepare(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;

/*
* adsp_load() did pass pas_metadata to the SCM driver for storing
@@ -203,7 +203,7 @@ static int adsp_unprepare(struct rproc *rproc)

static int adsp_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

/* Store firmware handle to be used in adsp_start() */
@@ -244,7 +244,7 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)

static int adsp_start(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

ret = qcom_q6v5_prepare(&adsp->q6v5);
@@ -360,7 +360,7 @@ static void qcom_pas_handover(struct qcom_q6v5 *q6v5)

static int adsp_stop(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int handover;
int ret;

@@ -390,7 +390,7 @@ static int adsp_stop(struct rproc *rproc)

static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int offset;

offset = da - adsp->mem_reloc;
@@ -405,7 +405,7 @@ static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iom

static unsigned long adsp_panic(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;

return qcom_q6v5_panic(&adsp->q6v5);
}
@@ -683,7 +683,7 @@ static int adsp_probe(struct platform_device *pdev)
rproc->auto_boot = desc->auto_boot;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- adsp = (struct qcom_adsp *)rproc->priv;
+ adsp = rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
adsp->minidump_id = desc->minidump_id;
diff --git a/drivers/remoteproc/qcom_wcnss.c b/drivers/remoteproc/qcom_wcnss.c
index 9d4d04fff8c6..0fc317265064 100644
--- a/drivers/remoteproc/qcom_wcnss.c
+++ b/drivers/remoteproc/qcom_wcnss.c
@@ -154,7 +154,7 @@ static const struct wcnss_data pronto_v3_data = {

static int wcnss_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret;

ret = qcom_mdt_load(wcnss->dev, fw, rproc->firmware, WCNSS_PAS_ID,
@@ -227,7 +227,7 @@ static void wcnss_configure_iris(struct qcom_wcnss *wcnss)

static int wcnss_start(struct rproc *rproc)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret, i;

mutex_lock(&wcnss->iris_lock);
@@ -293,7 +293,7 @@ static int wcnss_start(struct rproc *rproc)

static int wcnss_stop(struct rproc *rproc)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret;

if (wcnss->state) {
@@ -320,7 +320,7 @@ static int wcnss_stop(struct rproc *rproc)

static void *wcnss_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int offset;

offset = da - wcnss->mem_reloc;
@@ -566,7 +566,7 @@ static int wcnss_probe(struct platform_device *pdev)
}
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- wcnss = (struct qcom_wcnss *)rproc->priv;
+ wcnss = rproc->priv;
wcnss->dev = &pdev->dev;
wcnss->rproc = rproc;
platform_set_drvdata(pdev, wcnss);
diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
index 80072b6b6283..c48089e83026 100644
--- a/drivers/remoteproc/remoteproc_core.c
+++ b/drivers/remoteproc/remoteproc_core.c
@@ -2584,7 +2584,7 @@ EXPORT_SYMBOL(rproc_del);

static void devm_rproc_free(struct device *dev, void *res)
{
- rproc_free(*(struct rproc **)res);
+ rproc_free(res);
}

/**
diff --git a/drivers/remoteproc/stm32_rproc.c b/drivers/remoteproc/stm32_rproc.c
index 7d782ed9e589..22c0241c2c97 100644
--- a/drivers/remoteproc/stm32_rproc.c
+++ b/drivers/remoteproc/stm32_rproc.c
@@ -629,7 +629,7 @@ stm32_rproc_get_loaded_rsc_table(struct rproc *rproc, size_t *table_sz)
* entire area by overwriting it with the initial values stored in rproc->clean_table.
*/
*table_sz = RSC_TBL_SIZE;
- return (struct resource_table *)ddata->rsc_va;
+ return ddata->rsc_va;
}

static const struct rproc_ops st_rproc_ops = {
diff --git a/drivers/remoteproc/ti_k3_dsp_remoteproc.c b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
index ec626a37fef6..4bee10acf6fa 100644
--- a/drivers/remoteproc/ti_k3_dsp_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_dsp_remoteproc.c
@@ -429,7 +429,7 @@ static struct resource_table *k3_dsp_get_loaded_rsc_table(struct rproc *rproc,
* the hard-coded value suffices to support the IPC-only mode.
*/
*rsc_table_sz = 256;
- return (struct resource_table *)kproc->rmem[0].cpu_addr;
+ return kproc->rmem[0].cpu_addr;
}

/*
diff --git a/drivers/remoteproc/ti_k3_r5_remoteproc.c b/drivers/remoteproc/ti_k3_r5_remoteproc.c
index 0481926c6975..115901d1ea04 100644
--- a/drivers/remoteproc/ti_k3_r5_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_r5_remoteproc.c
@@ -708,7 +708,7 @@ static struct resource_table *k3_r5_get_loaded_rsc_table(struct rproc *rproc,
* the hard-coded value suffices to support the IPC-only mode.
*/
*rsc_table_sz = 256;
- return (struct resource_table *)kproc->rmem[0].cpu_addr;
+ return kproc->rmem[0].cpu_addr;
}

/*
diff --git a/drivers/remoteproc/xlnx_r5_remoteproc.c b/drivers/remoteproc/xlnx_r5_remoteproc.c
index 2db57d394155..5dbc12bdc29e 100644
--- a/drivers/remoteproc/xlnx_r5_remoteproc.c
+++ b/drivers/remoteproc/xlnx_r5_remoteproc.c
@@ -242,7 +242,7 @@ static int add_mem_regions_carveout(struct rproc *rproc)
struct reserved_mem *rmem;
int i, num_mem_regions;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
num_mem_regions = r5_core->rmem_count;

for (i = 0; i < num_mem_regions; i++) {
@@ -363,7 +363,7 @@ static int add_tcm_carveout_split_mode(struct rproc *rproc)
size_t bank_size;
char *bank_name;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
dev = r5_core->dev;
num_banks = r5_core->tcm_bank_count;

@@ -432,7 +432,7 @@ static int add_tcm_carveout_lockstep_mode(struct rproc *rproc)
u32 pm_domain_id;
char *bank_name;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
dev = r5_core->dev;

/* Go through zynqmp banks for r5 node */
@@ -502,7 +502,7 @@ static int add_tcm_banks(struct rproc *rproc)
struct zynqmp_r5_core *r5_core;
struct device *dev;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
if (!r5_core)
return -EINVAL;

@@ -595,7 +595,7 @@ static int zynqmp_r5_rproc_unprepare(struct rproc *rproc)
u32 pm_domain_id;
int i;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;

for (i = 0; i < r5_core->tcm_bank_count; i++) {
pm_domain_id = r5_core->tcm_banks[i]->pm_domain_id;
@@ -649,7 +649,7 @@ static struct zynqmp_r5_core *zynqmp_r5_add_rproc_core(struct device *cdev)
}

r5_rproc->auto_boot = false;
- r5_core = (struct zynqmp_r5_core *)r5_rproc->priv;
+ r5_core = r5_rproc->priv;
r5_core->dev = cdev;
r5_core->np = dev_of_node(cdev);
if (!r5_core->np) {
@@ -978,12 +978,12 @@ static int zynqmp_r5_cluster_init(struct zynqmp_r5_cluster *cluster)

static void zynqmp_r5_cluster_exit(void *data)
{
- struct platform_device *pdev = (struct platform_device *)data;
+ struct platform_device *pdev = data;
struct zynqmp_r5_cluster *cluster;
struct zynqmp_r5_core *r5_core;
int i;

- cluster = (struct zynqmp_r5_cluster *)platform_get_drvdata(pdev);
+ cluster = platform_get_drvdata(pdev);
if (!cluster)
return;

--
2.11.0

2023-03-28 02:51:55

by Yu Zhe

[permalink] [raw]
Subject: [PATCH v4] remoteproc: remove unnecessary (void*) conversions

Pointer variables of void * type do not require type cast.

Reported-by: kernel test robot <[email protected]>
Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/
Signed-off-by: Yu Zhe <[email protected]>
---

v3->v4:
Drop wrong modifies
---
drivers/remoteproc/da8xx_remoteproc.c | 12 ++++++------
drivers/remoteproc/mtk_scp.c | 12 ++++++------
drivers/remoteproc/qcom_q6v5_adsp.c | 10 +++++-----
drivers/remoteproc/qcom_q6v5_mss.c | 8 ++++----
drivers/remoteproc/qcom_q6v5_pas.c | 14 +++++++-------
drivers/remoteproc/qcom_wcnss.c | 10 +++++-----
drivers/remoteproc/xlnx_r5_remoteproc.c | 16 ++++++++--------
7 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
index 98e0be9476a4..768217f0f5cd 100644
--- a/drivers/remoteproc/da8xx_remoteproc.c
+++ b/drivers/remoteproc/da8xx_remoteproc.c
@@ -84,7 +84,7 @@ struct da8xx_rproc {
*/
static irqreturn_t handle_event(int irq, void *p)
{
- struct rproc *rproc = (struct rproc *)p;
+ struct rproc *rproc = p;

/* Process incoming buffers on all our vrings */
rproc_vq_interrupt(rproc, 0);
@@ -104,8 +104,8 @@ static irqreturn_t handle_event(int irq, void *p)
*/
static irqreturn_t da8xx_rproc_callback(int irq, void *p)
{
- struct rproc *rproc = (struct rproc *)p;
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct rproc *rproc = p;
+ struct da8xx_rproc *drproc = rproc->priv;
u32 chipsig;

chipsig = readl(drproc->chipsig);
@@ -133,7 +133,7 @@ static irqreturn_t da8xx_rproc_callback(int irq, void *p)
static int da8xx_rproc_start(struct rproc *rproc)
{
struct device *dev = rproc->dev.parent;
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;
struct clk *dsp_clk = drproc->dsp_clk;
struct reset_control *dsp_reset = drproc->dsp_reset;
int ret;
@@ -183,7 +183,7 @@ static int da8xx_rproc_stop(struct rproc *rproc)
/* kick a virtqueue */
static void da8xx_rproc_kick(struct rproc *rproc, int vqid)
{
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;

/* Interrupt remote proc */
writel(SYSCFG_CHIPSIG2, drproc->chipsig);
@@ -360,7 +360,7 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
static int da8xx_rproc_remove(struct platform_device *pdev)
{
struct rproc *rproc = platform_get_drvdata(pdev);
- struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
+ struct da8xx_rproc *drproc = rproc->priv;
struct device *dev = &pdev->dev;

/*
diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 0861b76f185f..e1d93e63d7df 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -74,8 +74,8 @@ static void scp_wdt_handler(struct mtk_scp *scp, u32 scp_to_host)

static void scp_init_ipi_handler(void *data, unsigned int len, void *priv)
{
- struct mtk_scp *scp = (struct mtk_scp *)priv;
- struct scp_run *run = (struct scp_run *)data;
+ struct mtk_scp *scp = priv;
+ struct scp_run *run = data;

scp->run.signaled = run->signaled;
strscpy(scp->run.fw_ver, run->fw_ver, SCP_FW_VER_LEN);
@@ -498,7 +498,7 @@ static int scp_parse_fw(struct rproc *rproc, const struct firmware *fw)

static int scp_start(struct rproc *rproc)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;
struct device *dev = scp->dev;
struct scp_run *run = &scp->run;
int ret;
@@ -587,7 +587,7 @@ static void *mt8192_scp_da_to_va(struct mtk_scp *scp, u64 da, size_t len)

static void *scp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;

return scp->data->scp_da_to_va(scp, da, len);
}
@@ -627,7 +627,7 @@ static void mt8195_scp_stop(struct mtk_scp *scp)

static int scp_stop(struct rproc *rproc)
{
- struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
+ struct mtk_scp *scp = rproc->priv;
int ret;

ret = clk_prepare_enable(scp->clk);
@@ -829,7 +829,7 @@ static int scp_probe(struct platform_device *pdev)
if (!rproc)
return dev_err_probe(dev, -ENOMEM, "unable to allocate remoteproc\n");

- scp = (struct mtk_scp *)rproc->priv;
+ scp = rproc->priv;
scp->rproc = rproc;
scp->dev = dev;
scp->data = of_device_get_match_data(dev);
diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 08d8dad22ca7..d546ab9dc141 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -321,7 +321,7 @@ static int qcom_adsp_shutdown(struct qcom_adsp *adsp)

static int adsp_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

ret = qcom_mdt_load_no_init(adsp->dev, fw, rproc->firmware, 0,
@@ -379,7 +379,7 @@ static int adsp_map_carveout(struct rproc *rproc)

static int adsp_start(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;
unsigned int val;

@@ -469,7 +469,7 @@ static void qcom_adsp_pil_handover(struct qcom_q6v5 *q6v5)

static int adsp_stop(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int handover;
int ret;

@@ -492,7 +492,7 @@ static int adsp_stop(struct rproc *rproc)

static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int offset;

offset = da - adsp->mem_reloc;
@@ -696,7 +696,7 @@ static int adsp_probe(struct platform_device *pdev)
rproc->has_iommu = desc->has_iommu;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- adsp = (struct qcom_adsp *)rproc->priv;
+ adsp = rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
adsp->info_name = desc->sysmon_name;
diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
index ab053084f7a2..e7a67c8c16a0 100644
--- a/drivers/remoteproc/qcom_q6v5_mss.c
+++ b/drivers/remoteproc/qcom_q6v5_mss.c
@@ -1562,7 +1562,7 @@ static void qcom_q6v5_dump_segment(struct rproc *rproc,

static int q6v5_start(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int xfermemop_ret;
int ret;

@@ -1604,7 +1604,7 @@ static int q6v5_start(struct rproc *rproc)

static int q6v5_stop(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;
int ret;

ret = qcom_q6v5_request_stop(&qproc->q6v5, qproc->sysmon);
@@ -1662,7 +1662,7 @@ static int qcom_q6v5_register_dump_segments(struct rproc *rproc,

static unsigned long q6v5_panic(struct rproc *rproc)
{
- struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
+ struct q6v5 *qproc = rproc->priv;

return qcom_q6v5_panic(&qproc->q6v5);
}
@@ -1977,7 +1977,7 @@ static int q6v5_probe(struct platform_device *pdev)
rproc->auto_boot = false;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- qproc = (struct q6v5 *)rproc->priv;
+ qproc = rproc->priv;
qproc->dev = &pdev->dev;
qproc->rproc = rproc;
qproc->hexagon_mdt_image = "modem.mdt";
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index 0871108fb4dc..8eec88119fdd 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -186,7 +186,7 @@ static int adsp_shutdown_poll_decrypt(struct qcom_adsp *adsp)

static int adsp_unprepare(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;

/*
* adsp_load() did pass pas_metadata to the SCM driver for storing
@@ -203,7 +203,7 @@ static int adsp_unprepare(struct rproc *rproc)

static int adsp_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

/* Store firmware handle to be used in adsp_start() */
@@ -244,7 +244,7 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)

static int adsp_start(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int ret;

ret = qcom_q6v5_prepare(&adsp->q6v5);
@@ -360,7 +360,7 @@ static void qcom_pas_handover(struct qcom_q6v5 *q6v5)

static int adsp_stop(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int handover;
int ret;

@@ -390,7 +390,7 @@ static int adsp_stop(struct rproc *rproc)

static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;
int offset;

offset = da - adsp->mem_reloc;
@@ -405,7 +405,7 @@ static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iom

static unsigned long adsp_panic(struct rproc *rproc)
{
- struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
+ struct qcom_adsp *adsp = rproc->priv;

return qcom_q6v5_panic(&adsp->q6v5);
}
@@ -683,7 +683,7 @@ static int adsp_probe(struct platform_device *pdev)
rproc->auto_boot = desc->auto_boot;
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- adsp = (struct qcom_adsp *)rproc->priv;
+ adsp = rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
adsp->minidump_id = desc->minidump_id;
diff --git a/drivers/remoteproc/qcom_wcnss.c b/drivers/remoteproc/qcom_wcnss.c
index 9d4d04fff8c6..0fc317265064 100644
--- a/drivers/remoteproc/qcom_wcnss.c
+++ b/drivers/remoteproc/qcom_wcnss.c
@@ -154,7 +154,7 @@ static const struct wcnss_data pronto_v3_data = {

static int wcnss_load(struct rproc *rproc, const struct firmware *fw)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret;

ret = qcom_mdt_load(wcnss->dev, fw, rproc->firmware, WCNSS_PAS_ID,
@@ -227,7 +227,7 @@ static void wcnss_configure_iris(struct qcom_wcnss *wcnss)

static int wcnss_start(struct rproc *rproc)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret, i;

mutex_lock(&wcnss->iris_lock);
@@ -293,7 +293,7 @@ static int wcnss_start(struct rproc *rproc)

static int wcnss_stop(struct rproc *rproc)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int ret;

if (wcnss->state) {
@@ -320,7 +320,7 @@ static int wcnss_stop(struct rproc *rproc)

static void *wcnss_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
{
- struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
+ struct qcom_wcnss *wcnss = rproc->priv;
int offset;

offset = da - wcnss->mem_reloc;
@@ -566,7 +566,7 @@ static int wcnss_probe(struct platform_device *pdev)
}
rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);

- wcnss = (struct qcom_wcnss *)rproc->priv;
+ wcnss = rproc->priv;
wcnss->dev = &pdev->dev;
wcnss->rproc = rproc;
platform_set_drvdata(pdev, wcnss);
diff --git a/drivers/remoteproc/xlnx_r5_remoteproc.c b/drivers/remoteproc/xlnx_r5_remoteproc.c
index 2db57d394155..5dbc12bdc29e 100644
--- a/drivers/remoteproc/xlnx_r5_remoteproc.c
+++ b/drivers/remoteproc/xlnx_r5_remoteproc.c
@@ -242,7 +242,7 @@ static int add_mem_regions_carveout(struct rproc *rproc)
struct reserved_mem *rmem;
int i, num_mem_regions;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
num_mem_regions = r5_core->rmem_count;

for (i = 0; i < num_mem_regions; i++) {
@@ -363,7 +363,7 @@ static int add_tcm_carveout_split_mode(struct rproc *rproc)
size_t bank_size;
char *bank_name;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
dev = r5_core->dev;
num_banks = r5_core->tcm_bank_count;

@@ -432,7 +432,7 @@ static int add_tcm_carveout_lockstep_mode(struct rproc *rproc)
u32 pm_domain_id;
char *bank_name;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
dev = r5_core->dev;

/* Go through zynqmp banks for r5 node */
@@ -502,7 +502,7 @@ static int add_tcm_banks(struct rproc *rproc)
struct zynqmp_r5_core *r5_core;
struct device *dev;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;
if (!r5_core)
return -EINVAL;

@@ -595,7 +595,7 @@ static int zynqmp_r5_rproc_unprepare(struct rproc *rproc)
u32 pm_domain_id;
int i;

- r5_core = (struct zynqmp_r5_core *)rproc->priv;
+ r5_core = rproc->priv;

for (i = 0; i < r5_core->tcm_bank_count; i++) {
pm_domain_id = r5_core->tcm_banks[i]->pm_domain_id;
@@ -649,7 +649,7 @@ static struct zynqmp_r5_core *zynqmp_r5_add_rproc_core(struct device *cdev)
}

r5_rproc->auto_boot = false;
- r5_core = (struct zynqmp_r5_core *)r5_rproc->priv;
+ r5_core = r5_rproc->priv;
r5_core->dev = cdev;
r5_core->np = dev_of_node(cdev);
if (!r5_core->np) {
@@ -978,12 +978,12 @@ static int zynqmp_r5_cluster_init(struct zynqmp_r5_cluster *cluster)

static void zynqmp_r5_cluster_exit(void *data)
{
- struct platform_device *pdev = (struct platform_device *)data;
+ struct platform_device *pdev = data;
struct zynqmp_r5_cluster *cluster;
struct zynqmp_r5_core *r5_core;
int i;

- cluster = (struct zynqmp_r5_cluster *)platform_get_drvdata(pdev);
+ cluster = platform_get_drvdata(pdev);
if (!cluster)
return;

--
2.11.0

2023-03-28 07:41:37

by Dan Carpenter

[permalink] [raw]
Subject: Re: [PATCH v3] remoteproc: remove unnecessary (void*) conversions

On Tue, Mar 28, 2023 at 09:57:49AM +0800, Yu Zhe wrote:
> static void devm_rproc_free(struct device *dev, void *res)
> {
> - rproc_free(*(struct rproc **)res);
> + rproc_free(res);

This introduces a bug.

regards,
dan carpenter

2023-03-28 07:43:22

by Dan Carpenter

[permalink] [raw]
Subject: Re: [PATCH v4] remoteproc: remove unnecessary (void*) conversions

On Tue, Mar 28, 2023 at 10:49:07AM +0800, Yu Zhe wrote:
> Pointer variables of void * type do not require type cast.
>
> Reported-by: kernel test robot <[email protected]>
> Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/
> Signed-off-by: Yu Zhe <[email protected]>
> ---
>
> v3->v4:
> Drop wrong modifies

Seems okay. (I haven't tried compiling it or anything).

regards,
dan carpenter

2023-03-29 17:57:01

by Mathieu Poirier

[permalink] [raw]
Subject: Re: [PATCH v4] remoteproc: remove unnecessary (void*) conversions

On Tue, Mar 28, 2023 at 10:49:07AM +0800, Yu Zhe wrote:
> Pointer variables of void * type do not require type cast.
>
> Reported-by: kernel test robot <[email protected]>
> Link: https://lore.kernel.org/oe-kbuild-all/[email protected]/
> Signed-off-by: Yu Zhe <[email protected]>
> ---
>
> v3->v4:
> Drop wrong modifies
> ---
> drivers/remoteproc/da8xx_remoteproc.c | 12 ++++++------
> drivers/remoteproc/mtk_scp.c | 12 ++++++------
> drivers/remoteproc/qcom_q6v5_adsp.c | 10 +++++-----
> drivers/remoteproc/qcom_q6v5_mss.c | 8 ++++----
> drivers/remoteproc/qcom_q6v5_pas.c | 14 +++++++-------
> drivers/remoteproc/qcom_wcnss.c | 10 +++++-----
> drivers/remoteproc/xlnx_r5_remoteproc.c | 16 ++++++++--------
> 7 files changed, 41 insertions(+), 41 deletions(-)

This looks good to me but since I am pretty sure you have not compiled for all
these platforms, I will wait a week to give time for the bots to find potential
compilation warnings.

Thanks,
Mathieu

>
> diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
> index 98e0be9476a4..768217f0f5cd 100644
> --- a/drivers/remoteproc/da8xx_remoteproc.c
> +++ b/drivers/remoteproc/da8xx_remoteproc.c
> @@ -84,7 +84,7 @@ struct da8xx_rproc {
> */
> static irqreturn_t handle_event(int irq, void *p)
> {
> - struct rproc *rproc = (struct rproc *)p;
> + struct rproc *rproc = p;
>
> /* Process incoming buffers on all our vrings */
> rproc_vq_interrupt(rproc, 0);
> @@ -104,8 +104,8 @@ static irqreturn_t handle_event(int irq, void *p)
> */
> static irqreturn_t da8xx_rproc_callback(int irq, void *p)
> {
> - struct rproc *rproc = (struct rproc *)p;
> - struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
> + struct rproc *rproc = p;
> + struct da8xx_rproc *drproc = rproc->priv;
> u32 chipsig;
>
> chipsig = readl(drproc->chipsig);
> @@ -133,7 +133,7 @@ static irqreturn_t da8xx_rproc_callback(int irq, void *p)
> static int da8xx_rproc_start(struct rproc *rproc)
> {
> struct device *dev = rproc->dev.parent;
> - struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
> + struct da8xx_rproc *drproc = rproc->priv;
> struct clk *dsp_clk = drproc->dsp_clk;
> struct reset_control *dsp_reset = drproc->dsp_reset;
> int ret;
> @@ -183,7 +183,7 @@ static int da8xx_rproc_stop(struct rproc *rproc)
> /* kick a virtqueue */
> static void da8xx_rproc_kick(struct rproc *rproc, int vqid)
> {
> - struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
> + struct da8xx_rproc *drproc = rproc->priv;
>
> /* Interrupt remote proc */
> writel(SYSCFG_CHIPSIG2, drproc->chipsig);
> @@ -360,7 +360,7 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
> static int da8xx_rproc_remove(struct platform_device *pdev)
> {
> struct rproc *rproc = platform_get_drvdata(pdev);
> - struct da8xx_rproc *drproc = (struct da8xx_rproc *)rproc->priv;
> + struct da8xx_rproc *drproc = rproc->priv;
> struct device *dev = &pdev->dev;
>
> /*
> diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
> index 0861b76f185f..e1d93e63d7df 100644
> --- a/drivers/remoteproc/mtk_scp.c
> +++ b/drivers/remoteproc/mtk_scp.c
> @@ -74,8 +74,8 @@ static void scp_wdt_handler(struct mtk_scp *scp, u32 scp_to_host)
>
> static void scp_init_ipi_handler(void *data, unsigned int len, void *priv)
> {
> - struct mtk_scp *scp = (struct mtk_scp *)priv;
> - struct scp_run *run = (struct scp_run *)data;
> + struct mtk_scp *scp = priv;
> + struct scp_run *run = data;
>
> scp->run.signaled = run->signaled;
> strscpy(scp->run.fw_ver, run->fw_ver, SCP_FW_VER_LEN);
> @@ -498,7 +498,7 @@ static int scp_parse_fw(struct rproc *rproc, const struct firmware *fw)
>
> static int scp_start(struct rproc *rproc)
> {
> - struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
> + struct mtk_scp *scp = rproc->priv;
> struct device *dev = scp->dev;
> struct scp_run *run = &scp->run;
> int ret;
> @@ -587,7 +587,7 @@ static void *mt8192_scp_da_to_va(struct mtk_scp *scp, u64 da, size_t len)
>
> static void *scp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
> {
> - struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
> + struct mtk_scp *scp = rproc->priv;
>
> return scp->data->scp_da_to_va(scp, da, len);
> }
> @@ -627,7 +627,7 @@ static void mt8195_scp_stop(struct mtk_scp *scp)
>
> static int scp_stop(struct rproc *rproc)
> {
> - struct mtk_scp *scp = (struct mtk_scp *)rproc->priv;
> + struct mtk_scp *scp = rproc->priv;
> int ret;
>
> ret = clk_prepare_enable(scp->clk);
> @@ -829,7 +829,7 @@ static int scp_probe(struct platform_device *pdev)
> if (!rproc)
> return dev_err_probe(dev, -ENOMEM, "unable to allocate remoteproc\n");
>
> - scp = (struct mtk_scp *)rproc->priv;
> + scp = rproc->priv;
> scp->rproc = rproc;
> scp->dev = dev;
> scp->data = of_device_get_match_data(dev);
> diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
> index 08d8dad22ca7..d546ab9dc141 100644
> --- a/drivers/remoteproc/qcom_q6v5_adsp.c
> +++ b/drivers/remoteproc/qcom_q6v5_adsp.c
> @@ -321,7 +321,7 @@ static int qcom_adsp_shutdown(struct qcom_adsp *adsp)
>
> static int adsp_load(struct rproc *rproc, const struct firmware *fw)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int ret;
>
> ret = qcom_mdt_load_no_init(adsp->dev, fw, rproc->firmware, 0,
> @@ -379,7 +379,7 @@ static int adsp_map_carveout(struct rproc *rproc)
>
> static int adsp_start(struct rproc *rproc)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int ret;
> unsigned int val;
>
> @@ -469,7 +469,7 @@ static void qcom_adsp_pil_handover(struct qcom_q6v5 *q6v5)
>
> static int adsp_stop(struct rproc *rproc)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int handover;
> int ret;
>
> @@ -492,7 +492,7 @@ static int adsp_stop(struct rproc *rproc)
>
> static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int offset;
>
> offset = da - adsp->mem_reloc;
> @@ -696,7 +696,7 @@ static int adsp_probe(struct platform_device *pdev)
> rproc->has_iommu = desc->has_iommu;
> rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
>
> - adsp = (struct qcom_adsp *)rproc->priv;
> + adsp = rproc->priv;
> adsp->dev = &pdev->dev;
> adsp->rproc = rproc;
> adsp->info_name = desc->sysmon_name;
> diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
> index ab053084f7a2..e7a67c8c16a0 100644
> --- a/drivers/remoteproc/qcom_q6v5_mss.c
> +++ b/drivers/remoteproc/qcom_q6v5_mss.c
> @@ -1562,7 +1562,7 @@ static void qcom_q6v5_dump_segment(struct rproc *rproc,
>
> static int q6v5_start(struct rproc *rproc)
> {
> - struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
> + struct q6v5 *qproc = rproc->priv;
> int xfermemop_ret;
> int ret;
>
> @@ -1604,7 +1604,7 @@ static int q6v5_start(struct rproc *rproc)
>
> static int q6v5_stop(struct rproc *rproc)
> {
> - struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
> + struct q6v5 *qproc = rproc->priv;
> int ret;
>
> ret = qcom_q6v5_request_stop(&qproc->q6v5, qproc->sysmon);
> @@ -1662,7 +1662,7 @@ static int qcom_q6v5_register_dump_segments(struct rproc *rproc,
>
> static unsigned long q6v5_panic(struct rproc *rproc)
> {
> - struct q6v5 *qproc = (struct q6v5 *)rproc->priv;
> + struct q6v5 *qproc = rproc->priv;
>
> return qcom_q6v5_panic(&qproc->q6v5);
> }
> @@ -1977,7 +1977,7 @@ static int q6v5_probe(struct platform_device *pdev)
> rproc->auto_boot = false;
> rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
>
> - qproc = (struct q6v5 *)rproc->priv;
> + qproc = rproc->priv;
> qproc->dev = &pdev->dev;
> qproc->rproc = rproc;
> qproc->hexagon_mdt_image = "modem.mdt";
> diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
> index 0871108fb4dc..8eec88119fdd 100644
> --- a/drivers/remoteproc/qcom_q6v5_pas.c
> +++ b/drivers/remoteproc/qcom_q6v5_pas.c
> @@ -186,7 +186,7 @@ static int adsp_shutdown_poll_decrypt(struct qcom_adsp *adsp)
>
> static int adsp_unprepare(struct rproc *rproc)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
>
> /*
> * adsp_load() did pass pas_metadata to the SCM driver for storing
> @@ -203,7 +203,7 @@ static int adsp_unprepare(struct rproc *rproc)
>
> static int adsp_load(struct rproc *rproc, const struct firmware *fw)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int ret;
>
> /* Store firmware handle to be used in adsp_start() */
> @@ -244,7 +244,7 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)
>
> static int adsp_start(struct rproc *rproc)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int ret;
>
> ret = qcom_q6v5_prepare(&adsp->q6v5);
> @@ -360,7 +360,7 @@ static void qcom_pas_handover(struct qcom_q6v5 *q6v5)
>
> static int adsp_stop(struct rproc *rproc)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int handover;
> int ret;
>
> @@ -390,7 +390,7 @@ static int adsp_stop(struct rproc *rproc)
>
> static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
> int offset;
>
> offset = da - adsp->mem_reloc;
> @@ -405,7 +405,7 @@ static void *adsp_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iom
>
> static unsigned long adsp_panic(struct rproc *rproc)
> {
> - struct qcom_adsp *adsp = (struct qcom_adsp *)rproc->priv;
> + struct qcom_adsp *adsp = rproc->priv;
>
> return qcom_q6v5_panic(&adsp->q6v5);
> }
> @@ -683,7 +683,7 @@ static int adsp_probe(struct platform_device *pdev)
> rproc->auto_boot = desc->auto_boot;
> rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
>
> - adsp = (struct qcom_adsp *)rproc->priv;
> + adsp = rproc->priv;
> adsp->dev = &pdev->dev;
> adsp->rproc = rproc;
> adsp->minidump_id = desc->minidump_id;
> diff --git a/drivers/remoteproc/qcom_wcnss.c b/drivers/remoteproc/qcom_wcnss.c
> index 9d4d04fff8c6..0fc317265064 100644
> --- a/drivers/remoteproc/qcom_wcnss.c
> +++ b/drivers/remoteproc/qcom_wcnss.c
> @@ -154,7 +154,7 @@ static const struct wcnss_data pronto_v3_data = {
>
> static int wcnss_load(struct rproc *rproc, const struct firmware *fw)
> {
> - struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
> + struct qcom_wcnss *wcnss = rproc->priv;
> int ret;
>
> ret = qcom_mdt_load(wcnss->dev, fw, rproc->firmware, WCNSS_PAS_ID,
> @@ -227,7 +227,7 @@ static void wcnss_configure_iris(struct qcom_wcnss *wcnss)
>
> static int wcnss_start(struct rproc *rproc)
> {
> - struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
> + struct qcom_wcnss *wcnss = rproc->priv;
> int ret, i;
>
> mutex_lock(&wcnss->iris_lock);
> @@ -293,7 +293,7 @@ static int wcnss_start(struct rproc *rproc)
>
> static int wcnss_stop(struct rproc *rproc)
> {
> - struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
> + struct qcom_wcnss *wcnss = rproc->priv;
> int ret;
>
> if (wcnss->state) {
> @@ -320,7 +320,7 @@ static int wcnss_stop(struct rproc *rproc)
>
> static void *wcnss_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem)
> {
> - struct qcom_wcnss *wcnss = (struct qcom_wcnss *)rproc->priv;
> + struct qcom_wcnss *wcnss = rproc->priv;
> int offset;
>
> offset = da - wcnss->mem_reloc;
> @@ -566,7 +566,7 @@ static int wcnss_probe(struct platform_device *pdev)
> }
> rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
>
> - wcnss = (struct qcom_wcnss *)rproc->priv;
> + wcnss = rproc->priv;
> wcnss->dev = &pdev->dev;
> wcnss->rproc = rproc;
> platform_set_drvdata(pdev, wcnss);
> diff --git a/drivers/remoteproc/xlnx_r5_remoteproc.c b/drivers/remoteproc/xlnx_r5_remoteproc.c
> index 2db57d394155..5dbc12bdc29e 100644
> --- a/drivers/remoteproc/xlnx_r5_remoteproc.c
> +++ b/drivers/remoteproc/xlnx_r5_remoteproc.c
> @@ -242,7 +242,7 @@ static int add_mem_regions_carveout(struct rproc *rproc)
> struct reserved_mem *rmem;
> int i, num_mem_regions;
>
> - r5_core = (struct zynqmp_r5_core *)rproc->priv;
> + r5_core = rproc->priv;
> num_mem_regions = r5_core->rmem_count;
>
> for (i = 0; i < num_mem_regions; i++) {
> @@ -363,7 +363,7 @@ static int add_tcm_carveout_split_mode(struct rproc *rproc)
> size_t bank_size;
> char *bank_name;
>
> - r5_core = (struct zynqmp_r5_core *)rproc->priv;
> + r5_core = rproc->priv;
> dev = r5_core->dev;
> num_banks = r5_core->tcm_bank_count;
>
> @@ -432,7 +432,7 @@ static int add_tcm_carveout_lockstep_mode(struct rproc *rproc)
> u32 pm_domain_id;
> char *bank_name;
>
> - r5_core = (struct zynqmp_r5_core *)rproc->priv;
> + r5_core = rproc->priv;
> dev = r5_core->dev;
>
> /* Go through zynqmp banks for r5 node */
> @@ -502,7 +502,7 @@ static int add_tcm_banks(struct rproc *rproc)
> struct zynqmp_r5_core *r5_core;
> struct device *dev;
>
> - r5_core = (struct zynqmp_r5_core *)rproc->priv;
> + r5_core = rproc->priv;
> if (!r5_core)
> return -EINVAL;
>
> @@ -595,7 +595,7 @@ static int zynqmp_r5_rproc_unprepare(struct rproc *rproc)
> u32 pm_domain_id;
> int i;
>
> - r5_core = (struct zynqmp_r5_core *)rproc->priv;
> + r5_core = rproc->priv;
>
> for (i = 0; i < r5_core->tcm_bank_count; i++) {
> pm_domain_id = r5_core->tcm_banks[i]->pm_domain_id;
> @@ -649,7 +649,7 @@ static struct zynqmp_r5_core *zynqmp_r5_add_rproc_core(struct device *cdev)
> }
>
> r5_rproc->auto_boot = false;
> - r5_core = (struct zynqmp_r5_core *)r5_rproc->priv;
> + r5_core = r5_rproc->priv;
> r5_core->dev = cdev;
> r5_core->np = dev_of_node(cdev);
> if (!r5_core->np) {
> @@ -978,12 +978,12 @@ static int zynqmp_r5_cluster_init(struct zynqmp_r5_cluster *cluster)
>
> static void zynqmp_r5_cluster_exit(void *data)
> {
> - struct platform_device *pdev = (struct platform_device *)data;
> + struct platform_device *pdev = data;
> struct zynqmp_r5_cluster *cluster;
> struct zynqmp_r5_core *r5_core;
> int i;
>
> - cluster = (struct zynqmp_r5_cluster *)platform_get_drvdata(pdev);
> + cluster = platform_get_drvdata(pdev);
> if (!cluster)
> return;
>
> --
> 2.11.0
>