[PATCH 1/2] phy: qcom: qmp-pcie: Select MFD_SYSCON for the multi-PHY driver

sashiko-bot at kernel.org sashiko-bot at kernel.org
Tue Aug 25 16:11:07 PDT 2026


Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:

New issues:
- [Low] Unmet direct dependency warning caused by unconditionally selecting MFD_SYSCON in a driver supporting COMPILE_TEST without inheriting its HAS_IOMEM dependency.

Pre-existing issues:
- [High] Incomplete fix: The regular QMP PCIe driver (PHY_QCOM_QMP_PCIE) also unconditionally calls syscon_regmap_lookup_by_phandle_args() but still lacks a select for MFD_SYSCON, leaving it vulnerable to the exact same probe failure.
--

commit ca7057ced5dd6d2650998c03785e590bdadcd6f2
Author: David Carlier <devnexen at gmail.com>

phy: qcom: qmp-pcie: Select MFD_SYSCON for the multi-PHY driver

The driver reads the active link mode through
syscon_regmap_lookup_by_phandle_args(). Without CONFIG_MFD_SYSCON, the stub
returns -ENOTSUPP, causing probe failures. This patch adds the missing
MFD_SYSCON selection to the PHY_QCOM_QMP_PCIE_MULTIPHY driver.

> diff --git a/drivers/phy/qualcomm/Kconfig b/drivers/phy/qualcomm/Kconfig
> index d910a5d1a1ac3..9113e10992457 100644
> --- a/drivers/phy/qualcomm/Kconfig
> +++ b/drivers/phy/qualcomm/Kconfig
> @@ -81,6 +81,7 @@ config PHY_QCOM_QMP_PCIE_MULTIPHY
>  	tristate "Qualcomm QMP PCIe Multi PHY Driver"
>  	depends on PCI || COMPILE_TEST
>  	select GENERIC_PHY
> +	select MFD_SYSCON

[Severity: Low]
Does this unconditionally select MFD_SYSCON without inheriting its hardware
dependencies?

When configuring the kernel with COMPILE_TEST enabled on an architecture
lacking HAS_IOMEM (such as s390 without PCI or UML without IOMEM), this can
trigger Kconfig warnings for unmet direct dependencies and potential build
failures.

[Severity: High]
This is a pre-existing issue, but does the regular PHY_QCOM_QMP_PCIE driver
have the exact same probe failure vulnerability?

In drivers/phy/qualcomm/Kconfig, config PHY_QCOM_QMP_PCIE lacks a select for
MFD_SYSCON:

config PHY_QCOM_QMP_PCIE
	tristate "Qualcomm QMP PCIe PHY Driver"
	depends on PCI || COMPILE_TEST
	select GENERIC_PHY

This driver unconditionally calls syscon_regmap_lookup_by_phandle_args() in
drivers/phy/qualcomm/phy-qcom-qmp-pcie.c:qmp_pcie_get_4ln_config():

	tcsr = syscon_regmap_lookup_by_phandle_args(qmp->dev->of_node,
						    "qcom,4ln-config-sel",
						    ARRAY_SIZE(args), args);
	if (IS_ERR(tcsr)) {
		ret = PTR_ERR(tcsr);
		if (ret == -ENOENT)
			return 0;

		dev_err(qmp->dev, "failed to lookup syscon: %d\n", ret);
		return ret;
	}

If MFD_SYSCON is disabled, the stub returns -ENOTSUPP. Since this explicitly
checks for -ENOENT but not -ENOTSUPP, wouldn't the probe fail unconditionally
and leave the PCIe bus non-functional?

>  	help
>  	  Enable this to support the QMP PCIe PHY transceiver that is used
> [ ... ]

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260825225729.230493-1-devnexen@gmail.com?part=1



More information about the linux-phy mailing list