From: sboyd@codeaurora.org (Stephen Boyd)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH 02/12] ARM: smp_twd: add support for remapped PPI interrupts
Date: Mon, 25 Apr 2011 10:04:17 -0700 [thread overview]
Message-ID: <4DB5A991.90002@codeaurora.org> (raw)
In-Reply-To: <1303326501-15664-3-git-send-email-marc.zyngier@arm.com>
On 4/20/2011 12:08 PM, Marc Zyngier wrote:
> diff --git a/arch/arm/include/asm/entry-macro-multi.S b/arch/arm/include/asm/entry-macro-multi.S
> index ec0bbf7..c599795 100644
> --- a/arch/arm/include/asm/entry-macro-multi.S
> +++ b/arch/arm/include/asm/entry-macro-multi.S
> @@ -24,7 +24,7 @@
> adrne lr, BSYM(1b)
> bne do_IPI
>
> -#ifdef CONFIG_LOCAL_TIMERS
> +#if defined(CONFIG_LOCAL_TIMERS) && !defined(CONFIG_ARM_GIC_VPPI)
> test_for_ltirq r0, r6, r5, lr
> movne r0, sp
> adrne lr, BSYM(1b)
> diff --git a/arch/arm/include/asm/hardware/entry-macro-gic.S b/arch/arm/include/asm/hardware/entry-macro-gic.S
> index c115b82..14a3363 100644
> --- a/arch/arm/include/asm/hardware/entry-macro-gic.S
> +++ b/arch/arm/include/asm/hardware/entry-macro-gic.S
> @@ -17,23 +17,26 @@
> .endm
> #endif
>
> +#ifdef CONFIG_ARM_GIC_VPPI
> +#define DO_IRQ_BASE 16
> +#else
> +#define DO_IRQ_BASE 30
> +#endif
> +
> /*
> * The interrupt numbering scheme is defined in the
> * interrupt controller spec. To wit:
> *
> * Interrupts 0-15 are IPI
> - * 16-28 are reserved
> - * 29-31 are local. We allow 30 to be used for the watchdog.
> + * 16-31 are local. We allow 30 to be used for the watchdog.
> * 32-1020 are global
> * 1021-1022 are reserved
> * 1023 is "spurious" (no interrupt)
> *
> - * For now, we ignore all local interrupts so only return an interrupt if it's
> - * between 30 and 1020. The test_for_ipi routine below will pick up on IPIs.
> - *
> * A simple read from the controller will tell us the number of the highest
> * priority enabled interrupt. We then just need to check whether it is in the
> - * valid range for an IRQ (30-1020 inclusive).
> + * valid range for an IRQ (30-1020 inclusive). If CONFIG_ARM_GIC_VPPI is
> + * enabled, local interrupts are handled the same way as global ones.
> */
>
> .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
> @@ -43,7 +46,7 @@
>
> ldr \tmp, =1021
> bic \irqnr, \irqstat, #0x1c00
> - cmp \irqnr, #29
> + cmp \irqnr, #(DO_IRQ_BASE - 1)
> cmpcc \irqnr, \irqnr
> cmpne \irqnr, \tmp
> cmpcs \irqnr, \irqnr
> @@ -63,6 +66,7 @@
> cmpcs \irqnr, \irqnr
> .endm
>
> +#ifndef CONFIG_ARM_GIC_VPPI
> /* As above, this assumes that irqstat and base are preserved.. */
>
> .macro test_for_ltirq, irqnr, irqstat, base, tmp
> @@ -73,3 +77,4 @@
> streq \irqstat, [\base, #GIC_CPU_EOI]
> cmp \tmp, #0
> .endm
> +#endif
I would expect these bits to be part of the first patch in this series
because they're necessary to actually use the CONFIG_ARM_GIC_VPPI
option. Can you move them to the first patch?
--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
next prev parent reply other threads:[~2011-04-25 17:04 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-20 19:08 [RFC PATCH 00/12] Consolidating GIC per-cpu interrupts Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 01/12] ARM: gic: add per-cpu interrupt multiplexer Marc Zyngier
2011-04-25 20:17 ` Abhijeet Dharmapurikar
2011-04-26 9:08 ` Marc Zyngier
2011-04-26 4:00 ` Stephen Boyd
2011-04-26 9:12 ` Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 02/12] ARM: smp_twd: add support for remapped PPI interrupts Marc Zyngier
2011-04-25 17:04 ` Stephen Boyd [this message]
2011-04-26 9:05 ` Marc Zyngier
2011-04-26 16:21 ` Stephen Boyd
2011-04-26 16:53 ` Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 03/12] ARM: omap4: use remapped PPI interrupts for local timer Marc Zyngier
2011-04-29 7:24 ` Santosh Shilimkar
2011-04-29 7:24 ` Santosh Shilimkar
2011-05-03 16:18 ` Marc Zyngier
2011-05-03 16:18 ` Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 04/12] ARM: versatile: " Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 05/12] ARM: shmobile: " Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 06/12] ARM: ux500: " Marc Zyngier
2011-04-21 8:44 ` Srinidhi KASAGAR
2011-04-21 8:53 ` Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 07/12] ARM: tegra: " Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 08/12] ARM: msm: " Marc Zyngier
2011-04-26 17:13 ` Stephen Boyd
2011-05-03 16:15 ` Marc Zyngier
2011-05-03 17:38 ` Stephen Boyd
2011-05-03 19:04 ` Russell King - ARM Linux
2011-05-04 5:47 ` Stephen Boyd
2011-05-04 18:45 ` Jeff Ohlstein
2011-05-05 1:17 ` Stephen Boyd
2011-04-20 19:08 ` [RFC PATCH 09/12] ARM: exynos4: " Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 10/12] ARM: gic: remove previous local timer interrupt handling Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 11/12] ARM: gic: add compute_irqnr macro for exynos4 Marc Zyngier
2011-04-20 19:08 ` [RFC PATCH 12/12] ARM: SMP: automatically select ARM_GIC_VPPI Marc Zyngier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4DB5A991.90002@codeaurora.org \
--to=sboyd@codeaurora.org \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.