struct zynq_rproc_pdata {
struct irq_list mylist;
struct rproc *rproc;
- u32 ipino;
u32 vring0;
u32 vring1;
u32 mem_start;
}
/* Allocate free IPI number */
- ret = of_property_read_u32(pdev->dev.of_node, "ipino", &local->ipino);
+ /* Read vring0 ipi number */
+ ret = of_property_read_u32(pdev->dev.of_node, "vring0", &local->vring0);
if (ret < 0) {
dev_err(&pdev->dev, "unable to read property");
- goto irq_fault;
+ goto ipi_fault;
}
- ret = set_ipi_handler(local->ipino, ipi_kick, "Firmware kick");
+ ret = set_ipi_handler(local->vring0, ipi_kick, "Firmware kick");
if (ret) {
dev_err(&pdev->dev, "IPI handler already registered\n");
goto irq_fault;
}
- /* Read vring0 ipi number */
- ret = of_property_read_u32(pdev->dev.of_node, "vring0", &local->vring0);
- if (ret < 0) {
- dev_err(&pdev->dev, "unable to read property");
- goto ipi_fault;
- }
-
/* Read vring1 ipi number */
ret = of_property_read_u32(pdev->dev.of_node, "vring1", &local->vring1);
if (ret < 0) {
rproc_fault:
rproc_put(local->rproc);
ipi_fault:
- clear_ipi_handler(local->ipino);
+ clear_ipi_handler(local->vring0);
irq_fault:
clear_irq(pdev);
dma_release_declared_memory(&pdev->dev);
- clear_ipi_handler(local->ipino);
+ clear_ipi_handler(local->vring0);
clear_irq(pdev);
rproc_del(local->rproc);