Re: [PATCH v4 2/3] dt-bindings: gpio: gpio-mvebu: deprecate armadaxp-gpio

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

 



Hi Pali,

On 28/11/22 20:59, Pali Rohár wrote:
> On Thursday 26 May 2022 13:29:45 Chris Packham wrote:
>> Commit 5f79c651e81e ("arm: mvebu: use global interrupts for GPIOs on
>> Armada XP") the marvell,armadaxp-gpio compatible obsolete.
> No, marvell,armadaxp-gpio is required for per-cpu interrupt support. I fixed it recently:
> https://lore.kernel.org/linux-devicetree/20220714115515.5748-2-pali@xxxxxxxxxx/
> https://lore.kernel.org/linux-devicetree/20220714183328.4137-3-pali@xxxxxxxxxx/

I'll reply to these directly but when you changed the compatible to 
armadaxp you changed the meaning of the 2nd reg property.

>
>> The driver code still exists to handle the armadaxp behaviour but all
>> the in-tree boards use the marvell,armada-370-gpio.  Document the
>> marvell,armadaxp-gpio compatible as deprecated.
> For per-cpu interrupt support is marvell,armadaxp-gpio needed and
> therefore it cannot be deprecated.
OK. We can make it un-deprecated (as you say the code exists, just no 
board uses it currently).
>
> What can be deprecated is marvell,armada-370-gpio and it can be replaced
> by marvell,orion-gpio, which covers _all_ SoCs starting from the oldest
> one = Orion. See discussion for more details:
> https://lore.kernel.org/linux-devicetree/20220725200417.nwthxzvdv2bzd5ej@xxxxxxxxxxxxxx/

Yes I can see that they're treated the same internally. There had been a 
trend of adding specialization compatible strings just in case they were 
needed in the future even if there was currently no difference between 
the base variant and the newer version. That argument falls a bit flat 
since we never added armada-38x-gpio.

So what path forward would you like to see? I'd happily send a patch 
un-deprecating the armadaxp compatible. I'm a little hesitant to mark 
the armada-370 as deprecated given it's current usage with the in-tree 
dtses.

>
>> Signed-off-by: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx>
>> ---
>>
>> Notes:
>>      This could potentially be squashed into the first commit but it seemed
>>      more proper to do a straight 1:1 conversion of the old binding then
>>      clean things up to match reality.
>>      
>>      Changes in v4:
>>      - New
>>
>>   .../devicetree/bindings/gpio/gpio-mvebu.yaml  | 24 +++++++------------
>>   1 file changed, 8 insertions(+), 16 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/gpio/gpio-mvebu.yaml b/Documentation/devicetree/bindings/gpio/gpio-mvebu.yaml
>> index d1695e7bd825..459ec35864fe 100644
>> --- a/Documentation/devicetree/bindings/gpio/gpio-mvebu.yaml
>> +++ b/Documentation/devicetree/bindings/gpio/gpio-mvebu.yaml
>> @@ -21,17 +21,21 @@ properties:
>>             - enum:
>>                 - marvell,mv78200-gpio
>>                 - marvell,armada-370-gpio
>> -              - marvell,armadaxp-gpio
>>             - const: marvell,orion-gpio
>>   
>> +      - description: Deprecated binding
>> +        items:
>> +          - const: marvell,armadaxp-gpio
>> +          - const: marvell,orion-gpio
>> +        deprecated: true
>> +
>>     reg:
>>       description: |
>>         Address and length of the register set for the device. Not used for
>>         marvell,armada-8k-gpio.
>>   
>> -      For the "marvell,armadaxp-gpio" variant a second entry is expected for
>> -      the per-cpu registers. For other variants second entry can be provided,
>> -      for the PWM function using the GPIO Blink Counter on/off registers.
>> +      A second entry can be provided, for the PWM function using the GPIO Blink
>> +      Counter on/off registers.
>>       minItems: 1
>>       maxItems: 2
>>   
>> @@ -103,18 +107,6 @@ allOf:
>>         required:
>>           - reg
>>   
>> -  - if:
>> -      properties:
>> -        compatible:
>> -          contains:
>> -            const: marvell,armadaxp-gpio
>> -    then:
>> -      properties:
>> -        reg:
>> -          minItems: 2
>> -        reg-names:
>> -          minItems: 2
>> -
>>   unevaluatedProperties: true
>>   
>>   examples:
>> -- 
>> 2.36.1
>>




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux