* [PATCH] c67: irq: don't reimplement __handle_domain_irq()
@ 2015-06-23 21:59 Felipe Balbi
2015-06-25 19:29 ` Mark Salter
0 siblings, 1 reply; 3+ messages in thread
From: Felipe Balbi @ 2015-06-23 21:59 UTC (permalink / raw)
To: Mark Salter, Aurelien Jacquiot
Cc: Linux Kernel Mailing List, linux-c6x-dev, Felipe Balbi
c6x_do_IRQ() had a reimplementation of
__handle_domain_irq(), instead just call
that.
Signed-off-by: Felipe Balbi <balbi@ti.com>
---
Patch wasn't even compile tested because I really don't
have c6x GCC around. If someone could test the patch before
applying, that would avoid regressions.
arch/c6x/kernel/irq.c | 13 ++-----------
1 file changed, 2 insertions(+), 11 deletions(-)
diff --git a/arch/c6x/kernel/irq.c b/arch/c6x/kernel/irq.c
index 247e0eb5e467..a7f73bc765ac 100644
--- a/arch/c6x/kernel/irq.c
+++ b/arch/c6x/kernel/irq.c
@@ -58,22 +58,13 @@ static struct irq_chip core_chip = {
};
static int prio_to_virq[NR_PRIORITY_IRQS];
+static struct irq_domain *core_domain;
asmlinkage void c6x_do_IRQ(unsigned int prio, struct pt_regs *regs)
{
- struct pt_regs *old_regs = set_irq_regs(regs);
-
- irq_enter();
-
- generic_handle_irq(prio_to_virq[prio]);
-
- irq_exit();
-
- set_irq_regs(old_regs);
+ __handle_domain_irq(core_domain, prio, true, regs);
}
-static struct irq_domain *core_domain;
-
static int core_domain_map(struct irq_domain *h, unsigned int virq,
irq_hw_number_t hw)
{
--
2.4.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] c67: irq: don't reimplement __handle_domain_irq()
2015-06-23 21:59 [PATCH] c67: irq: don't reimplement __handle_domain_irq() Felipe Balbi
@ 2015-06-25 19:29 ` Mark Salter
2015-06-25 19:35 ` Felipe Balbi
0 siblings, 1 reply; 3+ messages in thread
From: Mark Salter @ 2015-06-25 19:29 UTC (permalink / raw)
To: Felipe Balbi, Aurelien Jacquiot; +Cc: Linux Kernel Mailing List, linux-c6x-dev
On Tue, 2015-06-23 at 16:59 -0500, Felipe Balbi wrote:
> c6x_do_IRQ() had a reimplementation of
> __handle_domain_irq(), instead just call
> that.
Actually, the other way around. The __handle_domain_irq() function is
relatively recent compared to the c6x code.
Anyway, your patch needed a "select HANDLE_DOMAIN_IRQ" in c6x/Kconfig
to build. I'll add that myself and queue up your patch in the c6x tree.
Thanks!
>
> Signed-off-by: Felipe Balbi <balbi@ti.com>
> ---
>
> Patch wasn't even compile tested because I really don't
> have c6x GCC around. If someone could test the patch before
> applying, that would avoid regressions.
>
> arch/c6x/kernel/irq.c | 13 ++-----------
> 1 file changed, 2 insertions(+), 11 deletions(-)
>
> diff --git a/arch/c6x/kernel/irq.c b/arch/c6x/kernel/irq.c
> index 247e0eb5e467..a7f73bc765ac 100644
> --- a/arch/c6x/kernel/irq.c
> +++ b/arch/c6x/kernel/irq.c
> @@ -58,22 +58,13 @@ static struct irq_chip core_chip = {
> };
>
> static int prio_to_virq[NR_PRIORITY_IRQS];
> +static struct irq_domain *core_domain;
>
> asmlinkage void c6x_do_IRQ(unsigned int prio, struct pt_regs *regs)
> {
> - struct pt_regs *old_regs = set_irq_regs(regs);
> -
> - irq_enter();
> -
> - generic_handle_irq(prio_to_virq[prio]);
> -
> - irq_exit();
> -
> - set_irq_regs(old_regs);
> + __handle_domain_irq(core_domain, prio, true, regs);
> }
>
> -static struct irq_domain *core_domain;
> -
> static int core_domain_map(struct irq_domain *h, unsigned int virq,
> irq_hw_number_t hw)
> {
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] c67: irq: don't reimplement __handle_domain_irq()
2015-06-25 19:29 ` Mark Salter
@ 2015-06-25 19:35 ` Felipe Balbi
0 siblings, 0 replies; 3+ messages in thread
From: Felipe Balbi @ 2015-06-25 19:35 UTC (permalink / raw)
To: Mark Salter
Cc: Felipe Balbi, Aurelien Jacquiot, Linux Kernel Mailing List,
linux-c6x-dev
[-- Attachment #1: Type: text/plain, Size: 547 bytes --]
On Thu, Jun 25, 2015 at 03:29:50PM -0400, Mark Salter wrote:
> On Tue, 2015-06-23 at 16:59 -0500, Felipe Balbi wrote:
> > c6x_do_IRQ() had a reimplementation of
> > __handle_domain_irq(), instead just call
> > that.
>
> Actually, the other way around. The __handle_domain_irq() function is
> relatively recent compared to the c6x code.
>
> Anyway, your patch needed a "select HANDLE_DOMAIN_IRQ" in c6x/Kconfig
> to build. I'll add that myself and queue up your patch in the c6x tree.
Sorry about missing that. Thanks
--
balbi
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-06-25 19:36 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-23 21:59 [PATCH] c67: irq: don't reimplement __handle_domain_irq() Felipe Balbi
2015-06-25 19:29 ` Mark Salter
2015-06-25 19:35 ` Felipe Balbi
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.