linux/drivers/interconnect/qcom
Johan Hovold bfe7bcd2b9 interconnect: qcom: msm8974: fix registration race
The current interconnect provider registration interface is inherently
racy as nodes are not added until the after adding the provider. This
can specifically cause racing DT lookups to fail.

Switch to using the new API where the provider is not registered until
after it has been fully initialised.

Fixes: 4e60a9568d ("interconnect: qcom: add msm8974 driver")
Cc: stable@vger.kernel.org      # 5.5
Reviewed-by: Brian Masney <bmasney@redhat.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20230306075651.2449-12-johan+linaro@kernel.org
Signed-off-by: Georgi Djakov <djakov@kernel.org>
2023-03-13 21:13:48 +02:00
..
bcm-voter.c interconnect: qcom: Add missing MODULE_DEVICE_TABLE 2021-05-11 07:26:31 +03:00
bcm-voter.h interconnect: qcom: Consolidate interconnect RPMh support 2020-02-28 12:11:40 +02:00
icc-common.c interconnect: qcom: Kconfig: Make INTERCONNECT_QCOM tristate 2022-09-20 15:53:57 +03:00
icc-common.h interconnect: qcom: Move qcom_icc_xlate_extended() to a common file 2022-07-12 10:01:30 +03:00
icc-rpm.c interconnect: qcom: rpm: fix registration race 2023-03-13 21:12:16 +02:00
icc-rpm.h interconnect: qcom: icc-rpm: Support multiple buckets 2022-07-12 10:03:09 +03:00
icc-rpmh.c interconnect: qcom: rpmh: fix registration race 2023-03-13 21:13:48 +02:00
icc-rpmh.h interconnect: qcom: Move qcom_icc_xlate_extended() to a common file 2022-07-12 10:01:30 +03:00
Kconfig Merge branch 'icc-sa8775p' into icc-next 2023-02-06 15:39:41 +02:00
Makefile Merge branch 'icc-sa8775p' into icc-next 2023-02-06 15:39:41 +02:00
msm8916.c interconnect: qcom: constify icc_node pointers 2022-04-23 15:11:48 +03:00
msm8939.c interconnect: qcom: msm8939: Use icc_sync_state 2022-07-05 16:39:48 +03:00
msm8974.c interconnect: qcom: msm8974: fix registration race 2023-03-13 21:13:48 +02:00
msm8996.c interconnect: qcom: msm8996: Fix regmap max_register values 2023-01-05 17:29:50 +02:00
msm8996.h interconnect: qcom: Add MSM8996 interconnect provider driver 2021-11-22 18:35:22 +02:00
osm-l3.c interconnect: qcom: osm-l3: fix registration race 2023-03-07 22:19:05 +02:00
qcm2290.c interconnect: qcom: qcm2290: Fix MASTER_SNOC_BIMC_NRT 2023-03-06 22:18:59 +02:00
qcs404.c interconnect: qcom: constify icc_node pointers 2022-04-23 15:11:48 +03:00
qdu1000.c interconnect: qcom: Add QDU1000/QRU1000 interconnect driver 2023-01-05 16:16:49 +02:00
qdu1000.h interconnect: qcom: Add QDU1000/QRU1000 interconnect driver 2023-01-05 16:16:49 +02:00
sa8775p.c interconnect: qcom: add a driver for sa8775p 2023-01-19 20:23:00 +02:00
sc7180.c interconnect: qcom: sc7180: drop double space 2022-11-17 17:39:49 +02:00
sc7180.h interconnect: qcom: sc7180: drop IP0 remnants 2023-01-18 16:12:17 +02:00
sc7280.c interconnect: qcom: constify qcom_icc_bcm pointers 2022-04-23 15:11:57 +03:00
sc7280.h interconnect: qcom: Add EPSS L3 support on SC7280 2021-11-22 16:57:22 +02:00
sc8180x.c interconnect: qcom: sc8180x: Drop IP0 interconnects 2023-01-18 16:14:33 +02:00
sc8180x.h interconnect: qcom: sc8180x: Drop IP0 interconnects 2023-01-18 16:14:33 +02:00
sc8280xp.c interconnect: qcom: sc8280xp: Drop IP0 interconnects 2023-01-18 16:15:03 +02:00
sc8280xp.h interconnect: qcom: sc8280xp: Drop IP0 interconnects 2023-01-18 16:15:03 +02:00
sdm660.c interconnect: qcom: constify icc_node pointers 2022-04-23 15:11:48 +03:00
sdm670.c interconnect: qcom: add sdm670 interconnects 2023-01-19 20:12:47 +02:00
sdm670.h interconnect: qcom: add sdm670 interconnects 2023-01-19 20:12:47 +02:00
sdm845.c interconnect: qcom: constify qcom_icc_bcm pointers 2022-04-23 15:11:57 +03:00
sdm845.h interconnect: qcom: Add OSM L3 interconnect provider support 2020-03-03 19:02:52 +02:00
sdx55.c Merge branch 'icc-const' into icc-next 2022-05-18 03:02:32 +03:00
sdx55.h interconnect: qcom: sdx55: drop IP0 remnants 2023-01-18 16:11:52 +02:00
sdx65.c interconnect: qcom: Add SDX65 interconnect provider driver 2022-04-26 14:11:26 +03:00
sdx65.h interconnect: qcom: Add SDX65 interconnect provider driver 2022-04-26 14:11:26 +03:00
sm6350.c interconnect: qcom: Add SM6350 driver support 2022-06-20 14:27:07 +03:00
sm6350.h interconnect: qcom: Add SM6350 driver support 2022-06-20 14:27:07 +03:00
sm8150.c interconnect: qcom: sm8150: Drop IP0 interconnects 2023-01-18 16:12:54 +02:00
sm8150.h interconnect: qcom: sm8150: Drop IP0 interconnects 2023-01-18 16:12:54 +02:00
sm8250.c interconnect: qcom: sm8250: Drop IP0 interconnects 2023-01-18 16:14:13 +02:00
sm8250.h interconnect: qcom: sm8250: Drop IP0 interconnects 2023-01-18 16:14:13 +02:00
sm8350.c interconnect: qcom: constify qcom_icc_bcm pointers 2022-04-23 15:11:57 +03:00
sm8350.h interconnect: qcom: Add SM8350 interconnect provider driver 2021-03-27 14:34:12 +02:00
sm8450.c interconnect: qcom: sm8450: switch to qcom_icc_rpmh_* function 2023-03-06 16:48:32 +02:00
sm8450.h interconnect: qcom: Add SM8450 interconnect provider driver 2021-12-14 23:43:26 +02:00
sm8550.c interconnect: qcom: sm8550: switch to qcom_icc_rpmh_* function 2023-03-06 16:48:38 +02:00
sm8550.h interconnect: qcom: Add SM8550 interconnect provider driver 2022-12-29 11:36:33 +02:00
smd-rpm.c interconnect: qcom: Add interconnect RPM over SMD driver 2019-08-13 23:06:40 +03:00
smd-rpm.h interconnect: qcom: Add interconnect RPM over SMD driver 2019-08-13 23:06:40 +03:00