diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-22 12:41:01 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-22 12:41:01 -0400 |
commit | cdd3a354a05b0c33fe33ab11a0fb0838396cad19 (patch) | |
tree | ea2c87bbc2dc5865a97e73e201661d69937b45d5 /arch/arm/plat-omap | |
parent | 813a95e5b4fa936bbde10ef89188932745dcd7f4 (diff) | |
parent | ada2e35defe6c6f0a986ec8147e47726fbd0e7b1 (diff) |
Merge tag 'pm' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull arm-soc power management changes from Olof Johansson:
"Power management changes here are mostly for the omap platform, but
also include cpuidle changes for ux500 and suspend/resume code for
mmp."
* tag 'pm' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (48 commits)
ARM: OMAP2+: WDTIMER integration: fix !PM boot crash, disarm timer after hwmod reset
ARM: OMAP2/3: hwmod data: Add 32k-sync timer data to hwmod database
ARM: OMAP4: hwmod_data: Name the common irq for McBSP ports
ARM: OMAP4: hwmod data: I2C: add flag for context restore
ARM: OMAP3: hwmod_data: Rename the common irq for McBSP ports
ARM: OMAP2xxx: hwmod data: add HDQ/1-wire hwmod
ARM: OMAP3: hwmod data: add HDQ/1-wire hwmod
ARM: OMAP2+: hwmod data: add HDQ/1-wire hwmod shared data
ARM: OMAP2+: HDQ1W: add custom reset function
ARM: OMAP2420: hwmod data: Add MMC hwmod data for 2420
arm: omap3: clockdomain data: Remove superfluous commas from gfx_sgx_3xxx_wkdeps[]
ARM: OMAP2+: powerdomain: Get rid off duplicate pwrdm_clkdm_state_switch() API
ARM: OMAP3: clock data: add clockdomain for HDQ functional clock
ARM: OMAP3+: dpll: Configure autoidle mode only if it's supported
ARM: OMAP2+: dmtimer: cleanup iclk usage
ARM: OMAP4+: Add prm and cm base init function.
ARM: OMAP2/3: Add idle_st bits for ST_32KSYNC timer to prcm-common header
ARM: OMAP3: Fix CM register bit masks
ARM: OMAP: clock: convert AM3517/3505 detection/flags to AM35xx
ARM: OMAP3: clock data: treat all AM35x devices the same
...
Diffstat (limited to 'arch/arm/plat-omap')
-rw-r--r-- | arch/arm/plat-omap/include/plat/clkdev_omap.h | 4 | ||||
-rw-r--r-- | arch/arm/plat-omap/include/plat/dmtimer.h | 2 | ||||
-rw-r--r-- | arch/arm/plat-omap/include/plat/hdq1w.h | 36 | ||||
-rw-r--r-- | arch/arm/plat-omap/include/plat/mmc.h | 4 | ||||
-rw-r--r-- | arch/arm/plat-omap/include/plat/omap_hwmod.h | 1 |
5 files changed, 43 insertions, 4 deletions
diff --git a/arch/arm/plat-omap/include/plat/clkdev_omap.h b/arch/arm/plat-omap/include/plat/clkdev_omap.h index b299b8d201c8..d0ed8c443a63 100644 --- a/arch/arm/plat-omap/include/plat/clkdev_omap.h +++ b/arch/arm/plat-omap/include/plat/clkdev_omap.h | |||
@@ -34,8 +34,7 @@ struct omap_clk { | |||
34 | #define CK_243X (1 << 5) /* 243x, 253x */ | 34 | #define CK_243X (1 << 5) /* 243x, 253x */ |
35 | #define CK_3430ES1 (1 << 6) /* 34xxES1 only */ | 35 | #define CK_3430ES1 (1 << 6) /* 34xxES1 only */ |
36 | #define CK_3430ES2PLUS (1 << 7) /* 34xxES2, ES3, non-Sitara 35xx only */ | 36 | #define CK_3430ES2PLUS (1 << 7) /* 34xxES2, ES3, non-Sitara 35xx only */ |
37 | #define CK_3505 (1 << 8) | 37 | #define CK_AM35XX (1 << 9) /* Sitara AM35xx */ |
38 | #define CK_3517 (1 << 9) | ||
39 | #define CK_36XX (1 << 10) /* 36xx/37xx-specific clocks */ | 38 | #define CK_36XX (1 << 10) /* 36xx/37xx-specific clocks */ |
40 | #define CK_443X (1 << 11) | 39 | #define CK_443X (1 << 11) |
41 | #define CK_TI816X (1 << 12) | 40 | #define CK_TI816X (1 << 12) |
@@ -44,7 +43,6 @@ struct omap_clk { | |||
44 | 43 | ||
45 | 44 | ||
46 | #define CK_34XX (CK_3430ES1 | CK_3430ES2PLUS) | 45 | #define CK_34XX (CK_3430ES1 | CK_3430ES2PLUS) |
47 | #define CK_AM35XX (CK_3505 | CK_3517) /* all Sitara AM35xx */ | ||
48 | #define CK_3XXX (CK_34XX | CK_AM35XX | CK_36XX) | 46 | #define CK_3XXX (CK_34XX | CK_AM35XX | CK_36XX) |
49 | 47 | ||
50 | 48 | ||
diff --git a/arch/arm/plat-omap/include/plat/dmtimer.h b/arch/arm/plat-omap/include/plat/dmtimer.h index 230ff91be491..bdf871a84d62 100644 --- a/arch/arm/plat-omap/include/plat/dmtimer.h +++ b/arch/arm/plat-omap/include/plat/dmtimer.h | |||
@@ -259,7 +259,7 @@ struct omap_dm_timer { | |||
259 | unsigned long phys_base; | 259 | unsigned long phys_base; |
260 | int id; | 260 | int id; |
261 | int irq; | 261 | int irq; |
262 | struct clk *iclk, *fclk; | 262 | struct clk *fclk; |
263 | 263 | ||
264 | void __iomem *io_base; | 264 | void __iomem *io_base; |
265 | void __iomem *sys_stat; /* TISTAT timer status */ | 265 | void __iomem *sys_stat; /* TISTAT timer status */ |
diff --git a/arch/arm/plat-omap/include/plat/hdq1w.h b/arch/arm/plat-omap/include/plat/hdq1w.h new file mode 100644 index 000000000000..0c1efc846d8d --- /dev/null +++ b/arch/arm/plat-omap/include/plat/hdq1w.h | |||
@@ -0,0 +1,36 @@ | |||
1 | /* | ||
2 | * Shared macros and function prototypes for the HDQ1W/1-wire IP block | ||
3 | * | ||
4 | * Copyright (C) 2012 Texas Instruments, Inc. | ||
5 | * Paul Walmsley | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or | ||
8 | * modify it under the terms of the GNU General Public License | ||
9 | * version 2 as published by the Free Software Foundation. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, but | ||
12 | * WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
14 | * General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA | ||
19 | * 02110-1301 USA | ||
20 | */ | ||
21 | #ifndef ARCH_ARM_MACH_OMAP2_HDQ1W_H | ||
22 | #define ARCH_ARM_MACH_OMAP2_HDQ1W_H | ||
23 | |||
24 | #include <plat/omap_hwmod.h> | ||
25 | |||
26 | /* | ||
27 | * XXX A future cleanup patch should modify | ||
28 | * drivers/w1/masters/omap_hdq.c to use these macros | ||
29 | */ | ||
30 | #define HDQ_CTRL_STATUS_OFFSET 0x0c | ||
31 | #define HDQ_CTRL_STATUS_CLOCKENABLE_SHIFT 5 | ||
32 | |||
33 | |||
34 | extern int omap_hdq1w_reset(struct omap_hwmod *oh); | ||
35 | |||
36 | #endif | ||
diff --git a/arch/arm/plat-omap/include/plat/mmc.h b/arch/arm/plat-omap/include/plat/mmc.h index 7a38750c0079..3e7ae0f0215f 100644 --- a/arch/arm/plat-omap/include/plat/mmc.h +++ b/arch/arm/plat-omap/include/plat/mmc.h | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/mmc/host.h> | 16 | #include <linux/mmc/host.h> |
17 | 17 | ||
18 | #include <plat/board.h> | 18 | #include <plat/board.h> |
19 | #include <plat/omap_hwmod.h> | ||
19 | 20 | ||
20 | #define OMAP15XX_NR_MMC 1 | 21 | #define OMAP15XX_NR_MMC 1 |
21 | #define OMAP16XX_NR_MMC 2 | 22 | #define OMAP16XX_NR_MMC 2 |
@@ -195,4 +196,7 @@ static inline int omap_mmc_add(const char *name, int id, unsigned long base, | |||
195 | } | 196 | } |
196 | 197 | ||
197 | #endif | 198 | #endif |
199 | |||
200 | extern int omap_msdi_reset(struct omap_hwmod *oh); | ||
201 | |||
198 | #endif | 202 | #endif |
diff --git a/arch/arm/plat-omap/include/plat/omap_hwmod.h b/arch/arm/plat-omap/include/plat/omap_hwmod.h index 14dde32cd406..c835b7194ff5 100644 --- a/arch/arm/plat-omap/include/plat/omap_hwmod.h +++ b/arch/arm/plat-omap/include/plat/omap_hwmod.h | |||
@@ -214,6 +214,7 @@ struct omap_hwmod_addr_space { | |||
214 | #define OCP_USER_MPU (1 << 0) | 214 | #define OCP_USER_MPU (1 << 0) |
215 | #define OCP_USER_SDMA (1 << 1) | 215 | #define OCP_USER_SDMA (1 << 1) |
216 | #define OCP_USER_DSP (1 << 2) | 216 | #define OCP_USER_DSP (1 << 2) |
217 | #define OCP_USER_IVA (1 << 3) | ||
217 | 218 | ||
218 | /* omap_hwmod_ocp_if.flags bits */ | 219 | /* omap_hwmod_ocp_if.flags bits */ |
219 | #define OCPIF_SWSUP_IDLE (1 << 0) | 220 | #define OCPIF_SWSUP_IDLE (1 << 0) |