From: sashiko-bot@kernel.org
To: "David Heidelberg" <david@ixit.cz>
Cc: devicetree@vger.kernel.org, robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH v9 1/2] arm64: dts: qcom: sdm845-google: Add dual front IMX355 cameras
Date: Mon, 07 Sep 2026 16:11:59 +0000 [thread overview]
Message-ID: <20260907161200.0F1861F00A3A@smtp.kernel.org> (raw)
In-Reply-To: <20260907-pixel3-camera-v9-1-b1981f2d3291@ixit.cz>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] The `cam_mclk2_default` pinctrl is assigned to the `camss` node, creating a probe deadlock that prevents the IMX355 sensors from initializing.
- [Medium] The patch incorrectly modifies the sleep state of `cci0_sleep` instead of `cci1_sleep` to disable internal pull-downs, leaving the newly added `cci_i2c1` bus with a pull-down conflict.
--
commit 5866dcb6e26829a5869d717eae07ad902b36446e
Author: David Heidelberg <david@ixit.cz>
arm64: dts: qcom: sdm845-google: Add dual front IMX355 cameras
The Pixel 3 features two front-facing Sony IMX355 sensors with different
focal lengths. This commit enables the dual front camera configuration
by adding them to CSIPHY ports 1 and 2, controlled over CCI I2C1, using
MCLK2 as the clock source.
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-google-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-google-common.dtsi
> index f1379857e2742..02a392fea7212 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-google-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-google-common.dtsi
[ ... ]
> @@ -351,6 +390,53 @@ vreg_s3c_0p6: smps3 {
> };
> };
>
> +&camss {
> + vdda-phy-supply = <&vreg_l1a_0p875>;
> + vdda-pll-supply = <&vreg_l26a_1p2>;
> +
> + /*
> + * MCLK2 (GPIO15) is shared between both front camera sensors.
> + * The clock is generated by CAMCC, therefore the pin is
> + * configured here rather than in individual sensor nodes.
> + */
> + pinctrl-0 = <&cam_mclk2_default>;
> + pinctrl-1 = <&cam_mclk2_sleep>;
> + pinctrl-names = "default", "sleep";
[Severity: High]
Does assigning the MCLK pinctrl to the consumer node (&camss) break the
initialization sequence?
Because &camss has remote-endpoint links pointing to the front sensors,
fw_devlink treats the sensors as suppliers and &camss as the consumer,
forcing &camss to probe after the sensors. When the sensors probe, they
attempt to read their chip ID over I2C, which requires the MCLK clock.
Since &camss has not yet probed at that time, the GPIO15 pin remains
unconfigured, the MCLK signal never reaches the sensors, and their I2C reads
fail with a timeout. This creates a probe deadlock preventing the sensors
from initializing.
> +
> + status = "okay";
[ ... ]
> + port@2 {
> + reg = <2>;
> +
> + camss_endpoint2: endpoint {
> + bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
> + data-lanes = <0 1 2 3>;
> + remote-endpoint = <&cam_front_endpoint>;
> + };
> + };
> + };
> +};
> +
> +&cci0_sleep {
> + /* bus has external pull-up */
> + /delete-property/ bias-pull-down;
> + bias-disable;
> +};
[Severity: Medium]
Is this modifying the sleep state of the wrong I2C bus?
The newly added front IMX355 cameras are connected to the cci_i2c1 bus,
whose sleep pin state is defined by &cci1_sleep. By applying this
configuration to &cci0_sleep instead, &cci1_sleep is left unmodified.
This leaves the cci_i2c1 pins with internal pull-downs enabled during system
sleep, which conflicts with the external pull-ups on the bus and causes a
continuous power leak.
> +
> +&cci {
> + status = "okay";
> +};
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260907-pixel3-camera-v9-0-b1981f2d3291@ixit.cz?part=1
next prev parent reply other threads:[~2026-09-07 16:12 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-07 15:58 [PATCH v9 0/2] Add initial dual front camera and rear flash support for Pixel 3 / 3 XL David Heidelberg via B4 Relay
2026-09-07 15:58 ` David Heidelberg
2026-09-07 15:58 ` [PATCH v9 1/2] arm64: dts: qcom: sdm845-google: Add dual front IMX355 cameras David Heidelberg via B4 Relay
2026-09-07 15:58 ` David Heidelberg
2026-09-07 16:11 ` sashiko-bot [this message]
2026-09-08 7:17 ` Abel Vesa
2026-09-09 11:00 ` Konrad Dybcio
2026-09-07 15:58 ` [PATCH v9 2/2] arm64: dts: qcom: sdm845-google: Enable PMI8998 camera flash LEDs David Heidelberg via B4 Relay
2026-09-07 15:58 ` David Heidelberg
2026-09-08 7:16 ` Abel Vesa
2026-09-16 23:49 ` [PATCH v9 0/2] Add initial dual front camera and rear flash support for Pixel 3 / 3 XL Bjorn Andersson
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=20260907161200.0F1861F00A3A@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=david@ixit.cz \
--cc=devicetree@vger.kernel.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.