From: arnd@arndb•de (Arnd Bergmann)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH 3/8] ARM: sirf: move irq driver to drivers/irqchip
Date: Mon, 25 Mar 2013 09:41:14 +0000 [thread overview]
Message-ID: <201303250941.14399.arnd@arndb.de> (raw)
In-Reply-To: <CAGsJ_4wUtgEGY9fc_RGq4m+=wzzgS1MxCOCLRm6Xh+-5kVMAdQ@mail.gmail.com>
On Monday 25 March 2013, Barry Song wrote:
> 2013/3/20, Arnd Bergmann <arnd@arndb•de>:
> > +static asmlinkage void __exception_irq_entry sirfsoc_handle_irq(struct
> > pt_regs *regs)
> > +{
> > + void __iomem *base = sirfsoc_irqdomain->host_data;
> > + u32 irqstat, irqnr;
> > +
> > + irqstat = readl_relaxed(base + SIRFSOC_INIT_IRQ_ID);
> > + irqnr = irq_find_mapping(sirfsoc_irqdomain, irqstat & 0xff);
> > +
> > + handle_IRQ(irqnr, regs);
> > +}
> > +
> > +static void __init sirfsoc_irq_init(struct device_node *np, struct
> > device_node *parent)
>
> this function should be changed from void to int.
Right.
> > +{
> > + void __iomem *base = of_iomap(np, 0);
> > + if (!base)
> > + panic("unable to map intc cpu registers\n");
> > +
> > + sirfsoc_irqdomain = irq_domain_add_linear(np, SIRFSOC_NUM_IRQS,
> > + &irq_domain_simple_ops, base);
>
> this breaks the hwirq and irq mapping. the hwirq 0 is mapped to
> no_irqs, then setup_irq will fail in
> drivers/clocksource/timer-prima2.c.
Hmm, I don't understand yet what is going on there. This should create
a domain with all dynamically allocated interrupt descriptors,
and the hwirq number is just local to the controller then.
Without patch 2 of the series, this would fail, because that interrupt
is not mapped, but as far as I can tell, we correctly instantiate
the domain here, so the irq_of_parse_and_map() in sirfsoc_of_timer_map
should return a valid interrupt number. Can you check what it returns
instead? Does it work if you revert to a legacy domain here?
Arnd
next prev parent reply other threads:[~2013-03-25 9:41 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-20 11:41 [PATCH 0/8] SIRF multiplatform support Arnd Bergmann
2013-03-20 11:41 ` [PATCH 1/8] pinctrl: sirf: convert to linear irq domain Arnd Bergmann
2013-03-20 14:28 ` Barry Song
2013-03-25 9:11 ` Barry Song
2013-03-25 9:33 ` Arnd Bergmann
2013-03-25 10:08 ` Barry Song
2013-03-20 11:41 ` [PATCH 2/8] ARM: sirf: fix prima2 interrupt lookup Arnd Bergmann
2013-03-25 5:44 ` Barry Song
2013-03-20 11:41 ` [PATCH 3/8] ARM: sirf: move irq driver to drivers/irqchip Arnd Bergmann
2013-03-25 9:19 ` Barry Song
2013-03-25 9:41 ` Arnd Bergmann [this message]
2013-03-25 9:56 ` Barry Song
2013-03-25 11:13 ` Arnd Bergmann
2013-03-20 11:41 ` [PATCH 4/8] ARM: sirf: enable sparse IRQ Arnd Bergmann
2013-03-25 10:33 ` Barry Song
2013-03-25 10:53 ` Arnd Bergmann
2013-03-20 11:41 ` [PATCH 5/8] ARM: sirf: move debug-macro.S to include/debug/sirf.S Arnd Bergmann
2013-03-25 9:44 ` Barry Song
2013-03-20 11:41 ` [PATCH 6/8] ARM: sirf: use clocksource_of infrastructure Arnd Bergmann
2013-03-25 9:27 ` Barry Song
2013-03-20 11:41 ` [PATCH 7/8] ARM: sirf: enable multiplatform support Arnd Bergmann
2013-03-25 10:22 ` Barry Song
2013-03-25 10:54 ` Arnd Bergmann
2013-03-20 11:41 ` [PATCH 8/8] ARM: sirf: enable support in multi_v7_defconfig Arnd Bergmann
2013-03-25 10:26 ` Barry Song
2013-03-20 12:28 ` [PATCH 0/8] SIRF multiplatform support Arnd Bergmann
2013-03-25 11:33 ` Arnd Bergmann
2013-03-26 6:17 ` Barry Song
2013-03-26 14:31 ` Arnd Bergmann
2013-03-27 1:48 ` Barry Song
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=201303250941.14399.arnd@arndb.de \
--to=arnd@arndb$(echo .)de \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox