From: gregory.clement@free-electrons•com (Gregory CLEMENT)
To: linux-arm-kernel@lists•infradead.org
Subject: MVNETA irq with backport-3.8
Date: Tue, 07 May 2013 23:27:48 +0200 [thread overview]
Message-ID: <518971D4.5000603@free-electrons.com> (raw)
In-Reply-To: <51892E87.5020903@itooo.com>
Hi Greg,
On 05/07/2013 06:40 PM, Greg wrote:
> Le 07/05/2013 18:18, Thomas Petazzoni a ?crit :
>> Dear Greg,
>>
>> On Tue, 07 May 2013 16:14:01 +0200, Greg wrote:
>>
>>> I'm trying to boot off the the backport-3.-8 kernel with armada-xp-db DT
>>> file.
>>>
>>> When eth0 is brought up (I'm booting on NFS) the mvneta driver fails in
>>> mvneta_open, with the following error :
>>>> mvneta d0070000.ethernet eth0: cannot request irq 25
>>> The oddness is this is not the actual IRQ to be requested, and the DTS
>>> files explicitly specify the IRQ is 8 for this device.
>>>
>>> I'm not familiar with the DT system, where should I start looking to
>>> find the source of the problem ?
>> This issue should be fixed by:
>>
>> commit 7f23f62fc31c5c97947414c0937a72e08a947a41
>> Author: Gregory CLEMENT <gregory.clement@free-electrons•com>
>> Date: Wed Mar 20 16:09:35 2013 +0100
>>
>> arm: mvebu: Use local interrupt only for the timer 0
>>
>> The commit 3a6f08a37 "arm: mvebu: Add support for local interrupt",
>> managed the 28th first interrupts as local interrupt to match the
>> hardware specification. Among these interrupts there are the Gigabits
>> Ethernet ones used by the mvneta driver. Unfortunately the state of
>> the percpu_irq API prevents the driver to use it.
>>
>> Indeed the interrupts have to be freed when the .stop() function is
>> called. As the free_percpu_irq() function don't disable the interrupt
>> line, we have to do it on each CPU before calling this. The function
>> disable_percpu_irq() only disable the percpu on the current CPU and
>> there is no function which allows to disable a percpu irq on a given
>> CPU. Waiting for the extension of the percpu_irq API, this fix allows
>> to use again the mvneta driver.
>>
>> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons•com>
>> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons•com>
>> Tested-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi•com>
>> Signed-off-by: Jason Cooper <jason@lakedaemon•net>
>>
>> which is part of the backport-3.8 branch, so I'm a bit confused. Are
>> you sure you're using the latest backport-3.8 branch? If so, then I'll
>> do a test here to check this.
>>
> By the way, the patch IS applied to the source tree I'm compiling.
> I can see this in arch/arm/mach-mvebu/irq-armada-370-xp.c which is using
> ARMADA_370_XP_TIMER0_PER_CPU_IRQ instead of ARMADA_370_XP_MAX_PER_CPU_IRQS
I built and tested backport-3.8 and indeed the Ethernet is broken.
It was cause by a recent batch of fixes that I added, now I have to
figure out why they have broken the ethernet whereas they were supposed
to make it work better!
Regards,
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
next prev parent reply other threads:[~2013-05-07 21:27 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-07 14:14 MVNETA irq with backport-3.8 Greg
2013-05-07 15:27 ` Maxime Ripard
2013-05-07 16:01 ` Greg
2013-05-07 16:18 ` Thomas Petazzoni
2013-05-07 16:33 ` Greg
2013-05-07 16:40 ` Greg
2013-05-07 21:27 ` Gregory CLEMENT [this message]
2013-05-07 21:42 ` Willy Tarreau
2013-05-07 21:54 ` Gregory CLEMENT
2013-05-07 22:12 ` Willy Tarreau
2013-05-10 16:43 ` Greg
2013-05-07 21:35 ` Willy Tarreau
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=518971D4.5000603@free-electrons.com \
--to=gregory.clement@free-electrons$(echo .)com \
--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