[Arm-dev] [PATCH v1 15/87] irqchip, gicv3-its: Read typer register outside the loop
Vadim Lomovtsev
Vadim.Lomovtsev at caviumnetworks.comThu Aug 13 13:18:12 UTC 2015
- Previous message: [Arm-dev] [PATCH v1 14/87] net/mlx4: Remove improper usage of dma_alloc_coherent().
- Next message: [Arm-dev] [PATCH v1 16/87] irqchip, gicv3: Add HW revision detection and configuration
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
From: Robert Richter <rrichter at cavium.com> No need to read the typer register in the loop. Values do not change. Signed-off-by: Robert Richter <rrichter at cavium.com> Signed-off-by: Vadim Lomovtsev <Vadim.Lomovtsev at caviumnetworks.com> --- drivers/irqchip/irq-gic-v3-its.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c index 83204f4..3542c75 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -838,6 +838,8 @@ static int its_alloc_tables(struct its_node *its) int psz = SZ_64K; u64 shr = GITS_BASER_InnerShareable; u64 cache = GITS_BASER_WaWb; + u64 typer = readq_relaxed(its->base + GITS_TYPER); + u32 ids = GITS_TYPER_DEVBITS(typer); for (i = 0; i < GITS_BASER_NR_REGS; i++) { u64 val = readq_relaxed(its->base + GITS_BASER + i * 8); @@ -860,9 +862,6 @@ static int its_alloc_tables(struct its_node *its) * For other tables, only allocate a single page. */ if (type == GITS_BASER_TYPE_DEVICE) { - u64 typer = readq_relaxed(its->base + GITS_TYPER); - u32 ids = GITS_TYPER_DEVBITS(typer); - /* * 'order' was initialized earlier to the default page * granule of the the ITS. We can't have an allocation -- 2.4.3
- Previous message: [Arm-dev] [PATCH v1 14/87] net/mlx4: Remove improper usage of dma_alloc_coherent().
- Next message: [Arm-dev] [PATCH v1 16/87] irqchip, gicv3: Add HW revision detection and configuration
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Arm-dev mailing list