Re: [PATCH v3] dt-bindings: power: rockchip: Convert to json-schema

From: Enric Balletbo i Serra
Date: Sun Oct 11 2020 - 06:04:04 EST




On 11/10/20 11:56, Enric Balletbo i Serra wrote:
> Hi Rob,
>
> Many thanks for your comments, some questions below.
>
> On 7/10/20 17:11, Rob Herring wrote:
>> On Mon, Sep 21, 2020 at 11:29:51AM +0200, Enric Balletbo i Serra wrote:
>>> Convert the soc/rockchip/power_domain.txt binding document to json-schema
>>> and move to the power bindings directory.
>>>
>>> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@xxxxxxxxxxxxx>
>>> ---
>>>
>>> Changes in v3:
>>> - Fixed tab errors found by bot
>>>
>>> Changes in v2:
>>> - Fixed a warning that says that 'syscon' should not be used alone.
>>> - Use patternProperties to define a new level for power-domains.
>>> - Add const values for power-domain-cells, address-cells, etc.
>>>
>>> .../power/rockchip,power-controller.yaml | 207 ++++++++++++++++++
>>> .../bindings/soc/rockchip/power_domain.txt | 136 ------------
>>> 2 files changed, 207 insertions(+), 136 deletions(-)
>>> create mode 100644 Documentation/devicetree/bindings/power/rockchip,power-controller.yaml
>>> delete mode 100644 Documentation/devicetree/bindings/soc/rockchip/power_domain.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/power/rockchip,power-controller.yaml b/Documentation/devicetree/bindings/power/rockchip,power-controller.yaml
>>> new file mode 100644
>>> index 000000000000..b23ea37e2a08
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/power/rockchip,power-controller.yaml
>>> @@ -0,0 +1,207 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/power/rockchip,power-controller.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Rockchip Power Domains
>>> +
>>> +maintainers:
>>> + - Caesar Wang <wxt@xxxxxxxxxxxxxx>
>>> + - Heiko Stuebner <heiko@xxxxxxxxx>
>>> +
>>> +description: |
>>> + Rockchip processors include support for multiple power domains which can be
>>> + powered up/down by software based on different application scenes to save power.
>>> +
>>> + Power domains contained within power-controller node are generic power domain
>>> + providers documented in Documentation/devicetree/bindings/power/power-domain.yaml.
>>> +
>>> + IP cores belonging to a power domain should contain a 'power-domains'
>>> + property that is a phandle for the power domain node representing the domain.
>>> +
>>> +properties:
>>> + $nodename:
>>> + const: power-controller
>>> +
>>> + compatible:
>>> + enum:
>>> + - rockchip,px30-power-controller
>>> + - rockchip,rk3036-power-controller
>>> + - rockchip,rk3066-power-controller
>>> + - rockchip,rk3128-power-controller
>>> + - rockchip,rk3188-power-controller
>>> + - rockchip,rk3228-power-controller
>>> + - rockchip,rk3288-power-controller
>>> + - rockchip,rk3328-power-controller
>>> + - rockchip,rk3366-power-controller
>>> + - rockchip,rk3368-power-controller
>>> + - rockchip,rk3399-power-controller
>>> +
>>> + '#power-domain-cells':
>>> + const: 1
>>> +
>>> + '#address-cells':
>>> + const: 1
>>> +
>>> + '#size-cells':
>>> + const: 0
>>> +
>>> +patternProperties:
>>> + "^power-domain@[0-9]+$":
>>
>> unit-addresses are hex.
>>
>
> As explained in the description of 'reg' is more a power domain index than a
> hexadecimal address. Same as done in
> Documentation/devicetree/bindings/power/fsl,imx-gpcv2.yaml
>
> Use hex pattern will give a lot of errors, i.e 'pd_edp@25' and many others will
> not match the regexes '^power-domain@[0-9a-f]+$'
>
> Is the hex notation a must here? In that case, I assume I should change all the
> power/rk3*power.h includes to use that notation.
>

Oops, forget about this part, not enough caffeine this morning, I was confused,
sorry.

[snip]