ipq807x: add Qualcomm Atheros IPQ807x target
[openwrt/staging/wigyori.git] / target / linux / ipq807x / patches-5.15 / 0125-cpufreq-qcom-nvmem-reuse-socinfo-SMEM-item-struct.patch
1 From b7b7ea3a0cab42d4f1d4c9ae9eb7c7a3d03e7982 Mon Sep 17 00:00:00 2001
2 From: Robert Marko <robimarko@gmail.com>
3 Date: Fri, 30 Dec 2022 22:51:47 +0100
4 Subject: [PATCH] cpufreq: qcom-nvmem: reuse socinfo SMEM item struct
5
6 Now that socinfo SMEM item struct and defines have been moved to a header
7 so we can utilize that instead.
8
9 Now the SMEM value can be accesed directly, there is no need for defining
10 the ID for the SMEM request as well.
11
12 Signed-off-by: Robert Marko <robimarko@gmail.com>
13 ---
14 drivers/cpufreq/qcom-cpufreq-nvmem.c | 14 +++++---------
15 1 file changed, 5 insertions(+), 9 deletions(-)
16
17 --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
18 +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
19 @@ -28,8 +28,7 @@
20 #include <linux/pm_opp.h>
21 #include <linux/slab.h>
22 #include <linux/soc/qcom/smem.h>
23 -
24 -#define MSM_ID_SMEM 137
25 +#include <linux/soc/qcom/socinfo.h>
26
27 enum _msm_id {
28 MSM8996V3 = 0xF6ul,
29 @@ -145,17 +144,14 @@ static void get_krait_bin_format_b(struc
30 static enum _msm8996_version qcom_cpufreq_get_msm_id(void)
31 {
32 size_t len;
33 - u32 *msm_id;
34 + struct socinfo *info;
35 enum _msm8996_version version;
36
37 - msm_id = qcom_smem_get(QCOM_SMEM_HOST_ANY, MSM_ID_SMEM, &len);
38 - if (IS_ERR(msm_id))
39 + info = qcom_smem_get(QCOM_SMEM_HOST_ANY, SMEM_HW_SW_BUILD_ID, &len);
40 + if (IS_ERR(info))
41 return NUM_OF_MSM8996_VERSIONS;
42
43 - /* The first 4 bytes are format, next to them is the actual msm-id */
44 - msm_id++;
45 -
46 - switch ((enum _msm_id)*msm_id) {
47 + switch (info->id) {
48 case MSM8996V3:
49 case APQ8096V3:
50 version = MSM8996_V3;