aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-msm/smd_private.h
diff options
context:
space:
mode:
authorArve Hjønnevåg <arve@android.com>2009-06-16 17:48:21 -0400
committerDaniel Walker <dwalker@codeaurora.org>2010-05-12 12:15:07 -0400
commitec9d3d14ffa9454e6d51e5dd1889d6e9e0be5198 (patch)
treedb2b3bde28805d86ce618e3c04e0bbf7abb0119d /arch/arm/mach-msm/smd_private.h
parent283794100d2b1c1645b2949273aa4be29929812d (diff)
[ARM] msm: Add 8k power collapse support to smd
Signed-off-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
Diffstat (limited to 'arch/arm/mach-msm/smd_private.h')
-rw-r--r--arch/arm/mach-msm/smd_private.h24
1 files changed, 20 insertions, 4 deletions
diff --git a/arch/arm/mach-msm/smd_private.h b/arch/arm/mach-msm/smd_private.h
index 35e08359bbdb..71f9612d5f50 100644
--- a/arch/arm/mach-msm/smd_private.h
+++ b/arch/arm/mach-msm/smd_private.h
@@ -61,12 +61,29 @@ struct smem_shared
61#define SMSM_V1_SIZE (sizeof(unsigned) * 8) 61#define SMSM_V1_SIZE (sizeof(unsigned) * 8)
62#define SMSM_V2_SIZE (sizeof(unsigned) * 4) 62#define SMSM_V2_SIZE (sizeof(unsigned) * 4)
63 63
64#ifndef CONFIG_ARCH_MSM_SCORPION
64struct smsm_interrupt_info 65struct smsm_interrupt_info
65{ 66{
66 uint32_t aArm_en_mask; 67 uint32_t interrupt_mask;
67 uint32_t aArm_interrupts_pending; 68 uint32_t pending_interrupts;
68 uint32_t aArm_wakeup_reason; 69 uint32_t wakeup_reason;
70};
71#else
72#define DEM_MAX_PORT_NAME_LEN (20)
73struct msm_dem_slave_data {
74 uint32_t sleep_time;
75 uint32_t interrupt_mask;
76 uint32_t resources_used;
77 uint32_t reserved1;
78
79 uint32_t wakeup_reason;
80 uint32_t pending_interrupts;
81 uint32_t rpc_prog;
82 uint32_t rpc_proc;
83 char smd_port_name[DEM_MAX_PORT_NAME_LEN];
84 uint32_t reserved2;
69}; 85};
86#endif
70 87
71#define SZ_DIAG_ERR_MSG 0xC8 88#define SZ_DIAG_ERR_MSG 0xC8
72#define ID_DIAG_ERR_MSG SMEM_DIAG_ERR_MESSAGE 89#define ID_DIAG_ERR_MSG SMEM_DIAG_ERR_MESSAGE
@@ -131,7 +148,6 @@ void *smem_alloc(unsigned id, unsigned size);
131int smsm_change_state(enum smsm_state_item item, uint32_t clear_mask, uint32_t set_mask); 148int smsm_change_state(enum smsm_state_item item, uint32_t clear_mask, uint32_t set_mask);
132uint32_t smsm_get_state(enum smsm_state_item item); 149uint32_t smsm_get_state(enum smsm_state_item item);
133int smsm_set_sleep_duration(uint32_t delay); 150int smsm_set_sleep_duration(uint32_t delay);
134int smsm_set_interrupt_info(struct smsm_interrupt_info *info);
135void smsm_print_sleep_info(void); 151void smsm_print_sleep_info(void);
136 152
137#define SMEM_NUM_SMD_CHANNELS 64 153#define SMEM_NUM_SMD_CHANNELS 64