From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: Mathieu Rondonneau <mathieu_rondonneau@hotmail.com>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai] Support for Raspberry PI 2 B (devm_request_threaded_irq)
Date: Wed, 4 Nov 2015 08:04:14 +0100 [thread overview]
Message-ID: <20151104070414.GD24848@hermes.click-hack.org> (raw)
In-Reply-To: <BLU437-SMTP10132C0DA57E69E6D1C8359F02A0@phx.gbl>
On Tue, Nov 03, 2015 at 07:18:37PM -0800, Mathieu Rondonneau wrote:
> On 15-11-02 07:15 AM, Philippe Gerum wrote:
> > On 11/02/2015 06:23 AM, Mathieu Rondonneau wrote:
> >> On 15-11-01 07:21 PM, Mathieu Rondonneau wrote:
> >>> On 15-11-01 06:58 PM, Mathieu Rondonneau wrote:
> >>>> On 15-10-31 08:58 PM, Mathieu Rondonneau wrote:
> >>>>> Hi,
> >>>>>
> >>>>> irq handlers registered with devm_request_threaded_irq does not get
> >>>>> triggered when interrupt fires.
> >>>>>
> >>>>> The mmc driver uses this (can not load the rootfs).
> >>>>> Only the IPIPE patch is enabled.
> >>>>> the armctrl chipirq is triggering the .ack handler instead so the
> >>>>> interrupt is happening.
> >>>>>
> >>>>> Any suggestion on where I should look? how is this supported by the
> >>>>> ipipe layer?
> >>>>>
> >>>>> Thanks,
> >>>>> -Mathieu
> >>>>
> >>>> I think I might have answered my own question.
> >>>> Looks like I need to use ipipe_request_irq() instead.
> >>>>
> >>>> Regards,
> >>>> -Mathieu
> >>> mmmm it is not true, it seems we still need a
> >>> ipipe_request_threaded_irq() to call the ackfn, put the handler in the
> >>> queue and wake up the thread once handler is executed. Or user will have
> >>> to move this functionality into their driver's IRQ handler.
> >>>
> >>> It strangely looks like ipipe_request_irq's idea is similar to what
> >>> request_threaded_irq is already doing (delaying IRQ process later).
> >>>
> >>> -Mathieu
> >> Looks like my bigger problem is that the handler_level_irq is not
> >> called. Only the timer handler is called (handler_percpu_devid_irq).
> >
> > Which may mean that the regular IRQ top half for that interrupt source
> > is not connected to the pipeline. You may want to check whether the
> > irqchip handling that device's IRQs has been made aware of the interrupt
> > pipeline.
> >
>
> Thanks for replying Philippe,
> This is the think, I did change the arch_irq_default_handler to call the
> __ipipe_grab_irq and __ipipe_grab_ipi.
> Is that what you are referring to when you say "interrupt source is not
> connected to the pipile", that's what __ipipe_grab_xxx does isn't it?
>
> Obviously I am still missing something.
> If I use irq_set_chained_handler in the driver then the handler gets
> called but it's just replacing the handler_irq by the driver one.
> When I use request_irq then it does not call my handler (the
> action.handler one).
> I will keep looking.
This is explained here:
http://xenomai.org/2014/09/porting-xenomai-dual-kernel-to-a-new-arm-soc/#GPIOs_as_interrupt_sources
and here:
http://xenomai.org/2014/09/porting-xenomai-dual-kernel-to-a-new-arm-soc/#CONFIG_MULTI_IRQ_HANDLER
Chained handlers have to call ipipe_handle_demuxed_irq instead of
generic_handle_irq.
And the arch irq handler has to call ipipe_handle_multi_irq or
ipipe_handle_multi_ipi instead of handle_IRQ
--
Gilles.
https://click-hack.org
next prev parent reply other threads:[~2015-11-04 7:04 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <56358DE3.8030308@hotmail.com>
2015-11-02 2:58 ` [Xenomai] Support for Raspberry PI 2 B (devm_request_threaded_irq) Mathieu Rondonneau
2015-11-02 3:21 ` Mathieu Rondonneau
2015-11-02 5:23 ` Mathieu Rondonneau
2015-11-02 15:15 ` Philippe Gerum
2015-11-04 3:18 ` Mathieu Rondonneau
2015-11-04 7:04 ` Gilles Chanteperdrix [this message]
2015-11-05 0:51 ` Mathieu Rondonneau
2015-11-05 6:08 ` [Xenomai] Support for Raspberry PI 2 B Mathieu Rondonneau
2015-11-08 5:55 ` Mathieu Rondonneau
2015-11-08 8:42 ` Gilles Chanteperdrix
2015-11-08 17:04 ` Mathieu Rondonneau
2015-11-08 17:10 ` Gilles Chanteperdrix
2015-11-08 17:20 ` Mathieu Rondonneau
2015-11-08 17:26 ` Gilles Chanteperdrix
2015-11-08 17:36 ` Mathieu Rondonneau
2015-11-08 17:45 ` Gilles Chanteperdrix
2015-11-08 21:47 ` Mathieu Rondonneau
2015-11-08 23:09 ` Gilles Chanteperdrix
2015-11-09 0:54 ` Mathieu Rondonneau
2015-11-09 11:45 ` Gilles Chanteperdrix
2015-11-10 1:10 ` Mathieu Rondonneau
2015-11-08 23:22 ` Gilles Chanteperdrix
2015-11-09 0:56 ` Mathieu Rondonneau
2015-11-02 15:12 ` [Xenomai] Support for Raspberry PI 2 B (devm_request_threaded_irq) Philippe Gerum
2015-11-01 3:58 Mathieu Rondonneau
2015-11-02 16:27 ` Gilles Chanteperdrix
2015-11-04 3:11 ` Mathieu Rondonneau
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=20151104070414.GD24848@hermes.click-hack.org \
--to=gilles.chanteperdrix@xenomai.org \
--cc=mathieu_rondonneau@hotmail.com \
--cc=xenomai@xenomai.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.