diff options
| author | Russell King <rmk@flint.arm.linux.org.uk> | 2004-02-06 15:23:50 +0000 |
|---|---|---|
| committer | Russell King <rmk@flint.arm.linux.org.uk> | 2004-02-06 15:23:50 +0000 |
| commit | be12ab23d4bc4be7c092bb44d966cb152e60f08a (patch) | |
| tree | 09ecb6598dd13de2807cdd09a281921ab762ebf1 /include | |
| parent | f99d18feab15a58e4ec8e7f2850b8d4f10d9909a (diff) | |
[ARM] Add cm_control() for Integrator AP and PP2 platforms.
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-arm/arch-integrator/cm.h | 36 | ||||
| -rw-r--r-- | include/asm-arm/arch-integrator/system.h | 9 |
2 files changed, 38 insertions, 7 deletions
diff --git a/include/asm-arm/arch-integrator/cm.h b/include/asm-arm/arch-integrator/cm.h new file mode 100644 index 000000000000..d31c1a71f781 --- /dev/null +++ b/include/asm-arm/arch-integrator/cm.h @@ -0,0 +1,36 @@ +/* + * update the core module control register. + */ +void cm_control(u32, u32); + +#define CM_CTRL_LED (1 << 0) +#define CM_CTRL_nMBDET (1 << 1) +#define CM_CTRL_REMAP (1 << 2) +#define CM_CTRL_RESET (1 << 3) + +/* + * Integrator/AP,PP2 specific + */ +#define CM_CTRL_HIGHVECTORS (1 << 4) +#define CM_CTRL_BIGENDIAN (1 << 5) +#define CM_CTRL_FASTBUS (1 << 6) +#define CM_CTRL_SYNC (1 << 7) + +/* + * ARM926/946/966 Integrator/CP specific + */ +#define CM_CTRL_LCDBIASEN (1 << 8) +#define CM_CTRL_LCDBIASUP (1 << 9) +#define CM_CTRL_LCDBIASDN (1 << 10) +#define CM_CTRL_LCDMUXSEL_MASK (7 << 11) +#define CM_CTRL_LCDMUXSEL_GENLCD (1 << 11) +#define CM_CTRL_LCDMUXSEL_SHARPLCD1 (3 << 11) +#define CM_CTRL_LCDMUXSEL_SHARPLCD2 (4 << 11) +#define CM_CTRL_LCDMUXSEL_VGA (7 << 11) +#define CM_CTRL_LCDEN0 (1 << 14) +#define CM_CTRL_LCDEN1 (1 << 15) +#define CM_CTRL_STATIC1 (1 << 16) +#define CM_CTRL_STATIC2 (1 << 17) +#define CM_CTRL_STATIC (1 << 18) +#define CM_CTRL_n24BITEN (1 << 19) +#define CM_CTRL_EBIWP (1 << 20) diff --git a/include/asm-arm/arch-integrator/system.h b/include/asm-arm/arch-integrator/system.h index 904a5822d6e3..8ea442237d20 100644 --- a/include/asm-arm/arch-integrator/system.h +++ b/include/asm-arm/arch-integrator/system.h @@ -21,7 +21,7 @@ #ifndef __ASM_ARCH_SYSTEM_H #define __ASM_ARCH_SYSTEM_H -#include <asm/arch/platform.h> +#include <asm/arch/cm.h> static inline void arch_idle(void) { @@ -34,16 +34,11 @@ static inline void arch_idle(void) static inline void arch_reset(char mode) { - unsigned int hdr_ctrl = (IO_ADDRESS(INTEGRATOR_HDR_BASE) + INTEGRATOR_HDR_CTRL_OFFSET); - unsigned int val; - /* * To reset, we hit the on-board reset register * in the system FPGA */ - val = __raw_readl(hdr_ctrl); - val |= INTEGRATOR_HDR_CTRL_RESET; - __raw_writel(val, hdr_ctrl); + cm_control(CM_CTRL_RESET, CM_CTRL_RESET); } #endif |
