linux/drivers/phy/qualcomm
Johan Hovold 7e8066811a phy: qcom: qmp-usb-legacy: fix NULL-deref on runtime suspend
commit 29240130ab upstream.

Commit 413db06c05 ("phy: qcom-qmp-usb: clean up probe initialisation")
removed most users of the platform device driver data from the
qcom-qmp-usb driver, but mistakenly also removed the initialisation
despite the data still being used in the runtime PM callbacks. This bug
was later reproduced when the driver was copied to create the
qmp-usb-legacy driver.

Restore the driver data initialisation at probe to avoid a NULL-pointer
dereference on runtime suspend.

Apparently no one uses runtime PM, which currently needs to be enabled
manually through sysfs, with these drivers.

Fixes: e464a3180a ("phy: qcom-qmp-usb: split off the legacy USB+dp_com support")
Cc: stable@vger.kernel.org	# 6.6
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240911115253.10920-3-johan+linaro@kernel.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2024-11-08 16:28:22 +01:00
..
Kconfig phy: qcom: Introduce M31 USB PHY driver 2023-08-22 19:28:11 +05:30
Makefile phy: qcom: Introduce M31 USB PHY driver 2023-08-22 19:28:11 +05:30
phy-ath79-usb.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-apq8064-sata.c phy: qualcomm: Fix typos in comments 2023-09-21 16:24:00 +02:00
phy-qcom-edp.c phy-for-6.6 2023-09-03 10:38:02 -07:00
phy-qcom-eusb2-repeater.c phy: qualcomm: eusb2-repeater: Rework init to drop redundant zero-out loop 2024-10-17 15:24:08 +02:00
phy-qcom-ipq806x-sata.c phy: qualcomm: phy-qcom-ipq806x-sata: Convert to platform remove callback returning void 2023-03-20 18:14:57 +05:30
phy-qcom-ipq806x-usb.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-ipq4019-usb.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-m31.c phy: qcom: m31: match requested regulator name with dt schema 2024-05-02 16:32:48 +02:00
phy-qcom-pcie2.c phy: qualcomm: pcie2: register as clock provider 2023-01-12 22:44:29 +05:30
phy-qcom-qmp-combo.c phy: qcom: qmp-combo: fix duplicate return in qmp_v4_configure_dp_phy 2024-06-12 11:12:14 +02:00
phy-qcom-qmp-pcie-msm8996.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-qmp-pcie-qhp.h phy: qcom-qmp: move PCIE QHP registers to separate header 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-pcie.c phy: qcom-qmp-pcie: support SM8150 PCIe QMP PHYs 2023-08-22 19:33:37 +05:30
phy-qcom-qmp-pcs-misc-v3.h phy: qcom-qmp: move PCS V3 registers to separate headers 2022-07-07 10:35:59 +05:30
phy-qcom-qmp-pcs-pcie-v4.h phy: qcom-qmp: pcs-pcie-v4: add missing registers 2022-07-07 10:36:01 +05:30
phy-qcom-qmp-pcs-pcie-v4_20.h phy: qcom-qmp-pcie: Add RC init sequence for SDX55 2023-03-20 18:14:55 +05:30
phy-qcom-qmp-pcs-pcie-v5.h phy: qcom-qmp-pcie: add support for sc8280xp 2022-11-10 12:34:55 +05:30
phy-qcom-qmp-pcs-pcie-v5_20.h phy: qcom-qmp-pcie: add support for sa8775p 2023-07-18 11:37:10 +05:30
phy-qcom-qmp-pcs-pcie-v6.h phy: qcom-qmp: pcs-pcie: Add v6 register offsets 2023-02-10 22:28:00 +05:30
phy-qcom-qmp-pcs-pcie-v6_20.h phy: qcom-qmp: pcs-pcie: Add v6.20 register offsets 2023-02-10 22:28:00 +05:30
phy-qcom-qmp-pcs-ufs-v2.h phy: qcom-qmp-ufs: rework regs layout arrays 2023-01-12 22:48:42 +05:30
phy-qcom-qmp-pcs-ufs-v3.h phy: qcom-qmp-ufs: rework regs layout arrays 2023-01-12 22:48:42 +05:30
phy-qcom-qmp-pcs-ufs-v4.h phy: qcom-qmp: move PCS V4 registers to separate headers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-pcs-ufs-v5.h phy: qcom-qmp-ufs: Add HS G4 mode support to SM8250 SoC 2023-01-17 11:54:57 +05:30
phy-qcom-qmp-pcs-ufs-v6.h phy: qcom-qmp: pcs-ufs: Add v6 register offsets 2023-02-02 18:33:20 +05:30
phy-qcom-qmp-pcs-usb-v4.h phy: qcom-qmp: move PCS V4 registers to separate headers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-pcs-usb-v5.h phy: qcom-qmp: move PCS V5 registers to separate headers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-pcs-usb-v6.h phy: qcom-qmp-combo: Square out 8550 POWER_STATE_CONFIG1 2023-09-21 16:23:13 +02:00
phy-qcom-qmp-pcs-v2.h phy: qcom-qmp-usb: rework regs layout arrays 2023-01-12 22:48:42 +05:30
phy-qcom-qmp-pcs-v3.h phy: qcom-qmp: pcs-v3: add missing registers 2022-07-07 10:36:01 +05:30
phy-qcom-qmp-pcs-v4.h phy: qcom-qmp: move PCS V4 registers to separate headers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-pcs-v4_20.h phy: qcom-qmp: split allegedly 4.20 and 5.20 PCS registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-pcs-v5.h phy: qcom-qmp-pcie: rename regs layout arrays 2023-01-12 22:48:41 +05:30
phy-qcom-qmp-pcs-v5_20.h phy: qcom-qmp: Add support for SDX65 QMP PCIe PHY 2023-03-31 19:24:24 +05:30
phy-qcom-qmp-pcs-v6.h phy: qcom-qmp: pcs: Add v6 register offsets 2023-02-10 22:28:00 +05:30
phy-qcom-qmp-pcs-v6_20.h phy: qcom-qmp: pcs: Add v6.20 register offsets 2023-02-10 22:28:00 +05:30
phy-qcom-qmp-qserdes-com-v3.h phy: qcom-qmp: qserdes-com-v3: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-com-v4.h phy: qcom-qmp: qserdes-com-v4: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-com-v5.h phy: qcom-qmp: qserdes-com-v5: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-com-v6.h phy: qcom-qmp: qserdes-com: Add v6 register offsets 2023-02-02 18:33:19 +05:30
phy-qcom-qmp-qserdes-com.h phy: qcom-qmp: fix typo in QSERDES_COM_CMN_RSVD5 value 2023-01-12 22:48:41 +05:30
phy-qcom-qmp-qserdes-ln-shrd-v6.h phy: qcom-qmp: qserdes-lane-shared: Add v6 register offsets 2023-02-10 22:28:00 +05:30
phy-qcom-qmp-qserdes-pll.h phy: qcom-qmp: move QSERDES PLL registers to separate header 2022-07-07 10:35:59 +05:30
phy-qcom-qmp-qserdes-txrx-ufs-v6.h phy: qcom-qmp: qserdes-txrx-ufs: Add v6 register offsets 2023-02-02 18:33:20 +05:30
phy-qcom-qmp-qserdes-txrx-v3.h phy: qcom-qmp: qserdes-com-v3: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-txrx-v4.h phy: qcom-qmp: qserdes-com-v4: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-txrx-v4_20.h phy: qcom-qmp: split allegedly 4.20 and 5.20 TX/RX registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-txrx-v5.h phy: qcom-qmp: qserdes-com-v5: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-qserdes-txrx-v5_5nm.h phy: qcom-qmp: remove duplicate v5_5nm register definitions 2023-01-12 22:48:41 +05:30
phy-qcom-qmp-qserdes-txrx-v5_20.h phy: qcom-qmp-pcie: add support for sa8775p 2023-07-18 11:37:10 +05:30
phy-qcom-qmp-qserdes-txrx-v6.h phy: qcom: qmp-combo: reuse register layouts for some more registers 2023-07-12 22:27:42 +05:30
phy-qcom-qmp-qserdes-txrx-v6_20.h phy: qcom-qmp: qserdes-txrx: Add v6.20 register offsets 2023-02-10 22:28:00 +05:30
phy-qcom-qmp-qserdes-txrx.h phy: qcom-qmp: qserdes-com: add missing registers 2022-07-07 10:36:00 +05:30
phy-qcom-qmp-ufs.c phy: qcom: qmp-ufs: add missing offsets to sm8150 configuration 2023-08-11 09:17:19 +01:00
phy-qcom-qmp-usb-legacy.c phy: qcom: qmp-usb-legacy: fix NULL-deref on runtime suspend 2024-11-08 16:28:22 +01:00
phy-qcom-qmp-usb.c phy: qcom: qmp-usb: fix NULL-deref on runtime suspend 2024-11-08 16:28:22 +01:00
phy-qcom-qmp.h phy: qcom: qmp-combo: fix VCO div offset on v5_5nm and v6 2024-05-02 16:32:49 +02:00
phy-qcom-qusb2.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-sgmii-eth.c phy: qcom: add the SGMII SerDes PHY driver 2023-06-21 17:45:10 +05:30
phy-qcom-snps-eusb2.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-snps-femto-v2.c phy-for-6.6 2023-09-03 10:38:02 -07:00
phy-qcom-usb-hs-28nm.c phy: Revert "phy: qualcomm: usb28nm: Add MDM9607 init sequence" 2023-01-13 23:15:42 +05:30
phy-qcom-usb-hs.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-qcom-usb-hsic.c phy: qualcomm: call clk_disable_unprepare in the error handling 2022-09-24 12:48:10 +05:30
phy-qcom-usb-ss.c phy: qualcomm: usb: Add SuperSpeed PHY driver 2020-03-20 19:34:29 +05:30