[PATCH 03/12] dt-bindings: mfd: renesas,rzg3s-vbattb: Document VBATTB
Krzysztof Kozlowski
krzk at kernel.org
Mon Jun 17 01:10:30 PDT 2024
On 17/06/2024 09:16, claudiu beznea wrote:
>
>
> On 16.06.2024 10:38, Krzysztof Kozlowski wrote:
>> On 14/06/2024 09:19, Claudiu wrote:
>>> From: Claudiu Beznea <claudiu.beznea.uj at bp.renesas.com>
>>
>>> +
>>> +maintainers:
>>> + - Claudiu Beznea <claudiu.beznea.uj at bp.renesas.com>
>>> +
>>> +properties:
>>> + compatible:
>>> + items:
>>> + - const: renesas,rzg3s-vbattb
>>> + - const: syscon
>>> + - const: simple-mfd
>>
>> No, mfd does no look good. That's not a simple device anymore and you
>> claim here child does not need vbat bclk, power domains and resets? That
>> would be a big surprise, although technically possible.
>
> I wasn't sure how this MFD will be received by the Renesas maintainers so I
> kept it simple for this version.
>
> In theory the VBAT clk, power domain and resets are specific to VBAT module
> itself but, indeed, the child cannot work w/o these.
>
>>
>> Please clarify: which of parent resources are needed for children?
>
> VBAT clock, power domain are needed. Reset, too. In the current
> implementation the reset is deasserted though parent by calling the
> syscon_node_to_regmap(np->parent) in the clock driver.
Then you must drop simple-mfd. It's not simple-mfd if children needs
parent's resources.
>
>>
>> ...
>>
>>> +
>>> +additionalProperties: false
>>> +
>>> +examples:
>>> + - |
>>> + #include <dt-bindings/clock/r9a08g045-cpg.h>
>>> + #include <dt-bindings/interrupt-controller/arm-gic.h>
>>> +
>>> + vbattb: vbattb at 1005c000 {
>>> + compatible = "renesas,rzg3s-vbattb", "syscon", "simple-mfd";
>>> + reg = <0x1005c000 0x1000>;
>>> + ranges = <0 0 0x1005c000 0 0x1000>;
>>> + interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
>>> + interrupt-names = "tampdi";
>>> + clocks = <&cpg CPG_MOD R9A08G045_VBAT_BCLK>;
>>> + clock-names = "bclk";
>>> + power-domains = <&cpg>;
>>> + resets = <&cpg R9A08G045_VBAT_BRESETN>;
>>> + #address-cells = <2>;
>>> + #size-cells = <2>;
>>> + status = "disabled";
>>
>> Drop
>
> Could you please clarify this? Would you want me to drop the full node
> (same for clock-controller node)?
>
> Can you point me an example that you are thinking about?
The exact line I commented under.
There is never status in any example. Please open any other binding or
example-schema.
Best regards,
Krzysztof
More information about the linux-arm-kernel
mailing list