Re: [PATCH v5 05/10] dt-bindings: irqchip: Introduce TISCI Interrupt router bindings
From: Lokesh Vutla <hidden>
Date: 2019-02-16 03:30:28
Also in:
linux-arm-kernel, lkml
Hi Tony, On 2/15/2019 9:46 PM, Tony Lindgren wrote:
Hi, * Lokesh Vutla [off-list ref] [190214 18:03]:quoted
On 2/14/2019 11:16 PM, Tony Lindgren wrote:quoted
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[1] 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. [1] https://github.com/devicetree-org/devicetree-specification/releases/download/v0.2/devicetree-specification-v0.2.pdf Thanks and regards, Lokesh