From: Anusha Arun Nandi <anusha.nandi@oss.qualcomm.com>
To: bod@kernel.org, vkoul@kernel.org, kishon@kernel.org,
robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
neil.armstrong@linaro.org, mani@kernel.org
Cc: gjorgji.rosikopulos@oss.qualcomm.com,
hariram.purushothaman@oss.qualcomm.com, akapatra@quicinc.com,
jigarkumar.zala@oss.qualcomm.com, loic.poulain@oss.qualcomm.com,
vladimir.zapolskiy@linaro.org, linux-arm-msm@vger.kernel.org,
linux-phy@lists.infradead.org, linux-media@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 0/7] phy: qcom-mipi-csi2: Add D-PHY support for sa8775p, qcs8300 and sc7280
Date: Fri, 16 Oct 2026 16:54:55 -0700 [thread overview]
Message-ID: <20261016235502.2274268-1-anusha.nandi@oss.qualcomm.com> (raw)
This series extends the generic Qualcomm MIPI CSI2 PHY driver
(drivers/phy/qualcomm/phy-qcom-mipi-csi2-*) with three additional
CSIPHY variants: SA8775P, QCS8300 and SC7280. The driver currently
only supports x1e80100; these SoCs let CAMSS consume the CSIPHY through
the common PHY framework instead of the CSIPHY logic embedded in the
legacy in-tree CAMSS driver.
All three targets share one hardware trait that x1e80100 does not:
each has a single CSIPHY power-domain ("top", the Titan Top GDSC)
instead of three. Patch 1 fixes a latent bug this exposes: for a
single-power-domain device, the generic platform-bus code
auto-attaches the domain before probe() runs, so the driver's own
unconditional devm_pm_domain_attach_list() call fails with -EEXIST.
x1e80100 never hit this because auto-attach only applies when there
is exactly one power-domain phandle. This fix is a prerequisite for
every patch that follows and is kept first per bisectability.
The remaining patches add each SoC as its own variant, per the usual
split of core/generic changes from SoC-specific data:
- Patches 2-3 add the devicetree binding for SA8775P, then extend it
to QCS8300, which reuses the exact same CSIPHY (same D-PHY register
layout, common-control offset and clock set) as a second compatible
string in one schema rather than a duplicate file.
- Patch 4 adds the SA8775P driver-side soc_cfg (register init sequence
ported from the legacy camss-csiphy-3ph-1-0.c table, clocks and
power-domain), and generalises the previously-hardcoded "timer"/
"core" clock-name string literals in the probe path into per-SoC
soc_cfg fields so other SoCs can declare their own.
- Patch 5 binds QCS8300 to the same soc_cfg added in patch 4 -- no new
register data or power-domain wiring is needed.
- Patches 6-7 repeat the binding + driver split for SC7280, which has
its own register set and only two clocks.
Tested on sa8775p, qcs8300 and sc7280.
Depends-on: https://lore.kernel.org/all/20260917-x1e-csi2-phy-v18-0-6515b5255fa9@linaro.org/
Depends-on: https://lore.kernel.org/all/20260918-b4-linux-next-25-03-13-dtsi-x1e80100-camss-v20-0-dc244e124e71@linaro.org/
Anusha Arun Nandi (7):
phy: qcom-mipi-csi2: fix -EEXIST probe failure on single power-domain
SoCs
dt-bindings: phy: qcom: Add qcom,sa8775p-csi2-phy schema
dt-bindings: phy: qcom: Add qcs8300 to the CSI2 PHY schema
phy: qcom-mipi-csi2: Add sa8775p D-PHY support
phy: qcom-mipi-csi2: Add qcs8300 CSI2 PHY support
dt-bindings: phy: qcom: Add qcom,sc7280-csi2-phy schema
phy: qcom-mipi-csi2: Add sc7280 D-PHY provider
.../bindings/phy/qcom,sa8775p-csi2-phy.yaml | 175 ++++++++++++
.../bindings/phy/qcom,sc7280-csi2-phy.yaml | 169 ++++++++++++
.../qualcomm/phy-qcom-mipi-csi2-3ph-dphy.c | 251 ++++++++++++++++++
.../phy/qualcomm/phy-qcom-mipi-csi2-core.c | 31 ++-
drivers/phy/qualcomm/phy-qcom-mipi-csi2.h | 5 +
5 files changed, 622 insertions(+), 9 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/qcom,sa8775p-csi2-phy.yaml
create mode 100644 Documentation/devicetree/bindings/phy/qcom,sc7280-csi2-phy.yaml
--
base-commit: b38d06ad1e13c32970d58039c154f009b81a3368
change-id: 20250710-x1e-csi2-phy-f6434b651d3a
base-commit: 617b69946d330ed334861a3cc2660966e8c14b2c
change-id: 20250313-b4-linux-next-25-03-13-dtsi-x1e80100-camss-1506f74bbd3a
Best regards,
--
Anusha Arun Nandi <anusha.nandi@oss.qualcomm.com>
--
2.34.1
next reply other threads:[~2026-10-16 23:55 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-16 23:54 Anusha Arun Nandi [this message]
2026-10-16 23:54 ` [PATCH 1/7] phy: qcom-mipi-csi2: fix -EEXIST probe failure on single power-domain SoCs Anusha Arun Nandi
2026-10-19 9:55 ` Bryan O'Donoghue
2026-10-20 2:33 ` Anusha Arun Nandi
2026-10-16 23:54 ` [PATCH 2/7] dt-bindings: phy: qcom: Add qcom,sa8775p-csi2-phy schema Anusha Arun Nandi
2026-10-17 17:48 ` Nihal Kumar Gupta
2026-10-19 7:13 ` Krzysztof Kozlowski
2026-10-19 7:25 ` Nihal Kumar Gupta
2026-10-20 5:54 ` Krzysztof Kozlowski
2026-10-19 7:16 ` Krzysztof Kozlowski
2026-10-19 8:29 ` Bryan O'Donoghue
2026-10-16 23:54 ` [PATCH 3/7] dt-bindings: phy: qcom: Add qcs8300 to the CSI2 PHY schema Anusha Arun Nandi
2026-10-19 7:18 ` Krzysztof Kozlowski
2026-10-16 23:54 ` [PATCH 4/7] phy: qcom-mipi-csi2: Add sa8775p D-PHY support Anusha Arun Nandi
2026-10-19 10:01 ` Bryan O'Donoghue
2026-10-16 23:55 ` [PATCH 5/7] phy: qcom-mipi-csi2: Add qcs8300 CSI2 PHY support Anusha Arun Nandi
2026-10-19 7:18 ` Krzysztof Kozlowski
2026-10-16 23:55 ` [PATCH 6/7] dt-bindings: phy: qcom: Add qcom,sc7280-csi2-phy schema Anusha Arun Nandi
2026-10-19 7:19 ` Krzysztof Kozlowski
2026-10-16 23:55 ` [PATCH 7/7] phy: qcom-mipi-csi2: Add sc7280 D-PHY provider Anusha Arun Nandi
2026-10-17 17:50 ` [PATCH 0/7] phy: qcom-mipi-csi2: Add D-PHY support for sa8775p, qcs8300 and sc7280 Nihal Kumar Gupta
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=20261016235502.2274268-1-anusha.nandi@oss.qualcomm.com \
--to=anusha.nandi@oss.qualcomm.com \
--cc=akapatra@quicinc.com \
--cc=bod@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gjorgji.rosikopulos@oss.qualcomm.com \
--cc=hariram.purushothaman@oss.qualcomm.com \
--cc=jigarkumar.zala@oss.qualcomm.com \
--cc=kishon@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=loic.poulain@oss.qualcomm.com \
--cc=mani@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=robh@kernel.org \
--cc=vkoul@kernel.org \
--cc=vladimir.zapolskiy@linaro.org \
/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
all inboxes | Powered by JetHome®