From: sashiko-bot@kernel.org
To: erebion <erebion@erebion.eu>
Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH v3 12/12] arm64: dts: qcom: sm6350-lena: enable remaining i2c busses
Date: Sun, 01 Nov 2026 23:48:11 +0000 [thread overview]
Message-ID: <sashiko-outbox-192773@kernel.org> (raw)
In-Reply-To: <20261102-pdx213-upstream-3-v3-12-cdc3be96d257@erebion.eu>
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [Medium] arm64: dts: qcom: sm6350-lena: unrelated and incomplete GPU enablement
- [Medium] arm64: dts: qcom: sm6350-lena: wrong ADC channel in rear_cam_sensor
- [Medium] arm64: dts: qcom: sm6350-lena: invalid led-max-microamp in pm6150l_flash
- [Low] arm64: dts: qcom: sm6350-lena: undocumented unused lcdb_dummy regulator
--
commit dab0552e769e72745a887b1b9b15ebbca1b4c037
Author: erebion <erebion@erebion.eu>
arm64: dts: qcom: sm6350-lena: enable remaining i2c busses
This series enables peripheral, PMIC, thermal, LED, regulator, and bus nodes in the device tree for the Sony Xperia 10 III (sm6350-sony-xperia-lena-pdx213).
> 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 6e2bbf4f060ac..d2b3aa6e61ab6 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
[ ... ]
> @@ -44,7 +63,30 @@ 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: Low]
This isn't a bug, but commit e7731bb19fd5 ("arm64: dts: qcom: sm6350-lena:
rename touch-en-regulator") states that it only renames touch-en-regulator
to regulator-touch-en for sorting, while also adding this lcdb_dummy
regulator node.
Nothing in sm6350-sony-xperia-lena-pdx213.dts or sm6350.dtsi references
&lcdb_dummy. Was this node added by mistake, or should it be dropped until a
consumer uses it?
> +
> + msm_therm_sensor: thermal-sensor-msm {
> + compatible = "generic-adc-thermal";
> + #thermal-sensor-cells = <0>;
> + io-channels = <&pm6150l_adc ADC5_AMUX_THM2_100K_PU>;
> + io-channel-names = "sensor-channel";
> + };
> +
> + rear_cam_sensor: thermal-sensor-rear-cam {
> + compatible = "generic-adc-thermal";
> + #thermal-sensor-cells = <0>;
> + io-channels = <&pm6150l_adc ADC5_GPIO6_100K_PU>;
> + io-channel-names = "sensor-channel";
> + };
[Severity: Medium]
Does rear_cam_sensor fail to probe with -EINVAL here?
Under &pm6150l_adc below, the rear_cam_therm channel is defined on
channel@53 with reg = <ADC5_GPIO2_100K_PU> (since GPIO6 on PM6150L routes to
ADC5_GPIO2_100K_PU):
channel@53 {
reg = <ADC5_GPIO2_100K_PU>;
label = "rear_cam_therm";
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,ratiometric;
};
However, rear_cam_sensor requests io-channels = <&pm6150l_adc
ADC5_GPIO6_100K_PU>. When gadc_thermal_probe() requests the channel,
adc5_fwnode_xlate() in drivers/iio/adc/qcom-spmi-adc5.c searches the
configured channels on &pm6150l_adc:
for (i = 0; i < adc->nchannels; i++)
if (adc->chan_props[i].channel == iiospec->args[0])
return i;
return -EINVAL;
Because no channel is registered for ADC5_GPIO6_100K_PU (and
adc5_chans_pmic[] only defines ADC5_GPIO1_100K_PU through
ADC5_GPIO4_100K_PU), adc5_fwnode_xlate() returns -EINVAL and leaves
rear-cam-thermal without a working sensor.
Should rear_cam_sensor use ADC5_GPIO2_100K_PU instead of ADC5_GPIO6_100K_PU?
[ ... ]
> @@ -285,6 +470,21 @@ &gpi_dma1 {
> status = "okay";
> };
>
> +&gpu {
> + status = "okay";
> +};
> +
> +&gpu_zap_shader {
> + firmware-name = "qcom/sm6350/sony/pdx213/a615_zap.mbn";
> +};
[Severity: Medium]
Was enabling &gpu and &gpu_zap_shader intended to be part of commit
dab0552e769e ("arm64: dts: qcom: sm6350-lena: enable remaining i2c busses")?
In addition to not matching the commit description, &mdss in sm6350.dtsi
remains disabled:
mdss: display-subsystem@ae00000 {
...
status = "disabled";
mdss_mdp: display-controller@ae01000 {
compatible = "qcom,sm6350-dpu";
With the default drm/msm configuration (separate_gpu_kms = false),
adreno_probe() in drivers/gpu/drm/msm/adreno/adreno_device.c registers a
component and waits for the KMS master on mdss_mdp:
static int adreno_probe(struct platform_device *pdev)
{
if (of_device_is_compatible(pdev->dev.of_node, "amd,imageon") ||
msm_gpu_no_components())
return msm_gpu_probe(pdev, &a3xx_ops);
return component_add(&pdev->dev, &a3xx_ops);
}
Because &mdss is disabled, the component master never probes and the GPU
component never binds (and if adreno_remove() runs while unbound,
platform_get_drvdata(pdev) is NULL and dereferencing priv->kms_init crashes).
Should the &gpu and &gpu_zap_shader changes be dropped from this I2C patch?
[ ... ]
> +&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>;
> + };
> +};
[Severity: Medium]
Is led-max-microamp = <1500000> valid for a single flash channel here?
In Documentation/devicetree/bindings/leds/qcom,spmi-flash-led.yaml,
led-max-microamp (continuous torch current) is limited to 500000 uA for a
single channel or 1000000 uA for dual ganged channels, matching
TORCH_CURRENT_MAX_UA (500000) in drivers/leds/flash/leds-qcom-flash.c:
led-max-microamp:
anyOf:
- minimum: 5000
maximum: 500000
multipleOf: 5000
- minimum: 10000
maximum: 1000000
multipleOf: 10000
Setting led-max-microamp to 1500000 uA with led-sources = <1> fails
dtbs_check validation and sets the continuous torch current higher than both
the 500 mA hardware limit and the 1000000 uA flash-max-microamp strobe
current.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261102-pdx213-upstream-3-v3-0-cdc3be96d257@erebion.eu?part=12
next prev parent reply other threads:[~2026-11-01 23:48 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-01 23:32 [PATCH v3 00/12] Enable more nodes for the Xperia 10 III erebion
2026-11-01 23:32 ` [PATCH v3 01/12] arm64: dts: qcom: sm6350-lena: Add flash LED erebion
2026-11-01 23:38 ` sashiko-bot
2026-11-02 8:47 ` erebion
2026-11-01 23:32 ` [PATCH v3 02/12] arm64: dts: qcom: sm6350-lena: rename touch-en-regulator erebion
2026-11-01 23:38 ` sashiko-bot
2026-11-02 8:36 ` erebion
2026-11-02 11:57 ` Konrad Dybcio
2026-11-01 23:32 ` [PATCH v3 03/12] arm64: dts: qcom: sm6350-lena: Add qcom,rmtfs-mem node erebion
2026-11-02 11:58 ` Konrad Dybcio
2026-11-01 23:32 ` [PATCH v3 04/12] arm64: dts: qcom: sm6350-lena: Enable ADSP, CDSP, IPA & MPSS erebion
2026-11-01 23:41 ` sashiko-bot
2026-11-02 1:23 ` erebion
2026-11-02 11:59 ` Konrad Dybcio
2026-11-01 23:32 ` [PATCH v3 05/12] arm64: dts: qcom: sm6350-lena: Enable Bluetooth erebion
2026-11-01 23:45 ` sashiko-bot
2026-11-02 0:41 ` erebion
2026-11-01 23:32 ` [PATCH v3 06/12] arm64: dts: qcom: sm6350-lena: Enable wifi erebion
2026-11-01 23:32 ` [PATCH v3 07/12] arm64: dts: qcom: sm6350-lena: Enable PM7250B erebion
2026-11-02 11:59 ` Konrad Dybcio
2026-11-01 23:32 ` [PATCH v3 08/12] arm64: dts: qcom: sm6350-lena: Enable PMK8350 erebion
2026-11-01 23:42 ` sashiko-bot
2026-11-02 11:08 ` erebion
2026-11-01 23:32 ` [PATCH v3 09/12] arm64: dts: qcom: sm6350-lena: Add PMK8350 thermals erebion
2026-11-01 23:32 ` [PATCH v3 10/12] arm64: dts: qcom: sm6350-lena: Add PM7250B thermals erebion
2026-11-01 23:44 ` sashiko-bot
2026-11-02 0:05 ` erebion
2026-11-01 23:32 ` [PATCH v3 11/12] arm64: dts: qcom: sm6350-lena: Add PM6150L thermals erebion
2026-11-01 23:44 ` sashiko-bot
2026-11-02 0:35 ` erebion
2026-11-02 1:33 ` erebion
2026-11-02 12:20 ` erebion
2026-11-01 23:32 ` [PATCH v3 12/12] arm64: dts: qcom: sm6350-lena: enable remaining i2c busses erebion
2026-11-01 23:48 ` sashiko-bot [this message]
2026-11-02 11:24 ` erebion
2026-11-02 12:00 ` Konrad Dybcio
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=sashiko-outbox-192773@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=erebion@erebion.eu \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox