From: Paul Mundt <lethal@linux-sh.org>
To: linux-sh@vger.kernel.org
Subject: Re: kzm9g boot fail (was Re: irqdomain breaks ap4 boot)
Date: Mon, 20 Aug 2012 07:54:08 +0000 [thread overview]
Message-ID: <20120820075408.GA21643@linux-sh.org> (raw)
In-Reply-To: <502DDC97.5080501@kmckk.co.jp>
On Mon, Aug 20, 2012 at 12:41:28AM -0700, Kuninori Morimoto wrote:
>
> Hi Paul
> Cc Magnus
>
> > > > place. At least we know the irqdomain code isn't at fault anymore.
>
> I tried show irq number on "non-irqdomain kernel" and "irqdomain kernel".
> And compared these 2 kernel irq table.
> ("irqdomain kernel" doesn't have my quick hack patch => got WARNING)
>
> It were
> register_intc_controller(&intcs_desc);
> register_intc_controller(&intca_irq_pins_desc);
> register_intc_controller(&intc_pint0_desc);
> register_intc_controller(&intc_pint1_desc);
>
> 1st register_intc_controller()'s irq were
> irqdomain : from 448 to 680
> non-irqdomain : from 448 to 680
> 2nd register_intc_controller()'s irq were
> irqdomain : from 560 to 959 <> non-irqdomain : from 544 to 943 <
How are you getting these ranges?
The irqdomain ranges are calculated using evt2irq(), but it looks like
sh73a0 needs to use intcs_evt2irq()/to_intc_vect() for factoring in the
offsets. That offset factorization appears to be what is throwing this
out of range -- though why evt2irq() use on these vectors hasn't resulted
in issues before this I don't know.
Do you observe any difference by dropping evt2irq() bounding for the
linear range and simply using the tree type?
---
diff --git a/drivers/sh/intc/irqdomain.c b/drivers/sh/intc/irqdomain.c
index 3968f1c..5ba8ba7 100644
--- a/drivers/sh/intc/irqdomain.c
+++ b/drivers/sh/intc/irqdomain.c
@@ -44,6 +44,7 @@ static const struct irq_domain_ops intc_evt_ops = {
void __init intc_irq_domain_init(struct intc_desc_int *d,
struct intc_hw_desc *hw)
{
+#if 0
unsigned int irq_base, irq_end;
/*
@@ -62,6 +63,7 @@ void __init intc_irq_domain_init(struct intc_desc_int *d,
d->domain = irq_domain_add_linear(NULL, hw->nr_vectors,
&intc_evt_ops, NULL);
else
+#endif
d->domain = irq_domain_add_tree(NULL, &intc_evt_ops, NULL);
BUG_ON(!d->domain);
next prev parent reply other threads:[~2012-08-20 7:54 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-02 9:50 irqdomain breaks ap4 boot kuninori.morimoto.gx
2012-08-03 5:00 ` Paul Mundt
2012-08-09 4:28 ` Paul Mundt
2012-08-09 4:53 ` Kuninori Morimoto
2012-08-10 6:10 ` Kuninori Morimoto
2012-08-10 12:38 ` Paul Mundt
2012-08-17 5:54 ` kzm9g boot fail (was Re: irqdomain breaks ap4 boot) Tetsuyuki Kobayashi
2012-08-20 1:14 ` Kuninori Morimoto
2012-08-20 3:13 ` Paul Mundt
2012-08-20 4:19 ` Kuninori Morimoto
2012-08-20 4:19 ` Tetsuyuki Kobayashi
2012-08-20 4:38 ` Paul Mundt
2012-08-20 4:45 ` Kuninori Morimoto
2012-08-20 5:24 ` Paul Mundt
2012-08-20 5:33 ` Tetsuyuki Kobayashi
2012-08-20 6:13 ` Kuninori Morimoto
2012-08-20 6:24 ` Kuninori Morimoto
2012-08-20 6:30 ` Paul Mundt
2012-08-20 6:32 ` Tetsuyuki Kobayashi
2012-08-22 6:49 ` [PATCH] mmc: sh-mmcif: avoid Oops on spurious interrupts Guennadi Liakhovetski
2012-08-22 12:16 ` Tetsuyuki Kobayashi
2012-08-23 7:11 ` Guennadi Liakhovetski
2012-09-04 7:40 ` Tetsuyuki Kobayashi
2012-08-31 3:05 ` Tetsuyuki Kobayashi
2012-09-18 6:13 ` Tetsuyuki Kobayashi
2012-09-18 6:42 ` Guennadi Liakhovetski
2012-09-18 8:02 ` Tetsuyuki Kobayashi
2012-09-18 8:44 ` Tetsuyuki Kobayashi
2012-09-18 8:56 ` Guennadi Liakhovetski
2012-09-19 2:50 ` Tetsuyuki Kobayashi
2012-09-26 1:47 ` Tetsuyuki Kobayashi
2012-09-26 10:04 ` Chris Ball
2012-09-19 6:24 ` Chris Ball
2012-09-21 2:35 ` Tetsuyuki Kobayashi
2012-08-20 7:18 ` kzm9g boot fail (was Re: irqdomain breaks ap4 boot) Magnus Damm
2012-08-20 7:40 ` Paul Mundt
2012-08-20 7:41 ` Kuninori Morimoto
2012-08-20 7:54 ` Paul Mundt [this message]
2012-08-20 8:12 ` Kuninori Morimoto
2012-08-20 8:35 ` Kuninori Morimoto
2012-08-21 2:31 ` Kuninori Morimoto
2012-08-21 4:22 ` Tetsuyuki Kobayashi
2012-08-31 6:55 ` irqdomain breaks ap4 boot Tetsuyuki Kobayashi
2012-08-31 7:17 ` Simon Horman
2012-08-31 10:36 ` Paul Mundt
2012-09-18 2:15 ` Tetsuyuki Kobayashi
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=20120820075408.GA21643@linux-sh.org \
--to=lethal@linux-sh.org \
--cc=linux-sh@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).