[ARM] 5473/1: U300 core machine support
This adds core support for the ST-Ericsson U300 series platforms: U300, U330, U335 and U365. Supports memory mappings, interrupt controller, system timer (clocksource and clockevents), and binds to the existing drivers for the PrimeCells used in this design: PL190 (VIC), PL180 (MMC/SD host) and PL011 (UART). This is intented to serve as starting point for our mainling work, more patches to follow. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:

committed by
Russell King

parent
cd27e48541
commit
bb3cee2b35
42
arch/arm/mach-u300/include/mach/system.h
Normal file
42
arch/arm/mach-u300/include/mach/system.h
Normal file
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
*
|
||||
* arch/arm/mach-u300/include/mach/system.h
|
||||
*
|
||||
*
|
||||
* Copyright (C) 2007-2009 ST-Ericsson AB
|
||||
* License terms: GNU General Public License (GPL) version 2
|
||||
* System shutdown and reset functions.
|
||||
* Author: Linus Walleij <linus.walleij@stericsson.com>
|
||||
*/
|
||||
#include <mach/hardware.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/hardware/vic.h>
|
||||
#include <asm/irq.h>
|
||||
|
||||
/* Forward declare this function from the watchdog */
|
||||
void coh901327_watchdog_reset(void);
|
||||
|
||||
static inline void arch_idle(void)
|
||||
{
|
||||
cpu_do_idle();
|
||||
}
|
||||
|
||||
static void arch_reset(char mode, const char *cmd)
|
||||
{
|
||||
switch (mode) {
|
||||
case 's':
|
||||
case 'h':
|
||||
printk(KERN_CRIT "RESET: shutting down/rebooting system\n");
|
||||
/* Disable interrupts */
|
||||
local_irq_disable();
|
||||
#ifdef CONFIG_COH901327_WATCHDOG
|
||||
coh901327_watchdog_reset();
|
||||
#endif
|
||||
break;
|
||||
default:
|
||||
/* Do nothing */
|
||||
break;
|
||||
}
|
||||
/* Wait for system do die/reset. */
|
||||
while (1);
|
||||
}
|
Reference in New Issue
Block a user