Re: [PATCH 07/16] arm64: dts: arm: Fix GIC compatible names

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/05/2020 19:25, Marc Zyngier wrote:
> On Tue, 05 May 2020 17:52:03 +0100,
> Andre Przywara <andre.przywara@xxxxxxx> wrote:
>>
>> The GIC DT binding only allows a certain combination of DT compatible
>> strings, mostly just consisting of one name.
>>
>> Drop the combination of multiple names and go with the
>> "arm,cortex-a15-gic" name for GICv2, as this seems to be the most widely
>> accepted string. "arm,gic-400" would be more correct, but was introduced
>> much later into the kernel's GIC driver.
>>
>> Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx>
>> ---
>>  arch/arm64/boot/dts/arm/foundation-v8-gicv2.dtsi | 2 +-
>>  arch/arm64/boot/dts/arm/juno-base.dtsi           | 2 +-
>>  arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts       | 2 +-
>>  3 files changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/arm/foundation-v8-gicv2.dtsi b/arch/arm64/boot/dts/arm/foundation-v8-gicv2.dtsi
>> index 15fe81738e94..61a1750fcdd6 100644
>> --- a/arch/arm64/boot/dts/arm/foundation-v8-gicv2.dtsi
>> +++ b/arch/arm64/boot/dts/arm/foundation-v8-gicv2.dtsi
>> @@ -6,7 +6,7 @@
>>  
>>  / {
>>  	gic: interrupt-controller@2c001000 {
>> -		compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
>> +		compatible = "arm,cortex-a15-gic";
>>  		#interrupt-cells = <3>;
>>  		#address-cells = <2>;
>>  		interrupt-controller;
>> diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
>> index 3feefd61eb76..62392ab1f880 100644
>> --- a/arch/arm64/boot/dts/arm/juno-base.dtsi
>> +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
>> @@ -69,7 +69,7 @@
>>  	};
>>  
>>  	gic: interrupt-controller@2c010000 {
>> -		compatible = "arm,gic-400", "arm,cortex-a15-gic";
>> +		compatible = "arm,cortex-a15-gic";
> 
> Why? GIC-400 is definitely the most correct compatible string. I'd
> rather see this compatible being generalised to the models rather than
> only referencing the A15 GIC.

I agree that gic-400 is the far better name, but it was only introduced
in v3.16. So omitting arm,cortex-a15-gic would break any kernels before
that, which I would like to avoid.
It's actually a pity that we are so picky about the compatible listings,
because the existing combination is actually quite nice: we get
compatibility with older DT consumers, but still can say what it
actually is.
I wonder if I should introduce this combination to the GIC DT binding
instead, it seems like there are other users in the tree as well.

What do you think?

Cheers,
Andre

> 
>>  		reg = <0x0 0x2c010000 0 0x1000>,
>>  		      <0x0 0x2c02f000 0 0x2000>,
>>  		      <0x0 0x2c04f000 0 0x2000>,
>> diff --git a/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts b/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts
>> index c5d15cbd8cf6..f86f6451411f 100644
>> --- a/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts
>> +++ b/arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts
>> @@ -95,7 +95,7 @@
>>  	};
>>  
>>  	gic: interrupt-controller@2c001000 {
>> -		compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
>> +		compatible = "arm,cortex-a15-gic";
>>  		#interrupt-cells = <3>;
>>  		#address-cells = <0>;
>>  		interrupt-controller;
>> -- 
>> 2.17.1
>>
>>
> 
> Thanks,
> 
> 	M.
> 




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux