Re: [PATCH v2] dt-bindings: mfd: sprd,sc2731: convert to YAML

Krzysztof Kozlowski
2024-10-30T06:43:07Z

On Tue, Oct 29, 2024 at 08:02:03PM +0100, Stanislav Jakubek wrote:

Thank you for your patch. There is something to discuss/improve.

> +description: |
> + Spreadtrum PMICs belonging to the SC27xx series integrate all mobile handset
> + power management, audio codec, battery management and user interface support
> + functions in a single chip. They have 6 major functional blocks:
> + - DCDCs to support CPU, memory
> + - LDOs to support both internal and external requirements
> + - Battery management system, such as charger, fuel gauge
> + - Audio codec
> + - User interface functions, such as indicator, flash LED and so on
> + - IC level interface, such as power on/off control, RTC, typec and so on
> +
> +properties:
> + $nodename:
> + pattern: '^pmic@[0-9a-f]+$'
> +
> + compatible:
> + enum:
> + - sprd,sc2720
> + - sprd,sc2721
> + - sprd,sc2723
> + - sprd,sc2730
> + - sprd,sc2731
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + interrupt-controller: true
> + spi-max-frequency: true

This means:
1. You forgot to ref spi-peripheral-props
2. This is not needed and use use unevaluatedProperties: false.

Just like all SPI devices.

Unless this is not SPI?

> +
> + '#address-cells':
> + const: 1
> +
> + '#interrupt-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> + regulators:
> + type: object
> + $ref: /schemas/regulator/sprd,sc2731-regulator.yaml#
> +
> +patternProperties:
> + "^adc@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/iio/adc/sprd,sc2720-adc.yaml#
> +
> + "^charger@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/power/supply/sc2731-charger.yaml#
> +
> + "^efuse@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/nvmem/sprd,sc2731-efuse.yaml#

I don't think this was merged. You still have dependency.

Try yourself - apply this patch on the maintainers tree and test it.

You can solve it by listing here compatibles and additionalProperties:
true (see Qcom mdss bindings)

> +
> + "^fuel-gauge@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/power/supply/sc27xx-fg.yaml#
> +
> + "^gpio@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/gpio/sprd,gpio-eic.yaml#
> +
> + "^led-controller@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/leds/sprd,sc2731-bltc.yaml#
> +
> + "^rtc@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/rtc/sprd,sc2731-rtc.yaml#
> +
> + "^vibrator@[0-9a-f]+$":
> + type: object
> + $ref: /schemas/input/sprd,sc27xx-vibrator.yaml#
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - interrupt-controller
> + - spi-max-frequency
> + - '#address-cells'

Keep consistent quotes, either ' or ".

> + - '#interrupt-cells'
> + - '#size-cells'

Best regards,
Krzysztof