Re: [PATCH v5 05/10] dt-bindings: irqchip: Introduce TISCI Interrupt router bindings
From: Lokesh Vutla
Date: Fri Feb 15 2019 - 22:32:57 EST
On 2/15/2019 9:46 PM, Tony Lindgren wrote:
> * Lokesh Vutla <lokeshvutla@xxxxxx> [190214 18:03]:
>> On 2/14/2019 11:16 PM, Tony Lindgren wrote:
>>> But I'd rather have a proper hardware based phandle + index
>>> type mapping in the dts if possible though.
>> The idea about sysfw here is that Linux is not aware of anything about
>> this device(Interrupt Router). It cannot even access any of its
>> registers. As a user Linux should know who is the parent to which the
>> Interrut router output should be configured. Then query sysfw about the
>> range of gic irqs allocated to it. Now for configuration, Linux should
>> pass the the input to interrupt router, gic irq no, and gic id(by which
>> sysfw uniquely identifies GIC interrupt controller with the SoC). Based
>> on these parameters Interrupt Router registers gets configured.
> If the interrupt router hardawre is hidden away from Linux,
> just leave it out of the device tree completely and have the
> interrupt controller driver request the routing.
Yes while requesting you should at-least specify which is your
destination interrupt-controller Else how does the sysfw even know to
whom the requester wants the routing to happen to. You do know that we
are dealing with a heterogeneous system where there are more the one
destination interrupt controllers(GIC, R5 VIM etc etc..). This is what
the DT property is specifying and we cannot query a device based on a name.
> The dts node for the interrupt controller should describe a
> proper Linux device, that is with reg entries and so on.
You are asking to just keep the compatible property :)
I am no where denying that. But the cases where the firmware does the
configuration DT spec clearly mentions about the interface.
Please take a look at arm-psci devicetree binding documentation where
the function ids are represented using which each psci function is invoked.
Thanks and regards,