aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq807x/patches-5.15/0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ipq807x/patches-5.15/0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch')
-rw-r--r--target/linux/ipq807x/patches-5.15/0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/target/linux/ipq807x/patches-5.15/0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch b/target/linux/ipq807x/patches-5.15/0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch
new file mode 100644
index 0000000000..aa7fe5a868
--- /dev/null
+++ b/target/linux/ipq807x/patches-5.15/0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch
@@ -0,0 +1,50 @@
+From b7b7ea3a0cab42d4f1d4c9ae9eb7c7a3d03e7982 Mon Sep 17 00:00:00 2001
+From: Robert Marko <robimarko@gmail.com>
+Date: Fri, 30 Dec 2022 22:51:47 +0100
+Subject: [PATCH] cpufreq: qcom-nvmem: reuse socinfo SMEM item struct
+
+Now that socinfo SMEM item struct and defines have been moved to a header
+so we can utilize that instead.
+
+Now the SMEM value can be accesed directly, there is no need for defining
+the ID for the SMEM request as well.
+
+Signed-off-by: Robert Marko <robimarko@gmail.com>
+---
+ drivers/cpufreq/qcom-cpufreq-nvmem.c | 14 +++++---------
+ 1 file changed, 5 insertions(+), 9 deletions(-)
+
+--- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
++++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
+@@ -28,8 +28,7 @@
+ #include <linux/pm_opp.h>
+ #include <linux/slab.h>
+ #include <linux/soc/qcom/smem.h>
+-
+-#define MSM_ID_SMEM 137
++#include <linux/soc/qcom/socinfo.h>
+
+ enum _msm_id {
+ MSM8996V3 = 0xF6ul,
+@@ -145,17 +144,14 @@ static void get_krait_bin_format_b(struc
+ static enum _msm8996_version qcom_cpufreq_get_msm_id(void)
+ {
+ size_t len;
+- u32 *msm_id;
++ struct socinfo *info;
+ enum _msm8996_version version;
+
+- msm_id = qcom_smem_get(QCOM_SMEM_HOST_ANY, MSM_ID_SMEM, &len);
+- if (IS_ERR(msm_id))
++ info = qcom_smem_get(QCOM_SMEM_HOST_ANY, SMEM_HW_SW_BUILD_ID, &len);
++ if (IS_ERR(info))
+ return NUM_OF_MSM8996_VERSIONS;
+
+- /* The first 4 bytes are format, next to them is the actual msm-id */
+- msm_id++;
+-
+- switch ((enum _msm_id)*msm_id) {
++ switch (info->id) {
+ case MSM8996V3:
+ case APQ8096V3:
+ version = MSM8996_V3;