2 * Copyright 2008 Freescale Semiconductor, Inc. All Rights Reserved.
3 * Copyright 2008 Embedded Alley Solutions, Inc All Rights Reserved.
7 * The code contained herein is licensed under the GNU General Public
8 * License. You may obtain a copy of the GNU General Public License
9 * Version 2 or later at the following locations:
11 * http://www.opensource.org/licenses/gpl-license.html
12 * http://www.gnu.org/copyleft/gpl.html
14 #ifndef __ASM_PLAT_PLATFORM_H
15 #define __ASM_PLAT_PLATFORM_H
20 #include <asm/sizes.h>
22 /* Virtual address where registers are mapped */
23 #define STMP3XXX_REGS_PHBASE 0x80000000
25 #define STMP3XXX_REGS_BASE 0xF0000000
27 #define STMP3XXX_REGS_BASE (void __iomem *)0xF0000000
29 #define STMP3XXX_REGS_SIZE SZ_1M
31 /* Virtual address where OCRAM is mapped */
32 #define STMP3XXX_OCRAM_PHBASE 0x00000000
34 #define STMP3XXX_OCRAM_BASE 0xf1000000
36 #define STMP3XXX_OCRAM_BASE (void __iomem *)0xf1000000
38 #define STMP3XXX_OCRAM_SIZE (32 * SZ_1K)
40 #ifdef CONFIG_ARCH_STMP37XX
41 #define IRQ_PRIORITY_REG_RD HW_ICOLL_PRIORITYn_RD
42 #define IRQ_PRIORITY_REG_WR HW_ICOLL_PRIORITYn_WR
45 #ifdef CONFIG_ARCH_STMP378X
46 #define IRQ_PRIORITY_REG_RD HW_ICOLL_INTERRUPTn_RD
47 #define IRQ_PRIORITY_REG_WR HW_ICOLL_INTERRUPTn_WR
50 #define HW_STMP3XXX_SET 0x04
51 #define HW_STMP3XXX_CLR 0x08
52 #define HW_STMP3XXX_TOG 0x0c
55 static inline void stmp3xxx_clearl(u32 v
, void __iomem
*r
)
57 __raw_writel(v
, r
+ HW_STMP3XXX_CLR
);
60 static inline void stmp3xxx_setl(u32 v
, void __iomem
*r
)
62 __raw_writel(v
, r
+ HW_STMP3XXX_SET
);
66 #define BF(value, field) (((value) << BP_##field) & BM_##field)
68 #endif /* __ASM_ARCH_PLATFORM_H */