summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/qcom
AgeCommit message (Collapse)AuthorFilesLines
2025-03-04arm64: dts: qcom: x1e80100: Apply consistent critical thermal shutdownStephan Gerhold1-64/+64
The firmware configures the TSENS controller with a maximum temperature of 120°C. When reaching that temperature, the hardware automatically triggers a reset of the entire platform. Some of the thermal zones in x1e80100.dtsi use a critical trip point of 125°C. It's impossible to reach those. It's preferable to shut down the system cleanly before reaching the hardware trip point. Make the critical temperature trip points consistent by setting all of them to 115°C and apply a consistent hysteresis. The ACPI tables also specify 115°C as critical shutdown temperature. Cc: stable@vger.kernel.org Fixes: 4e915987ff5b ("arm64: dts: qcom: x1e80100: Enable tsens and thermal zone nodes") Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org> Reviewed-by: Johan Hovold <johan+linaro@kernel.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250219-x1e80100-thermal-fixes-v1-2-d110e44ac3f9@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-04arm64: dts: qcom: x1e80100: Fix video thermal zoneStephan Gerhold1-3/+7
A passive trip point at 125°C is pretty high, this is usually the temperature for the critical shutdown trip point. Also, we don't have any passive cooling devices attached to the video thermal zone. Change this to be a critical trip point, and add a "hot" trip point at 90°C for consistency with the other thermal zones. Cc: stable@vger.kernel.org Fixes: 4e915987ff5b ("arm64: dts: qcom: x1e80100: Enable tsens and thermal zone nodes") Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org> Reviewed-by: Johan Hovold <johan+linaro@kernel.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250219-x1e80100-thermal-fixes-v1-1-d110e44ac3f9@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-04arm64: dts: qcom: sm8650: add missing cpu-cfg interconnect path in the mdss nodeNeil Armstrong1-2/+5
The bindings requires the mdp0-mem and the cpu-cfg interconnect path, add the missing cpu-cfg path to fix the dtbs check error and also to ensure that MDSS has enough bandwidth to let HLOS write config registers. Fixes: 9fa33cbca3d2 ("arm64: dts: qcom: sm8650: correct MDSS interconnects") Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250227-topic-sm8x50-mdss-interconnect-bindings-fix-v5-2-bf6233c6ebe5@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-04arm64: dts: qcom: sm8550: add missing cpu-cfg interconnect path in the mdss nodeNeil Armstrong1-2/+4
The bindings requires the mdp0-mem and the cpu-cfg interconnect path, add the missing cpu-cfg path to fix the dtbs check error and also to ensure that MDSS has enough bandwidth to let HLOS write config registers. Fixes: b8591df49cde ("arm64: dts: qcom: sm8550: correct MDSS interconnects") Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250227-topic-sm8x50-mdss-interconnect-bindings-fix-v5-1-bf6233c6ebe5@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-03-03arm64: dts: qcom: gaokun3: Add Embedded Controller nodePengyu Luo1-0/+163
The Embedded Controller in the Huawei Matebook E Go is accessible on &i2c15 and provides battery and adapter status, port orientation status, as well as HPD event notifications for two USB Type-C port, etc. Add the EC to the device tree and describe the relationship among the type-c connectors, role switches, orientation switches and the QMP combo PHY. Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250214180656.28599-4-mitltlatltl@gmail.com Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
2025-02-26arm64: dts: qcom: x1e80100-slim7x: Drop incorrect ↵Krzysztof Kozlowski1-2/+0
qcom,ath12k-calibration-variant There is no such property as qcom,ath12k-calibration-variant: neither in the bindings nor in the driver. See dtbs_check: x1e80100-lenovo-yoga-slim7x.dtb: wifi@0: 'qcom,ath12k-calibration-variant' does not match any of the regexes: 'pinctrl-[0-9]+' Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20250225093051.58406-1-krzysztof.kozlowski@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: qcs8300: Partially revert "arm64: dts: qcom: qcs8300: add ↵Krzysztof Kozlowski1-12/+0
QCrypto nodes" Partially revert commit a86d84409947 ("arm64: dts: qcom: qcs8300: add QCrypto nodes") by dropping the untested QCE device node. Devicetree bindings test failures were reported on mailing list on 16th of January and after two weeks still no fixes: qcs8300-ride.dtb: crypto@1dfa000: compatible: 'oneOf' conditional failed, one must be fixed: ... 'qcom,qcs8300-qce' is not one of ['qcom,ipq4019-qce', 'qcom,sm8150-qce'] Reported-by: Rob Herring <robh@kernel.org> Closes: https://lore.kernel.org/all/CAL_JsqL0HzzGXnCD+z4GASeXNsBxrdw8-qyfHj8S+C2ucK6EPQ@mail.gmail.com/ Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250128115333.95021-2-krzysztof.kozlowski@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sa8775p: Partially revert "arm64: dts: qcom: sa8775p: add ↵Krzysztof Kozlowski1-11/+0
QCrypto nodes" Partially revert commit 7ff3da43ef44 ("arm64: dts: qcom: sa8775p: add QCrypto nodes") by dropping the untested QCE device node. Devicetree bindings test failures were reported on mailing list on 16th of January and after two weeks still no fixes: sa8775p-ride.dtb: crypto@1dfa000: compatible: 'oneOf' conditional failed, one must be fixed: ... 'qcom,sa8775p-qce' is not one of ['qcom,ipq4019-qce', 'qcom,sm8150-qce'] Reported-by: Rob Herring <robh@kernel.org> Closes: https://lore.kernel.org/all/CAL_JsqJG_w9jyWjVR=QnPuJganG4uj9+9cEXZ__UAiCw2ZYZZA@mail.gmail.com/ Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250128115333.95021-1-krzysztof.kozlowski@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sdm630: Add missing resets to mmc blocksAlexey Minnekhanov1-0/+3
Add resets to eMMC/SD card blocks so linux can properly reset them during initialization. Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250203063427.358327-4-alexeymin@postmarketos.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: add UFS OPP table instead of freq-table-hz propertyNeil Armstrong1-8/+42
Swich to an OPP table for the UFS frequency scaling instead of the deprecated freq-table-hz property. The Operating Point table will also provide the associated power domain level. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-10-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: add QUP serial engines OPP tablesNeil Armstrong1-0/+216
The QUP Serial Engines requires different power domain level depending on their working frequency, add the required OPP table with the level associated with all possible frequencies. For the "I2C Hub" serial engines, sinse they only support a single Operating Point, only add a single power domain level property. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-9-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: add OPP table support to PCIeNeil Armstrong1-0/+89
The PCIe bus interconnect path can be scaled depending on the PCIe link established, add the OPP table with all the possible link speeds and the associated power domain level. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-8-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: add USB interconnect pathsNeil Armstrong1-0/+7
Add the interconnect paths for the USB controller. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-7-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: set CPU interconnect paths as ACTIVE_ONLYNeil Armstrong1-90/+90
In all interconnect paths involving the cpu (MASTER_APPSS_PROC), use the QCOM_ICC_TAG_ACTIVE_ONLY which will only retain the vote if the CPU is online, leaving the firmware disabling the path when the CPUs goes in suspend-idle. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-6-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: use ICC tag for IPA interconnect phandlesNeil Armstrong1-2/+4
Use the proper QCOM_ICC_TAG_ define instead of passing 0 in the IPA interconnect paths phandle third argument Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-5-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8550: add QUP serial engines OPP tablesNeil Armstrong1-0/+122
The QUP Serial Engines requires different power domain level depending on their working frequency, add the required OPP table with the level associated with all possible frequencies. For the "I2C Hub" serial engines, sinse they only support a single Operating Point, only add a single power domain level property. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-4-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8550: add OPP table support to PCIeNeil Armstrong1-0/+89
The PCIe bus interconnect path can be scaled depending on the PCIe link established, add the OPP table with all the possible link speeds and the associated power domain level. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-3-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8550: set CPU interconnect paths as ACTIVE_ONLYNeil Armstrong1-92/+92
In all interconnect paths involving the cpu (MASTER_APPSS_PROC), use the QCOM_ICC_TAG_ACTIVE_ONLY which will only retain the vote if the CPU is online, leaving the firmware disabling the path when the CPUs goes in suspend-idle. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-2-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8550: use ICC tag for all interconnect phandlesNeil Armstrong1-129/+258
Use the proper QCOM_ICC_TAG_ define instead of passing 0 in all interconnect paths phandle third argument. Use QCOM_ICC_TAG_ALWAYS which is the fallback mask if 0 is used as third phandle argument. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250115-topic-sm8x50-upstream-dt-icc-update-v1-1-eaa8b10e2af7@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: qcm6490-fairphone-fp5: Enable the GPUKonrad Dybcio1-0/+8
Enable the Adreno GPU and point to the correct ZAP fw path. Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Link: https://lore.kernel.org/r/20250202-fp5-display-v1-2-f52bf546e38f@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: qcm6490-fairphone-fp5: Enable displayLuca Weiss1-5/+89
Configure the MDSS nodes for the phone and add the panel node. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org> Link: https://lore.kernel.org/r/20250202-fp5-display-v1-1-f52bf546e38f@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm7325-nothing-spacewar: Enable camera EEPROMsDanila Tikhonov1-3/+29
Configure the EEPROMs which are found on the different camera sensors on this device. The pull-up regulator for these I2C busses is vreg_cam_vio_1p8, the same supply that powers VCC of all the EEPROMs. Signed-off-by: Danila Tikhonov <danila@jiaxyga.com> Link: https://lore.kernel.org/r/20250203111429.22062-5-danila@jiaxyga.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm7325-nothing-spacewar: Add CAM fixed-regulatorsDanila Tikhonov1-0/+125
Two regulators (GPIO 72 & 107) for the IMX766 sensor are missing here. Without a driver, it's unclear if they're extra supplies or pwdn/power GPIOs (labeled "custom" in the downstream kernel). So add only those fixed regulators that are currently predictable for camera sensors, camera EEPROMs and camera actuators. Signed-off-by: Danila Tikhonov <danila@jiaxyga.com> Link: https://lore.kernel.org/r/20250203111429.22062-2-danila@jiaxyga.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: drop remaining polling-delay-passive propertiesNeil Armstrong1-16/+0
Remove the remaining polling-delay-passive properties from thermal nodes without a passive trip point. Suggested-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250203-topic-sm8650-thermal-cpu-idle-v4-4-65e35f307301@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: harmonize all unregulated thermal trip pointsNeil Armstrong1-85/+85
While the CPUs thermal is handled by the LMH, and GPU has a passive cooldowm via the HLOS DCVS, all the other thermal blocks only have hot and critical and no passive/active trip points. Passive or active thermal management for those blocks should be either defined if somehow we can express those in DT or in the board definition if there's an active cooling device available. The tsens MAX_THRESHOLD is set to 120C on those platforms, so set the hot to 110C to leave a chance to HLOS to react and critical to 115C to avoid the monitor thermal shutdown. In the case a passive or active cooling device would be available, the downstream reference implementation uses the 95C "tj" trip point, as we already use for the gpuss thermal blocks. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250203-topic-sm8650-thermal-cpu-idle-v4-3-65e35f307301@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: setup gpu thermal with higher temperaturesNeil Armstrong1-32/+32
On the SM8650, the dynamic clock and voltage scaling (DCVS) for the GPU is done from the HLOS, but the GPU can achieve a much higher temperature before failing according the reference downstream implementation. Set higher temperatures in the GPU trip points corresponding to the temperatures provided by Qualcomm in the dowstream source, much closer to the junction temperature and with a higher critical temperature trip in the case the HLOS DCVS cannot handle the temperature surge. The tsens MAX_THRESHOLD is set to 120C on those platforms, so set the hot to 110C to leave a chance to HLOS to react and critical to 115C to avoid the monitor thermal shutdown. Fixes: 497624ed5506 ("arm64: dts: qcom: sm8650: Throttle the GPU when overheating") Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250203-topic-sm8650-thermal-cpu-idle-v4-2-65e35f307301@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: sm8650: drop cpu thermal passive trip pointsNeil Armstrong1-180/+0
On the SM8650, the dynamic clock and voltage scaling (DCVS) is done in an hardware controlled loop using the LMH and EPSS blocks with constraints and OPPs programmed in the board firmware. Since the Hardware does a better job at maintaining the CPUs temperature in an acceptable range by taking in account more parameters like the die characteristics or other factory fused values, it makes no sense to try and reproduce a similar set of constraints with the Linux cpufreq thermal core. In addition, the tsens IP is responsible for monitoring the temperature across the SoC and the current settings will heavily trigger the tsens UP/LOW interrupts if the CPU temperatures reaches the hardware thermal constraints which are currently defined in the DT. And since the CPUs are not hooked in the thermal trip points, the potential interrupts and calculations are a waste of system resources. Drop the current passive trip points and only leave the critical trip point that will trigger a software system reboot before an hardware thermal shutdown in the allmost impossible case the hardware DCVS cannot handle the temperature surge. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> Link: https://lore.kernel.org/r/20250203-topic-sm8650-thermal-cpu-idle-v4-1-65e35f307301@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: Add X1P42100 SoC and CRDKonrad Dybcio5-16/+115
The X1 family is split into two parts: the 10- and 12-core parts are variants of the same silicon with different fusing, whereas the 8-core ones are a separate design. Thankfully, the software interface is only barely different, letting us reuse much of the existing X1 work. Introduce support for the X1P42100 SoC and the CRD based on it, through overlaying some bits. Everything we already support on X1E80100 and friends, minus the GPU, should work as-is. Tested-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250203-topic-x1p4_dts-v2-6-72cd4cdc767b@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: Commonize X1 CRD DTSIKonrad Dybcio3-1268/+1279
Certain X1 SKUs vary very noticeably, but the CRDs based on them don't. Commonize the existing X1E80100 DTSI to allow reuse. Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250203-topic-x1p4_dts-v2-5-72cd4cdc767b@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: x1e80100: Wire up PCIe PHY NOCSR resetsKonrad Dybcio1-4/+8
Asserting the NOCSR reset line keeps the PHY registers in tact. This allows us to avoid programming long tables of magic values in the operating system. Wire up these resets to PCIe PHY4 and 5 (it's there on the others). Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250203-topic-x1p4_dts-v2-4-72cd4cdc767b@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-26arm64: dts: qcom: qcs8300: Add QUPv3 configurationViken Dadhaniya1-4/+1870
Add DT support for QUPV3 Serial Engines. Co-developed-by: Mukesh Kumar Savaliya <quic_msavaliy@quicinc.com> Signed-off-by: Mukesh Kumar Savaliya <quic_msavaliy@quicinc.com> Signed-off-by: Viken Dadhaniya <quic_vdadhani@quicinc.com> Link: https://lore.kernel.org/r/20250224063338.27306-1-quic_vdadhani@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-25Revert "arm64: dts: qcom: sdm845: Affirm IDR0.CCTW on apps_smmu"Konrad Dybcio1-1/+0
There are reports that the pagetable walker cache coherency is not a given across the spectrum of SDM845/850 devices, leading to lock-ups and resets. It works fine on some devices (like the Dragonboard 845c, but not so much on the Lenovo Yoga C630). This unfortunately looks like a fluke in firmware development, where likely somewhere in the vast hypervisor stack, a change to accommodate for this was only introduced after the initial software release (which often serves as a baseline for products). Revert the change to avoid additional guesswork around crashes. This reverts commit 6b31a9744b8726c69bb0af290f8475a368a4b805. Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Closes: https://lore.kernel.org/linux-arm-msm/20250215-yoga-dma-coherent-v1-1-2419ee184a81@linaro.org/ Fixes: 6b31a9744b87 ("arm64: dts: qcom: sdm845: Affirm IDR0.CCTW on apps_smmu") Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250225-topic-845_smmu_not_coherent-v1-1-98ca9d17471c@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq5424: Add thermal zone nodesManikanta Mylavarapu1-0/+114
Add thermal zone nodes for sensors present in IPQ5424. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> Link: https://lore.kernel.org/r/20250210120436.821684-7-quic_mmanikan@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq5424: Add tsens nodeManikanta Mylavarapu1-0/+87
IPQ5424 has tsens v2.3.3 peripheral. This patch adds the tsens node with nvmem cells for calibration data. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> Link: https://lore.kernel.org/r/20250210120436.821684-6-quic_mmanikan@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq5332: Add thermal zone nodesPraveenkumar I1-0/+69
This patch adds thermal zone nodes for sensors present in IPQ5332. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> Link: https://lore.kernel.org/r/20250210120436.821684-5-quic_mmanikan@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq5332: Add tsens nodePraveenkumar I1-0/+66
IPQ5332 has tsens v2.3.3 peripheral. This patch adds the tsens node with nvmem cells for calibration data. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> Link: https://lore.kernel.org/r/20250210120436.821684-4-quic_mmanikan@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq6018: add LDOA2 regulatorChukun Pan1-0/+9
Add LDOA2 regulator from MP5496 to support SDCC voltage scaling. Suggested-by: Robert Marko <robimarko@gmail.com> Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250210070122.208842-6-amadeus@jmu.edu.cn Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq6018: rename labels of mp5496 regulatorChukun Pan1-5/+5
Change the labels of mp5496 regulator from ipq6018 to mp5496. Suggested-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Link: https://lore.kernel.org/r/20250210070122.208842-5-amadeus@jmu.edu.cn Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq6018: move mp5496 regulator out of soc dtsiChukun Pan3-15/+36
Some IPQ60xx SoCs don't come with the mp5496 pmic chip. The mp5496 pmic was never part of the IPQ60xx SoC, it's optional, so we moved it out of the soc dtsi. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250210070122.208842-4-amadeus@jmu.edu.cn Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq6018: add 1.5GHz CPU FrequencyChukun Pan1-0/+7
The early version of IPQ6000 (SoC id: IPQ6018, SBL version: BOOT.XF.0.3-00077-IPQ60xxLZB-2) and IPQ6005 SoCs can reach a max frequency of 1.5GHz, so add this CPU frequency. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> Link: https://lore.kernel.org/r/20250210070122.208842-3-amadeus@jmu.edu.cn Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: ipq6018: add 1.2GHz CPU FrequencyChukun Pan1-0/+7
The final version of IPQ6000 (SoC id: IPQ6000, SBL version: BOOT.XF.0.3-00086-IPQ60xxLZB-1) has a max design frequency of 1.2GHz, so add this CPU frequency. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250210070122.208842-2-amadeus@jmu.edu.cn Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: sa8775p-ride: Add firmware-name in BT nodeCheng Jiang1-0/+1
The sa8775p-ride platform uses the QCA6698 Bluetooth chip. While the QCA6698 shares the same IP core as the WCN6855, it has different RF components and RAM sizes, requiring new firmware files. Use the firmware-name property to specify the NVM and rampatch firmware to load. Signed-off-by: Cheng Jiang <quic_chejiang@quicinc.com> Reviewed-by: Zijun Hu <quic_zijuhu@quicinc.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250110063914.28001-2-quic_chejiang@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: x1e80100: Mark usb_2 as dma-coherentMark Kettenis1-0/+2
Make this USB controller consistent with the others on this platform. Fixes: 4af46b7bd66f ("arm64: dts: qcom: x1e80100: Add USB nodes") Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250109205232.92336-1-kettenis@openbsd.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: qrb5165-rb5: enable sensors DSPDmitry Baryshkov1-0/+6
Enable SLPI, sensors DSP, on the Qualcomm Robotics RB5 platform. The firmware for the DSP is a part of linux-firmware repository. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250222-rb3-rb5-slpi-v1-2-6739be1684b6@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: sdm845-db845c: enable sensors DSPDmitry Baryshkov1-0/+6
Enable SLPI, sensors DSP, on the Qualcomm Robotics RB3 platform. The firmware for the DSP is a part of linux-firmware repository. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250222-rb3-rb5-slpi-v1-1-6739be1684b6@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-24arm64: dts: qcom: sc8280xp: Fix clock for spi0 to spi7Pengyu Luo1-8/+8
Enabling spi6 caused boot loop on my device(Huawei Matebook E Go), &spi6 { pinctrl-0 = <&spi6_default>; pinctrl-names = "default"; status = "okay"; }; After looking into this, I found the clocks for spi0 to spi7 are wrong, we can derive the correct clocks from the regular pattern between spi8 to spi15, spi16 to spi23. Or we can verify it according to the hex file of BSRC_QSPI.bin(From windows driver qcspi8280.cab) 000035d0: 0700 4445 5649 4345 0001 000a 005c 5f53 ..DEVICE.....\_S 000035e0: 422e 5350 4937 0003 0076 0001 000a 0043 B.SPI7...v.....C 000035f0: 4f4d 504f 4e45 4e54 0000 0008 0000 0000 OMPONENT........ 00003600: 0000 0000 0003 0017 0001 0007 0046 5354 .............FST 00003610: 4154 4500 0000 0800 0000 0000 0000 0000 ATE............. 00003620: 0300 3d00 0100 1400 4449 5343 4f56 4552 ..=.....DISCOVER 00003630: 4142 4c45 5f50 5354 4154 4500 0100 0600 ABLE_PSTATE..... 00003640: 434c 4f43 4b00 0100 1700 6763 635f 7175 CLOCK.....gcc_qu 00003650: 7076 335f 7772 6170 305f 7336 5f63 6c6b pv3_wrap0_s6_clk Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20250223110152.47192-1-mitltlatltl@gmail.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-22arm64: dts: qcom: qcs8300-ride: Enable PMIC peripheralsTingguo Cheng2-0/+52
Enable PMIC and PMIC peripherals for qcs8300-ride board. The qcs8 300-ride uses 2 pmics(pmm8620au:0,pmm8650au:1) on the board, which are variants of pmm8654au used on sa8775p/qcs9100 -ride(4x pmics). Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Tingguo Cheng <quic_tingguoc@quicinc.com> Link: https://lore.kernel.org/r/20250108-adds-spmi-pmic-peripherals-for-qcs8300-v3-2-ee94642279ff@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-22arm64: dts: qcom: qcs8300: Adds SPMI supportTingguo Cheng1-0/+22
Add the SPMI bus arbiter(Version:5.2.0) node for QCS8300 SoC which connected with PMICs on QCS8300 boards. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Tingguo Cheng <quic_tingguoc@quicinc.com> Link: https://lore.kernel.org/r/20250108-adds-spmi-pmic-peripherals-for-qcs8300-v3-1-ee94642279ff@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-22arm64: dts: qcom: qcm2290: Add uart3 nodeWojciech Slenska1-0/+24
Add node to support uart3. Signed-off-by: Wojciech Slenska <wojciech.slenska@gmail.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20241112124651.215537-1-wojciech.slenska@gmail.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-02-22arm64: dts: qcom: qcs6490-rb3gen2: add and enable BT nodeJanaki Ramaiah Thota1-1/+170
Add the PMU node for WCN6750 present on the qcs6490-rb3gen2 board and assign its power outputs to the Bluetooth module. In WCN6750 module sw_ctrl and wifi-enable pins are handled in the wifi controller firmware. Therefore, it is not required to have those pins' entries in the PMU node. Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250221171014.120946-2-quic_janathot@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>