[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160317195509.GF2831@piout.net>
Date: Thu, 17 Mar 2016 20:55:09 +0100
From: Alexandre Belloni <alexandre.belloni@...e-electrons.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Boris Brezillon <boris.brezillon@...e-electrons.com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-rt-users@...r.kernel.org,
Nicolas Ferre <nicolas.ferre@...el.com>
Subject: Re: [PATCH 4.4-rt2] fix
arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch
Hi Thomas,
On 20/01/2016 at 12:07:30 +0100, Thomas Gleixner wrote :
> Well freeing the irq from that context in RT only works because its called
> before SYSTEM_STATE=RUNNING. So no, this was wrong forever.
>
> The issue we are dealing with is that the timer interrupt is shared with the
> uart. So the timer has IRQ_NO_THREAD set and the uart interrupt gets force
> threaded. So that results in a failure to request the interrupt for the
> UART. That's not RT specific, that already happens in mainline if you add
> 'threadirqs' to the command line.
>
> So until the DT folks come to senses and we get that dummy demux chip done, I
> came up with the following - completely untested - solution.
>
> The downside of this is, that the timer will be delayed until the uart thread
> returns, but with the replacement clockevent in place on RT that's a non
> issue. For mainline it's obviously better than what we have now.
>
I've tested it and it seems to work properly on the few platform where I
can reproduce the issue. What is your plan regarding upstreaming? I
guess you can split and take the resulting patches through your tree.
--
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
Powered by blists - more mailing lists