mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.83 Manually rebased: mediatek/patches-6.1/100-dts-update-mt7622-rfb1.patch generic/pending-6.1/737-07-net-ethernet-mtk_eth_soc-add-paths-and-SerDes-modes-.patch
66 lines
2.3 KiB
Diff
66 lines
2.3 KiB
Diff
From 80838ab7ebd416cbac38c1cd30a76d61641f7ee1 Mon Sep 17 00:00:00 2001
|
|
From: Varadarajan Narayanan <quic_varada@quicinc.com>
|
|
Date: Tue, 31 Oct 2023 12:41:39 +0530
|
|
Subject: [PATCH 37/41] cpufreq: qcom-nvmem: Introduce cpufreq for ipq95xx
|
|
|
|
IPQ95xx SoCs have different OPPs available for the CPU based on
|
|
the SoC variant. This can be determined from an eFuse register
|
|
present in the silicon.
|
|
|
|
Added support for ipq95xx on nvmem driver which helps to
|
|
determine OPPs at runtime based on the eFuse register which
|
|
has the CPU frequency limits. opp-supported-hw dt binding
|
|
can be used to indicate the available OPPs for each limit.
|
|
|
|
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
|
|
Signed-off-by: Praveenkumar I <ipkumar@codeaurora.org>
|
|
Signed-off-by: Kathiravan T <quic_kathirav@quicinc.com>
|
|
Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com>
|
|
[ Viresh: Fixed subject ]
|
|
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
|
|
---
|
|
drivers/cpufreq/cpufreq-dt-platdev.c | 1 +
|
|
drivers/cpufreq/qcom-cpufreq-nvmem.c | 5 +++++
|
|
include/dt-bindings/arm/qcom,ids.h | 6 ++++++
|
|
3 files changed, 12 insertions(+)
|
|
|
|
--- a/drivers/cpufreq/cpufreq-dt-platdev.c
|
|
+++ b/drivers/cpufreq/cpufreq-dt-platdev.c
|
|
@@ -164,6 +164,7 @@ static const struct of_device_id blockli
|
|
{ .compatible = "ti,omap3", },
|
|
|
|
{ .compatible = "qcom,ipq8064", },
|
|
+ { .compatible = "qcom,ipq9574", },
|
|
{ .compatible = "qcom,apq8064", },
|
|
{ .compatible = "qcom,msm8974", },
|
|
{ .compatible = "qcom,msm8960", },
|
|
--- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
|
|
+++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
|
|
@@ -148,6 +148,11 @@ static int qcom_cpufreq_kryo_name_versio
|
|
switch (msm_id) {
|
|
case QCOM_ID_MSM8996:
|
|
case QCOM_ID_APQ8096:
|
|
+ case QCOM_ID_IPQ9514:
|
|
+ case QCOM_ID_IPQ9550:
|
|
+ case QCOM_ID_IPQ9554:
|
|
+ case QCOM_ID_IPQ9570:
|
|
+ case QCOM_ID_IPQ9574:
|
|
drv->versions = 1 << (unsigned int)(*speedbin);
|
|
break;
|
|
case QCOM_ID_MSM8996SG:
|
|
--- a/include/dt-bindings/arm/qcom,ids.h
|
|
+++ b/include/dt-bindings/arm/qcom,ids.h
|
|
@@ -140,6 +140,12 @@
|
|
#define QCOM_ID_SC7280 487
|
|
#define QCOM_ID_SC7180P 495
|
|
#define QCOM_ID_SM6375 507
|
|
+#define QCOM_ID_IPQ9514 510
|
|
+#define QCOM_ID_IPQ9550 511
|
|
+#define QCOM_ID_IPQ9554 512
|
|
+#define QCOM_ID_IPQ9570 513
|
|
+#define QCOM_ID_IPQ9574 514
|
|
+#define QCOM_ID_IPQ9510 521
|
|
|
|
/*
|
|
* The board type and revision information, used by Qualcomm bootloaders and
|