Skip to content

Commit 57e2b06

Browse files
lumagandersson
authored andcommitted
soc: qcom: spm: remove driver-internal structures from the driver API
Move internal SPM driver structures to the driver itself, removing them from the public API. The CPUidle driver doesn't use them at all. Reviewed-by: Konrad Dybcio <[email protected]> Signed-off-by: Dmitry Baryshkov <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Bjorn Andersson <[email protected]>
1 parent aa4e327 commit 57e2b06

File tree

2 files changed

+21
-22
lines changed

2 files changed

+21
-22
lines changed

drivers/soc/qcom/spm.c

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,26 @@ enum spm_reg {
3636
SPM_REG_NR,
3737
};
3838

39+
#define MAX_PMIC_DATA 2
40+
#define MAX_SEQ_DATA 64
41+
42+
struct spm_reg_data {
43+
const u16 *reg_offset;
44+
u32 spm_cfg;
45+
u32 spm_dly;
46+
u32 pmic_dly;
47+
u32 pmic_data[MAX_PMIC_DATA];
48+
u32 avs_ctl;
49+
u32 avs_limit;
50+
u8 seq[MAX_SEQ_DATA];
51+
u8 start_index[PM_SLEEP_MODE_NR];
52+
};
53+
54+
struct spm_driver_data {
55+
void __iomem *reg_base;
56+
const struct spm_reg_data *reg_data;
57+
};
58+
3959
static const u16 spm_reg_offset_v4_1[SPM_REG_NR] = {
4060
[SPM_REG_AVS_CTL] = 0x904,
4161
[SPM_REG_AVS_LIMIT] = 0x908,

include/soc/qcom/spm.h

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,6 @@
77
#ifndef __SPM_H__
88
#define __SPM_H__
99

10-
#include <linux/cpuidle.h>
11-
12-
#define MAX_PMIC_DATA 2
13-
#define MAX_SEQ_DATA 64
14-
1510
enum pm_sleep_mode {
1611
PM_SLEEP_MODE_STBY,
1712
PM_SLEEP_MODE_RET,
@@ -20,23 +15,7 @@ enum pm_sleep_mode {
2015
PM_SLEEP_MODE_NR,
2116
};
2217

23-
struct spm_reg_data {
24-
const u16 *reg_offset;
25-
u32 spm_cfg;
26-
u32 spm_dly;
27-
u32 pmic_dly;
28-
u32 pmic_data[MAX_PMIC_DATA];
29-
u32 avs_ctl;
30-
u32 avs_limit;
31-
u8 seq[MAX_SEQ_DATA];
32-
u8 start_index[PM_SLEEP_MODE_NR];
33-
};
34-
35-
struct spm_driver_data {
36-
void __iomem *reg_base;
37-
const struct spm_reg_data *reg_data;
38-
};
39-
18+
struct spm_driver_data;
4019
void spm_set_low_power_mode(struct spm_driver_data *drv,
4120
enum pm_sleep_mode mode);
4221

0 commit comments

Comments
 (0)