apps: Remove manual assignment of ops and priv to rproc struct

This is handled by default, remove instances from apps. In cases
where there is nothing left in the init() callback remove it as
it is now optional.

Signed-off-by: Andrew Davis <afd@ti.com>
This commit is contained in:
Andrew Davis
2024-05-16 09:38:47 +02:00
committed by Arnaud Pouliquen
parent babba1bca0
commit e03d09a3fb
8 changed files with 12 additions and 28 deletions
@@ -19,6 +19,7 @@ static struct remoteproc *apu_rproc_init(struct remoteproc *rproc,
return NULL;
}
(void)ops;
LPRINTF("%s: node id: %d\n\r", __func__, cpu_id);
priv = metal_allocate_memory(sizeof(*priv));
if (!priv)
@@ -26,7 +27,6 @@ static struct remoteproc *apu_rproc_init(struct remoteproc *rproc,
memset(priv, 0, sizeof(*priv));
priv->rproc = rproc;
priv->cpu_id = cpu_id;
priv->rproc->ops = ops;
priv->rproc->priv = priv;
rproc->state = RPROC_READY;
return priv->rproc;
@@ -107,6 +107,7 @@ struct remoteproc *r5_rproc_init(struct remoteproc *rproc,
return NULL;
}
(void)ops;
xil_printf("rproc init: node id: %d\r\n", cpu_id);
priv = metal_allocate_memory(sizeof(*priv));
if (!priv)
@@ -114,7 +115,6 @@ struct remoteproc *r5_rproc_init(struct remoteproc *rproc,
memset(priv, 0, sizeof(*priv));
priv->rproc = rproc;
priv->cpu_id = cpu_id;
priv->rproc->ops = ops;
priv->rproc->priv = priv;
priv->rpu_base = RPU_BASE_ADDR;
metal_io_init(&priv->rpu_io, (void *)RPU_BASE_ADDR, &priv->rpu_base,
@@ -17,6 +17,7 @@ static struct remoteproc *rpu_rproc_init(struct remoteproc *rproc,
return NULL;
}
(void)ops;
LPRINTF("%s: node id: %d\n\r", __func__, cpu_id);
priv = metal_allocate_memory(sizeof(*priv));
if (!priv)
@@ -24,7 +25,6 @@ static struct remoteproc *rpu_rproc_init(struct remoteproc *rproc,
memset(priv, 0, sizeof(*priv));
priv->rproc = rproc;
priv->cpu_id = cpu_id;
priv->rproc->ops = ops;
priv->rproc->priv = priv;
rproc->state = RPROC_READY;
return priv->rproc;
@@ -28,19 +28,6 @@
#include <openamp/rpmsg_virtio.h>
#include "platform_info.h"
static struct remoteproc *
zynqmp_mb_a53_proc_init(struct remoteproc *rproc,
const struct remoteproc_ops *ops, void *arg)
{
struct remoteproc_priv *prproc = arg;
if (!rproc || !prproc || !ops)
return NULL;
rproc->priv = prproc;
rproc->ops = ops;
return rproc;
}
static inline void zynqmp_mb_a53_proc_remove(struct remoteproc *rproc)
{
(void)rproc;
@@ -108,7 +95,7 @@ static int zynqmp_mb_a53_proc_notify(struct remoteproc *rproc, uint32_t id)
* notification operation and remote processor management operations.
*/
const struct remoteproc_ops zynqmp_mb_a53_proc_ops = {
.init = zynqmp_mb_a53_proc_init,
.init = NULL,
.remove = zynqmp_mb_a53_proc_remove,
.mmap = zynqmp_mb_a53_proc_mmap,
.notify = zynqmp_mb_a53_proc_notify,
+2 -3
View File
@@ -52,7 +52,8 @@ zynq_a9_proc_init(struct remoteproc *rproc,
unsigned int irq_vect;
int ret;
if (!rproc || !prproc || !ops)
(void)ops;
if (!rproc || !prproc)
return NULL;
ret = metal_device_open(prproc->gic_bus_name, prproc->gic_name,
&dev);
@@ -60,12 +61,10 @@ zynq_a9_proc_init(struct remoteproc *rproc,
xil_printf("failed to open GIC device: %d.\r\n", ret);
return NULL;
}
rproc->priv = prproc;
prproc->gic_dev = dev;
prproc->gic_io = metal_device_io_region(dev, 0);
if (!prproc->gic_io)
goto err1;
rproc->ops = ops;
atomic_flag_test_and_set(&prproc->nokick);
/* Register interrupt handler and enable interrupt */
+2 -3
View File
@@ -74,10 +74,9 @@ zynqmp_linux_r5_proc_init(struct remoteproc *rproc,
metal_phys_addr_t mem_pa;
int ret;
if (!rproc || !prproc || !ops)
(void)ops;
if (!rproc || !prproc)
return NULL;
rproc->priv = prproc;
rproc->ops = ops;
prproc->ipi_dev = NULL;
prproc->shm_dev = NULL;
/* Get shared memory device */
+2 -3
View File
@@ -65,7 +65,8 @@ zynqmp_r5_a53_proc_init(struct remoteproc *rproc,
unsigned int irq_vect;
int ret;
if (!rproc || !prproc || !ops)
(void)ops;
if (!rproc || !prproc)
return NULL;
ret = metal_device_open(prproc->kick_dev_bus_name,
prproc->kick_dev_name,
@@ -74,7 +75,6 @@ zynqmp_r5_a53_proc_init(struct remoteproc *rproc,
xil_printf("failed to open polling device: %d.\r\n", ret);
return NULL;
}
rproc->priv = prproc;
prproc->kick_dev = kick_dev;
prproc->kick_io = metal_device_io_region(kick_dev, 0);
if (!prproc->kick_io)
@@ -91,7 +91,6 @@ zynqmp_r5_a53_proc_init(struct remoteproc *rproc,
(void)irq_vect;
metal_io_write32(prproc->kick_io, 0, !POLL_STOP);
#endif /* !RPMSG_NO_IPI */
rproc->ops = ops;
return rproc;
err1:
@@ -247,9 +247,10 @@ linux_proc_init(struct remoteproc *rproc,
struct vring_ipi_info *ipi;
int ret;
(void)ops;
if (!rproc || !prproc)
return NULL;
rproc->priv = prproc;
/* Create shared memory io */
ret = metal_shmem_open(prproc->shm_file, prproc->shm_size, &io);
if (ret) {
@@ -281,7 +282,6 @@ linux_proc_init(struct remoteproc *rproc,
}
metal_irq_register(ipi->fd, linux_proc_irq_handler, ipi);
metal_irq_enable(ipi->fd);
rproc->ops = ops;
return rproc;
err: