Re: [PATCH] dt-bindings: power: reset: restart-handler: add common schema

From: Krzysztof Kozlowski
Date: Thu Sep 08 2022 - 03:28:50 EST


On 07/09/2022 18:32, Pali Rohár wrote:
> On Wednesday 07 September 2022 14:36:30 Krzysztof Kozlowski wrote:
>> Add common schema for restart and shutdown handlers, so they all use
>> same meaning of "priority" field. The Linux drivers already have this
>> property and some systems want to customize it per-board in DTS.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
>>
>> ---
>>
>> See also:
>> https://lore.kernel.org/all/8fe93da3-f768-16ae-7025-1cfa97a42b27@xxxxxxxxxx/
>> https://lore.kernel.org/all/20220831081715.14673-1-pali@xxxxxxxxxx/
>> ---
>> .../bindings/power/reset/gpio-restart.yaml | 13 ++------
>> .../bindings/power/reset/restart-handler.yaml | 30 +++++++++++++++++++
>> 2 files changed, 33 insertions(+), 10 deletions(-)
>> create mode 100644 Documentation/devicetree/bindings/power/reset/restart-handler.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/power/reset/gpio-restart.yaml b/Documentation/devicetree/bindings/power/reset/gpio-restart.yaml
>> index a72d5c721516..d3d18e0f5db3 100644
>> --- a/Documentation/devicetree/bindings/power/reset/gpio-restart.yaml
>> +++ b/Documentation/devicetree/bindings/power/reset/gpio-restart.yaml
>> @@ -25,6 +25,9 @@ description: >
>> inactive-delay, the GPIO is driven active again. After a delay specified by wait-delay, the
>> restart handler completes allowing other restart handlers to be attempted.
>>
>> +allOf:
>> + - $ref: restart-handler.yaml#
>> +
>> properties:
>> compatible:
>> const: gpio-restart
>> @@ -41,16 +44,6 @@ properties:
>> in its inactive state.
>>
>> priority:
>> - $ref: /schemas/types.yaml#/definitions/uint32
>> - description: |
>> - A priority ranging from 0 to 255 (default 129) according to the following guidelines:
>> -
>> - 0: Restart handler of last resort, with limited restart capabilities.
>> - 128: Default restart handler; use if no other restart handler is expected to be available,
>> - and/or if restart functionality is sufficient to restart the entire system.
>> - 255: Highest priority restart handler, will preempt all other restart handlers.
>> - minimum: 0
>> - maximum: 255
>> default: 129
>>
>> active-delay:
>> diff --git a/Documentation/devicetree/bindings/power/reset/restart-handler.yaml b/Documentation/devicetree/bindings/power/reset/restart-handler.yaml
>> new file mode 100644
>> index 000000000000..f5d22ca0cd45
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/power/reset/restart-handler.yaml
>> @@ -0,0 +1,30 @@
>> +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/power/reset/restart-handler.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Restart and shutdown handler generic binding
>> +
>> +maintainers:
>> + - Sebastian Reichel <sre@xxxxxxxxxx>
>> +
>> +description:
>> + Restart and shutdown handler device is responsible for powering off the
>> + system, e.g. my cutting off the power. System might have several restart
>> + handlers, which usually are tried from most precise to last resort.
>> +
>> +properties:
>> + priority:
>> + $ref: /schemas/types.yaml#/definitions/uint32
>
> IIRC priority is signed integer number, not unsigned.

Although technically in the kernel it is int, all existing kernel users
assign here unsigned number and existing bindings were unsigned int, so
I don't think there is benefit to change it to signed.

Best regards,
Krzysztof