Thank you for your contribution! Sashiko AI review found 2 potential issue(s) 
to consider:
- [Medium] arm64: dts: qcom: sm6350-lena: stray unused regulator-lcdb-dummy node
- [Medium] arm64: dts: qcom: sm6350-lena: invalid led-max-microamp in 
pm6150l_flash
--

commit e7731bb19fd5c211a5eb8caeb5f7301cbd391239
Author: erebion <[email protected]>

arm64: dts: qcom: sm6350-lena: rename touch-en-regulator

This commit renames touch-en-regulator to regulator-touch-en in
sm6350-sony-xperia-lena-pdx213.dts to keep fixed-regulator nodes sorted
together, and also adds a regulator-lcdb-dummy fixed-regulator node.

> diff --git a/arch/arm64/boot/dts/qcom/sm6350-sony-xperia-lena-pdx213.dts 
> b/arch/arm64/boot/dts/qcom/sm6350-sony-xperia-lena-pdx213.dts
> index 6942a117d41cf..9295b2e6f179f 100644
> --- a/arch/arm64/boot/dts/qcom/sm6350-sony-xperia-lena-pdx213.dts
> +++ b/arch/arm64/boot/dts/qcom/sm6350-sony-xperia-lena-pdx213.dts
> @@ -46,7 +46,16 @@ key-volume-down {
>               };
>       };
>  
> -     touch_en_vreg: touch-en-regulator {
> +     lcdb_dummy: regulator-lcdb-dummy {
> +             compatible = "regulator-fixed";
> +             regulator-name = "lcdb_dummy";
> +             regulator-min-microvolt = <5500000>;
> +             regulator-max-microvolt = <5500000>;
> +             regulator-always-on;
> +             regulator-boot-on;
> +     };

[Severity: Medium]
Was regulator-lcdb-dummy included in this patch by mistake?

The commit message states that this change only renames touch-en-regulator to
regulator-touch-en, and nothing in sm6350-sony-xperia-lena-pdx213.dts or its
included dtsi files references the lcdb_dummy phandle, which results in an
unused always-on fixed regulator being registered at boot.

> +
> +     touch_en_vreg: regulator-touch-en {
>               compatible = "regulator-fixed";
>               regulator-name = "touch_en_vreg";
>               gpio = <&tlmm 10 GPIO_ACTIVE_HIGH>;

[Severity: Medium]
Further down in arch/arm64/boot/dts/qcom/sm6350-sony-xperia-lena-pdx213.dts,
is led-max-microamp in the pm6150l_flash node configured with an out-of-range
value?

arch/arm64/boot/dts/qcom/sm6350-sony-xperia-lena-pdx213.dts:
&pm6150l_flash {
        status = "okay";

        led-0 {
                function = LED_FUNCTION_FLASH;
                color = <LED_COLOR_ID_WHITE>;
                led-sources = <1>;
                led-max-microamp = <1500000>;
                flash-max-microamp = <1000000>;
                flash-max-timeout-us = <1280000>;
        };
};

In Documentation/devicetree/bindings/leds/qcom,spmi-flash-led.yaml,
led-max-microamp specifies the maximum continuous torch current, which is
limited to 500000 uA for a single channel (or 1000000 uA across two ganged
channels):

      led-max-microamp:
        anyOf:
          - minimum: 5000
            maximum: 500000
            multipleOf: 5000
          - minimum: 10000
            maximum: 1000000
            multipleOf: 10000

Setting led-max-microamp to 1500000 uA on a single channel causes dtbs_check
validation to fail, configures the continuous torch current higher than
flash-max-microamp (1000000 uA), and causes qcom_flash_register_led_device()
in drivers/leds/flash/leds-qcom-flash.c to clamp the torch current to the
500000 uA PMIC channel limit:

        current_ua = min_t(u32, current_ua, TORCH_CURRENT_MAX_UA * 
led->chan_count);
        led->max_torch_current_ma = current_ua / UA_PER_MA;

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=2

Reply via email to