Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
arm
mach-omap2
pm.h
Go to the documentation of this file.
1
/*
2
* OMAP2/3 Power Management Routines
3
*
4
* Copyright (C) 2008 Nokia Corporation
5
* Jouni Hogander
6
*
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License version 2 as
9
* published by the Free Software Foundation.
10
*/
11
#ifndef __ARCH_ARM_MACH_OMAP2_PM_H
12
#define __ARCH_ARM_MACH_OMAP2_PM_H
13
14
#include <
linux/err.h
>
15
16
#include "
powerdomain.h
"
17
18
#ifdef CONFIG_CPU_IDLE
19
extern
int
__init
omap3_idle_init
(
void
);
20
extern
int
__init
omap4_idle_init
(
void
);
21
#else
22
static
inline
int
omap3_idle_init
(
void
)
23
{
24
return
0;
25
}
26
27
static
inline
int
omap4_idle_init
(
void
)
28
{
29
return
0;
30
}
31
#endif
32
33
extern
void
*
omap3_secure_ram_storage
;
34
extern
void
omap3_pm_off_mode_enable
(
int
);
35
extern
void
omap_sram_idle
(
void
);
36
extern
int
omap_set_pwrdm_state
(
struct
powerdomain
*pwrdm,
u32
state
);
37
extern
int
omap_pm_clkdms_setup
(
struct
clockdomain
*clkdm,
void
*
unused
);
38
extern
int
(*
omap_pm_suspend
)(
void
);
39
40
#if defined(CONFIG_PM_OPP)
41
extern
int
omap3_opp_init
(
void
);
42
extern
int
omap4_opp_init
(
void
);
43
#else
44
static
inline
int
omap3_opp_init
(
void
)
45
{
46
return
-
EINVAL
;
47
}
48
static
inline
int
omap4_opp_init
(
void
)
49
{
50
return
-
EINVAL
;
51
}
52
#endif
53
54
extern
int
omap3_pm_get_suspend_state
(
struct
powerdomain
*pwrdm);
55
extern
int
omap3_pm_set_suspend_state
(
struct
powerdomain
*pwrdm,
int
state
);
56
57
#ifdef CONFIG_PM_DEBUG
58
extern
u32
enable_off_mode
;
59
#else
60
#define enable_off_mode 0
61
#endif
62
63
#if defined(CONFIG_PM_DEBUG) && defined(CONFIG_DEBUG_FS)
64
extern
void
pm_dbg_update_time
(
struct
powerdomain
*pwrdm,
int
prev
);
65
#else
66
#define pm_dbg_update_time(pwrdm, prev) do {} while (0);
67
#endif
/* CONFIG_PM_DEBUG */
68
69
/* 24xx */
70
extern
void
omap24xx_idle_loop_suspend
(
void
);
71
extern
unsigned
int
omap24xx_idle_loop_suspend_sz
;
72
73
extern
void
omap24xx_cpu_suspend
(
u32
dll_ctrl,
void
__iomem
*sdrc_dlla_ctrl,
74
void
__iomem
*sdrc_power);
75
extern
unsigned
int
omap24xx_cpu_suspend_sz
;
76
77
/* 3xxx */
78
extern
void
omap34xx_cpu_suspend
(
int
save_state);
79
80
/* omap3_do_wfi function pointer and size, for copy to SRAM */
81
extern
void
omap3_do_wfi
(
void
);
82
extern
unsigned
int
omap3_do_wfi_sz
;
83
/* ... and its pointer from SRAM after copy */
84
extern
void
(*
omap3_do_wfi_sram
)(
void
);
85
86
/* save_secure_ram_context function pointer and size, for copy to SRAM */
87
extern
int
save_secure_ram_context
(
u32
*
addr
);
88
extern
unsigned
int
save_secure_ram_context_sz
;
89
90
extern
void
omap3_save_scratchpad_contents
(
void
);
91
92
#define PM_RTA_ERRATUM_i608 (1 << 0)
93
#define PM_SDRC_WAKEUP_ERRATUM_i583 (1 << 1)
94
#define PM_PER_MEMORIES_ERRATUM_i582 (1 << 2)
95
96
#if defined(CONFIG_PM) && defined(CONFIG_ARCH_OMAP3)
97
extern
u16
pm34xx_errata
;
98
#define IS_PM34XX_ERRATUM(id) (pm34xx_errata & (id))
99
extern
void
enable_omap3630_toggle_l2_on_restore(
void
);
100
#else
101
#define IS_PM34XX_ERRATUM(id) 0
102
static
inline
void
enable_omap3630_toggle_l2_on_restore(
void
) { }
103
#endif
/* defined(CONFIG_PM) && defined(CONFIG_ARCH_OMAP3) */
104
105
#ifdef CONFIG_POWER_AVS_OMAP
106
extern
int
omap_devinit_smartreflex
(
void
);
107
extern
void
omap_enable_smartreflex_on_init
(
void
);
108
#else
109
static
inline
int
omap_devinit_smartreflex
(
void
)
110
{
111
return
-
EINVAL
;
112
}
113
114
static
inline
void
omap_enable_smartreflex_on_init
(
void
) {}
115
#endif
116
117
#ifdef CONFIG_TWL4030_CORE
118
extern
int
omap3_twl_init
(
void
);
119
extern
int
omap4_twl_init
(
void
);
120
extern
int
omap3_twl_set_sr_bit
(
bool
enable
);
121
#else
122
static
inline
int
omap3_twl_init
(
void
)
123
{
124
return
-
EINVAL
;
125
}
126
static
inline
int
omap4_twl_init
(
void
)
127
{
128
return
-
EINVAL
;
129
}
130
#endif
131
132
#endif
Generated on Thu Jan 10 2013 12:57:02 for Linux Kernel by
1.8.2