[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <575ECE0F.5090504@laposte.net>
Date: Mon, 13 Jun 2016 17:15:27 +0200
From: Sebastian Frias <sf84@...oste.net>
To: Marc Zyngier <marc.zyngier@....com>
Cc: Mason <slash.tmp@...e.fr>, Thomas Gleixner <tglx@...utronix.de>,
LKML <linux-kernel@...r.kernel.org>,
Grygorii Strashko <grygorii.strashko@...com>,
Sricharan R <r.sricharan@...com>,
Mans Rullgard <mans@...sr.com>
Subject: Re: Using irq-crossbar.c
Hi Marc,
Thanks for your input, please find my comments below.
On 06/11/2016 11:58 AM, Marc Zyngier wrote:
>> I think Sebastian is even more baffled by the DT mess
>> (sorry, intricacies) than I am.
>
> This mess is what has saved us from the apocalypse 5 years ago, and
> describing a complex system is not easy (what a surprise...). If you
> just want to apply recipes without understanding the underlying
> constraints, you're in for a lot of pain.
Nobody said we wanted a recipe, but it would help to have examples of each of the configurations supported.
Indeed, there is effort in writing the DT bindings and even Documentation/IRQ-domain.txt yet I did not see example drivers for the different configurations.
Also, it is difficult to know what is the recommended way, since old APIs are kept for a while.
APIs are usually extended/designed around specific cases, so there must be examples, but they are not easy to find.
>
>> The base file he was referring to is:
>>
>> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/tango4-common.dtsi
>
> I know which file that is, it is mentioned in the diff. I was merely
> trying to point out the glaring mistakes that could be enough for a
> interrupt controller hierarchy to be completely non-functional:
>
> - Your crossbar doesn't have a #interrupt-cells property. How do you
> expect the interrupt specifiers to be interpreted?
Thanks for the pointer, actually, after adding "#interrupt-cells = <3>;" I can see the driver getting requests for domain maps and xlates :-)
> - You've changed the default interrupt controller to be your crossbar.
> Which means that all the sub-nodes are inheriting it. Have you
> checked that this was valid for all of these nodes?
What do you mean with "valid for all these nodes"? All HW irq lines go to the crossbar.
>
> And as it has been pointed out before, you seem to be reusing an
> existing driver. Do you know for sure that the usage constraints are
> similar?
It is not being reused as is, I just thought (incorrectly apparently) that it was a good example for our case.
Best regards,
Sebastian
Powered by blists - more mailing lists