|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 1/8] xen/arm: gic: Make clear the GIC node is passed to make_hwdom_dt_node
The callback make_hwdom_dt_node already have the gic node in parameter.
Rather than using a weird mix between "dt_interrupt_controller" (aliased
to "gic") and "node", rename the callback parameter "node" to "gic".
Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
---
xen/arch/arm/gic-hip04.c | 5 ++---
xen/arch/arm/gic-v2.c | 5 ++---
xen/arch/arm/gic-v3.c | 9 ++++-----
xen/arch/arm/gic.c | 6 ++++--
xen/include/asm-arm/gic.h | 5 +++--
5 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/xen/arch/arm/gic-hip04.c b/xen/arch/arm/gic-hip04.c
index c5ed545..e8cdcd4 100644
--- a/xen/arch/arm/gic-hip04.c
+++ b/xen/arch/arm/gic-hip04.c
@@ -562,10 +562,9 @@ static void hip04gic_irq_set_affinity(struct irq_desc
*desc, const cpumask_t *cp
}
static int hip04gic_make_hwdom_dt_node(const struct domain *d,
- const struct dt_device_node *node,
+ const struct dt_device_node *gic,
void *fdt)
{
- const struct dt_device_node *gic = dt_interrupt_controller;
const void *compatible;
u32 len;
const __be32 *regs;
@@ -598,7 +597,7 @@ static int hip04gic_make_hwdom_dt_node(const struct domain
*d,
return -FDT_ERR_XEN(ENOENT);
}
- len = dt_cells_to_size(dt_n_addr_cells(node) + dt_n_size_cells(node));
+ len = dt_cells_to_size(dt_n_addr_cells(gic) + dt_n_size_cells(gic));
len *= 2;
res = fdt_property(fdt, "reg", regs, len);
diff --git a/xen/arch/arm/gic-v2.c b/xen/arch/arm/gic-v2.c
index 596126d..5841e59 100644
--- a/xen/arch/arm/gic-v2.c
+++ b/xen/arch/arm/gic-v2.c
@@ -552,10 +552,9 @@ static void gicv2_irq_set_affinity(struct irq_desc *desc,
const cpumask_t *cpu_m
}
static int gicv2_make_hwdom_dt_node(const struct domain *d,
- const struct dt_device_node *node,
+ const struct dt_device_node *gic,
void *fdt)
{
- const struct dt_device_node *gic = dt_interrupt_controller;
const void *compatible = NULL;
u32 len;
const __be32 *regs;
@@ -584,7 +583,7 @@ static int gicv2_make_hwdom_dt_node(const struct domain *d,
return -FDT_ERR_XEN(ENOENT);
}
- len = dt_cells_to_size(dt_n_addr_cells(node) + dt_n_size_cells(node));
+ len = dt_cells_to_size(dt_n_addr_cells(gic) + dt_n_size_cells(gic));
len *= 2;
res = fdt_property(fdt, "reg", regs, len);
diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
index d1db1ce..0df4baf 100644
--- a/xen/arch/arm/gic-v3.c
+++ b/xen/arch/arm/gic-v3.c
@@ -1054,10 +1054,9 @@ static void gicv3_irq_set_affinity(struct irq_desc
*desc, const cpumask_t *mask)
}
static int gicv3_make_hwdom_dt_node(const struct domain *d,
- const struct dt_device_node *node,
+ const struct dt_device_node *gic,
void *fdt)
{
- const struct dt_device_node *gic = dt_interrupt_controller;
const void *compatible = NULL;
uint32_t len;
__be32 *new_cells, *tmp;
@@ -1084,7 +1083,7 @@ static int gicv3_make_hwdom_dt_node(const struct domain
*d,
if ( res )
return res;
- len = dt_cells_to_size(dt_n_addr_cells(node) + dt_n_size_cells(node));
+ len = dt_cells_to_size(dt_n_addr_cells(gic) + dt_n_size_cells(gic));
/*
* GIC has two memory regions: Distributor + rdist regions
* CPU interface and virtual cpu interfaces accessesed as System registers
@@ -1097,10 +1096,10 @@ static int gicv3_make_hwdom_dt_node(const struct domain
*d,
tmp = new_cells;
- dt_set_range(&tmp, node, d->arch.vgic.dbase, SZ_64K);
+ dt_set_range(&tmp, gic, d->arch.vgic.dbase, SZ_64K);
for ( i = 0; i < d->arch.vgic.nr_regions; i++ )
- dt_set_range(&tmp, node, d->arch.vgic.rdist_regions[i].base,
+ dt_set_range(&tmp, gic, d->arch.vgic.rdist_regions[i].base,
d->arch.vgic.rdist_regions[i].size);
res = fdt_property(fdt, "reg", new_cells, len);
diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c
index 1757193..1e1e5ba 100644
--- a/xen/arch/arm/gic.c
+++ b/xen/arch/arm/gic.c
@@ -702,10 +702,12 @@ void __cpuinit init_maintenance_interrupt(void)
}
int gic_make_hwdom_dt_node(const struct domain *d,
- const struct dt_device_node *node,
+ const struct dt_device_node *gic,
void *fdt)
{
- return gic_hw_ops->make_hwdom_dt_node(d, node, fdt);
+ ASSERT(gic == dt_interrupt_controller);
+
+ return gic_hw_ops->make_hwdom_dt_node(d, gic, fdt);
}
/*
diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
index d343abf..6d53f97 100644
--- a/xen/include/asm-arm/gic.h
+++ b/xen/include/asm-arm/gic.h
@@ -350,13 +350,14 @@ struct gic_hw_operations {
unsigned int (*read_apr)(int apr_reg);
/* Secondary CPU init */
int (*secondary_init)(void);
+ /* Create GIC node for the hardware domain */
int (*make_hwdom_dt_node)(const struct domain *d,
- const struct dt_device_node *node, void *fdt);
+ const struct dt_device_node *gic, void *fdt);
};
void register_gic_ops(const struct gic_hw_operations *ops);
int gic_make_hwdom_dt_node(const struct domain *d,
- const struct dt_device_node *node,
+ const struct dt_device_node *gic,
void *fdt);
#endif /* __ASSEMBLY__ */
--
2.1.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |