summaryrefslogtreecommitdiffstats
path: root/cpu/mpc5xx
diff options
context:
space:
mode:
Diffstat (limited to 'cpu/mpc5xx')
-rw-r--r--cpu/mpc5xx/Makefile6
-rw-r--r--cpu/mpc5xx/config.mk5
-rw-r--r--cpu/mpc5xx/cpu.c41
-rw-r--r--cpu/mpc5xx/cpu_init.c12
-rw-r--r--cpu/mpc5xx/interrupts.c22
-rw-r--r--cpu/mpc5xx/serial.c55
-rw-r--r--cpu/mpc5xx/speed.c10
-rw-r--r--cpu/mpc5xx/start.S23
8 files changed, 85 insertions, 89 deletions
diff --git a/cpu/mpc5xx/Makefile b/cpu/mpc5xx/Makefile
index c05b394f56..ee20dda6c4 100644
--- a/cpu/mpc5xx/Makefile
+++ b/cpu/mpc5xx/Makefile
@@ -23,10 +23,10 @@
#
# File: cpu/mpc5xx/Makefile
-#
+#
# Discription: Makefile to build mpc5xx cpu configuration.
# Will include top config.mk which itselfs
-# uses the definitions made in cpu/mpc5xx/config.mk
+# uses the definitions made in cpu/mpc5xx/config.mk
#
@@ -34,7 +34,7 @@ include $(TOPDIR)/config.mk
LIB = lib$(CPU).a
-START = start.S
+START = start.S
OBJS = serial.o cpu.o cpu_init.o interrupts.o traps.o speed.o
all: .depend $(START) $(LIB)
diff --git a/cpu/mpc5xx/config.mk b/cpu/mpc5xx/config.mk
index d302d4835c..cfed4994ce 100644
--- a/cpu/mpc5xx/config.mk
+++ b/cpu/mpc5xx/config.mk
@@ -23,12 +23,11 @@
#
# File: config.mk
-#
+#
# Discription: compiler flags and make definitions
#
-
+
PLATFORM_RELFLAGS += -mrelocatable -ffixed-r14 -meabi
PLATFORM_CPPFLAGS += -DCONFIG_5xx -ffixed-r2 -ffixed-r29 -mpowerpc -msoft-float
-
diff --git a/cpu/mpc5xx/cpu.c b/cpu/mpc5xx/cpu.c
index 5b3bd26b43..cc695118e0 100644
--- a/cpu/mpc5xx/cpu.c
+++ b/cpu/mpc5xx/cpu.c
@@ -17,15 +17,15 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation,
+ * Foundation,
*/
/*
* File: cpu.c
- *
- * Discription: Some cpu specific function for watchdog,
+ *
+ * Discription: Some cpu specific function for watchdog,
* cpu version test, clock setting ...
- *
+ *
*/
@@ -74,7 +74,7 @@ int checkcpu (void)
}
/*
- * Called by macro WATCHDOG_RESET
+ * Called by macro WATCHDOG_RESET
*/
#if defined(CONFIG_WATCHDOG)
void watchdog_reset (void)
@@ -93,7 +93,7 @@ void reset_5xx_watchdog (volatile immap_t * immr)
{
/* Use the MPC5xx Internal Watchdog */
immr->im_siu_conf.sc_swsr = 0x556c; /* Prevent SW time-out */
- immr->im_siu_conf.sc_swsr = 0xaa39;
+ immr->im_siu_conf.sc_swsr = 0xaa39;
}
#endif /* CONFIG_WATCHDOG */
@@ -124,32 +124,31 @@ unsigned long get_tbclk (void)
/*
- * Reset board
+ * Reset board
*/
int do_reset (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
{
ulong addr;
-
+
/* Interrupts off, enable reset */
- __asm__ volatile (" mtspr 81, %r0 \n\t"
+ __asm__ volatile (" mtspr 81, %r0 \n\t"
" mfmsr %r3 \n\t"
" rlwinm %r31,%r3,0,25,23\n\t"
" mtmsr %r31 \n\t");
- /*
- * Trying to execute the next instruction at a non-existing address
- * should cause a machine check, resulting in reset
- */
+ /*
+ * Trying to execute the next instruction at a non-existing address
+ * should cause a machine check, resulting in reset
+ */
#ifdef CFG_RESET_ADDRESS
- addr = CFG_RESET_ADDRESS;
+ addr = CFG_RESET_ADDRESS;
#else
- /*
- * note: when CFG_MONITOR_BASE points to a RAM address, CFG_MONITOR_BASE * - sizeof (ulong) is usually a valid address. Better pick an address
- * known to be invalid on your system and assign it to CFG_RESET_ADDRESS.
- * "(ulong)-1" used to be a good choice for many systems...
- */
- addr = CFG_MONITOR_BASE - sizeof (ulong);
+ /*
+ * note: when CFG_MONITOR_BASE points to a RAM address, CFG_MONITOR_BASE * - sizeof (ulong) is usually a valid address. Better pick an address
+ * known to be invalid on your system and assign it to CFG_RESET_ADDRESS.
+ * "(ulong)-1" used to be a good choice for many systems...
+ */
+ addr = CFG_MONITOR_BASE - sizeof (ulong);
#endif
((void (*) (void)) addr) ();
return 1;
}
-
diff --git a/cpu/mpc5xx/cpu_init.c b/cpu/mpc5xx/cpu_init.c
index 27cf3d6b17..e19d0f49b9 100644
--- a/cpu/mpc5xx/cpu_init.c
+++ b/cpu/mpc5xx/cpu_init.c
@@ -16,12 +16,12 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation,
+ * Foundation,
*/
/*
* File: cpu_init.c
- *
+ *
* Discription: Contains initialisation functions to setup
* the cpu properly
*
@@ -32,7 +32,7 @@
#include <watchdog.h>
/*
- * Setup essential cpu registers to run
+ * Setup essential cpu registers to run
*/
void cpu_init_f (volatile immap_t * immr)
{
@@ -45,7 +45,7 @@ void cpu_init_f (volatile immap_t * immr)
#if defined(CONFIG_WATCHDOG)
reset_5xx_watchdog (immr);
-#endif
+#endif
/* SIUMCR - contains debug pin configuration */
immr->im_siu_conf.sc_siumcr |= CFG_SIUMCR;
@@ -56,10 +56,10 @@ void cpu_init_f (volatile immap_t * immr)
/* Full IMB bus speed */
immr->im_uimb.uimb_umcr = CFG_UMCR;
-
+
/* Time base and decrementer will be enables (TBE) */
/* in init_timebase() in time.c called from board_init_f(). */
-
+
/* Initialize the PIT. Unlock PISCRK */
immr->im_sitk.sitk_piscrk = KAPWR_KEY;
immr->im_sit.sit_piscr = CFG_PISCR;
diff --git a/cpu/mpc5xx/interrupts.c b/cpu/mpc5xx/interrupts.c
index 282c3165d5..4618680000 100644
--- a/cpu/mpc5xx/interrupts.c
+++ b/cpu/mpc5xx/interrupts.c
@@ -17,12 +17,12 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation,
+ * Foundation,
*/
/*
* File: interrupt.c
- *
+ *
* Discription: Contains interrupt routines needed by U-Boot
*
*/
@@ -46,7 +46,7 @@ struct interrupt_action {
static struct interrupt_action irq_vecs[NR_IRQS];
/*
- * Local function prototypes
+ * Local function prototypes
*/
static __inline__ unsigned long get_msr (void)
{
@@ -78,15 +78,15 @@ static __inline__ void set_dec (unsigned long val)
}
/*
- * Enable interrupts
- */
+ * Enable interrupts
+ */
void enable_interrupts (void)
{
set_msr (get_msr () | MSR_EE);
}
-/*
- * Returns flag if MSR_EE was set before
+/*
+ * Returns flag if MSR_EE was set before
*/
int disable_interrupts (void)
{
@@ -97,7 +97,7 @@ int disable_interrupts (void)
}
/*
- * Initialise interrupts
+ * Initialise interrupts
*/
int interrupt_init (void)
@@ -209,7 +209,7 @@ void irq_free_handler (int vec)
volatile ulong timestamp = 0;
/*
- * Timer interrupt - gets called when bit 0 of DEC changes from
+ * Timer interrupt - gets called when bit 0 of DEC changes from
* 0. Decrementer is enabled with bit TBE in TBSCR.
*/
void timer_interrupt (struct pt_regs *regs)
@@ -226,7 +226,7 @@ void timer_interrupt (struct pt_regs *regs)
immr->im_clkrstk.cark_plprcrk = KAPWR_KEY;
__asm__ ("nop");
immr->im_clkrst.car_plprcr |= PLPRCR_TEXPS | PLPRCR_TMIST;
-
+
/* Restore Decrementer Count */
set_dec (decrementer_count);
@@ -249,7 +249,7 @@ void timer_interrupt (struct pt_regs *regs)
}
/*
- * Reset timer
+ * Reset timer
*/
void reset_timer (void)
{
diff --git a/cpu/mpc5xx/serial.c b/cpu/mpc5xx/serial.c
index 738c275f81..48687829e5 100644
--- a/cpu/mpc5xx/serial.c
+++ b/cpu/mpc5xx/serial.c
@@ -17,13 +17,13 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation,
+ * Foundation,
*/
/*
* File: serial.c
- *
- * Discription: Serial interface driver for SCI1 and SCI2.
+ *
+ * Discription: Serial interface driver for SCI1 and SCI2.
* Since this code will be called from ROM use
* only non-static local variables.
*
@@ -36,7 +36,7 @@
/*
- * Local function prototypes
+ * Local function prototypes
*/
static int ready_to_send(void);
@@ -54,25 +54,25 @@ int serial_init (void)
#if defined(CONFIG_5xx_CONS_SCI1)
/* 10-Bit, 1 start bit, 8 data bit, no parity, 1 stop bit */
immr->im_qsmcm.qsmcm_scc1r1 = SCI_M_10;
- immr->im_qsmcm.qsmcm_scc1r1 = SCI_TE | SCI_RE;
+ immr->im_qsmcm.qsmcm_scc1r1 = SCI_TE | SCI_RE;
#else
- immr->im_qsmcm.qsmcm_scc2r1 = SCI_M_10;
+ immr->im_qsmcm.qsmcm_scc2r1 = SCI_M_10;
immr->im_qsmcm.qsmcm_scc2r1 = SCI_TE | SCI_RE;
#endif
return 0;
}
void serial_putc(const char c)
-{
+{
volatile immap_t *immr = (immap_t *)CFG_IMMR;
-
+
/* Test for completition */
if(ready_to_send()) {
#if defined(CONFIG_5xx_CONS_SCI1)
- immr->im_qsmcm.qsmcm_sc1dr = (short)c;
+ immr->im_qsmcm.qsmcm_sc1dr = (short)c;
#else
immr->im_qsmcm.qsmcm_sc2dr = (short)c;
-#endif
+#endif
if(c == '\n') {
if(ready_to_send());
#if defined(CONFIG_5xx_CONS_SCI1)
@@ -85,27 +85,27 @@ void serial_putc(const char c)
}
int serial_getc(void)
-{
+{
volatile immap_t *immr = (immap_t *)CFG_IMMR;
volatile short status;
unsigned char tmp;
-
+
/* New data ? */
do {
#if defined(CONFIG_5xx_CONS_SCI1)
- status = immr->im_qsmcm.qsmcm_sc1sr;
+ status = immr->im_qsmcm.qsmcm_sc1sr;
#else
status = immr->im_qsmcm.qsmcm_sc2sr;
#endif
#if defined(CONFIG_WATCHDOG)
- reset_5xx_watchdog (immr);
+ reset_5xx_watchdog (immr);
#endif
- } while ((status & SCI_RDRF) == 0);
-
+ } while ((status & SCI_RDRF) == 0);
+
/* Read data */
#if defined(CONFIG_5xx_CONS_SCI1)
- tmp = (unsigned char)(immr->im_qsmcm.qsmcm_sc1dr & SCI_SCXDR_MK);
+ tmp = (unsigned char)(immr->im_qsmcm.qsmcm_sc1dr & SCI_SCXDR_MK);
#else
tmp = (unsigned char)( immr->im_qsmcm.qsmcm_sc2dr & SCI_SCXDR_MK);
#endif
@@ -115,27 +115,27 @@ int serial_getc(void)
int serial_tstc()
{
volatile immap_t *immr = (immap_t *)CFG_IMMR;
- short status;
+ short status;
/* New data character ? */
#if defined(CONFIG_5xx_CONS_SCI1)
- status = immr->im_qsmcm.qsmcm_sc1sr;
+ status = immr->im_qsmcm.qsmcm_sc1sr;
#else
status = immr->im_qsmcm.qsmcm_sc2sr;
#endif
- return (status & SCI_RDRF);
+ return (status & SCI_RDRF);
}
void serial_setbrg (void)
{
DECLARE_GLOBAL_DATA_PTR;
- volatile immap_t *immr = (immap_t *)CFG_IMMR;
+ volatile immap_t *immr = (immap_t *)CFG_IMMR;
short scxbr;
/* Set baudrate */
scxbr = (gd->cpu_clk / (32 * gd->baudrate));
#if defined(CONFIG_5xx_CONS_SCI1)
- immr->im_qsmcm.qsmcm_scc1r0 = (scxbr & SCI_SCXBR_MK);
+ immr->im_qsmcm.qsmcm_scc1r0 = (scxbr & SCI_SCXBR_MK);
#else
immr->im_qsmcm.qsmcm_scc2r0 = (scxbr & SCI_SCXBR_MK);
#endif
@@ -154,18 +154,17 @@ int ready_to_send(void)
volatile immap_t *immr = (immap_t *)CFG_IMMR;
volatile short status;
- do {
+ do {
#if defined(CONFIG_5xx_CONS_SCI1)
- status = immr->im_qsmcm.qsmcm_sc1sr;
+ status = immr->im_qsmcm.qsmcm_sc1sr;
#else
status = immr->im_qsmcm.qsmcm_sc2sr;
#endif
#if defined(CONFIG_WATCHDOG)
- reset_5xx_watchdog (immr);
+ reset_5xx_watchdog (immr);
#endif
- } while ((status & SCI_TDRE) == 0);
- return 1;
+ } while ((status & SCI_TDRE) == 0);
+ return 1;
}
-
diff --git a/cpu/mpc5xx/speed.c b/cpu/mpc5xx/speed.c
index 8098c9982a..f6097f5c13 100644
--- a/cpu/mpc5xx/speed.c
+++ b/cpu/mpc5xx/speed.c
@@ -17,14 +17,14 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation,
+ * Foundation,
*/
/*
* File: speed.c
- *
+ *
* Discription: Provides cpu speed calculation
- *
+ *
*/
#include <common.h>
@@ -49,8 +49,8 @@ int get_clocks (void)
gd->cpu_clk = vcoout / (2^(((immr->im_clkrst.car_sccr & SCCR_DFNL_MSK) >> SCCR_DFNL_SHIFT) + 1));
} else {
gd->cpu_clk = vcoout / (2^(immr->im_clkrst.car_sccr & SCCR_DFNH_MSK));
- }
-
+ }
+
#else /* CONFIG_5xx_GCLK_FREQ */
gd->bus_clk = CONFIG_5xx_GCLK_FREQ;
#endif /* CONFIG_5xx_GCLK_FREQ */
diff --git a/cpu/mpc5xx/start.S b/cpu/mpc5xx/start.S
index 694de77b3d..3b6d34495a 100644
--- a/cpu/mpc5xx/start.S
+++ b/cpu/mpc5xx/start.S
@@ -3,7 +3,7 @@
* Copyright (C) 1999 Magnus Damm <kieraypc01.p.y.kie.era.ericsson.se>
* Copyright (C) 2000, 2001, 2002 Wolfgang Denk <wd@denx.de>
* Copyright (C) 2003 Martin Winistoerfer, martinwinistoerfer@gmx.ch.
- *
+ *
* See file CREDITS for list of people who contributed to this
* project.
*
@@ -25,7 +25,7 @@
/*
* File: start.S
- *
+ *
* Discription: startup code
*
*/
@@ -39,9 +39,9 @@
#include <ppc_asm.tmpl>
#include <ppc_defs.h>
-
+
#include <linux/config.h>
-#include <asm/processor.h>
+#include <asm/processor.h>
#ifndef CONFIG_IDENT_STRING
#define CONFIG_IDENT_STRING ""
@@ -88,7 +88,7 @@ version_string:
_start:
mfspr r3, 638
li r4, CFG_ISB /* Set ISB bit */
- or r3, r3, r4
+ or r3, r3, r4
mtspr 638, r3
li r21, BOOTFLAG_COLD /* Normal Power-On: Boot from FLASH */
b boot_cold
@@ -131,7 +131,7 @@ in_flash:
/* Initialize some SPRs that are hard to access from C */
/*----------------------------------------------------------------------*/
-
+
lis r3, CFG_IMMR@h /* Pass IMMR as arg1 to C routine */
lis r2, CFG_INIT_SP_ADDR@h
ori r1, r2, CFG_INIT_SP_ADDR@l /* Set up the stack in internal SRAM */
@@ -169,7 +169,6 @@ in_flash:
bl board_init_f /* run 1st part of board init code (from Flash) */
-
.globl _start_of_vectors
_start_of_vectors:
@@ -389,7 +388,7 @@ int_return:
SYNC
rfi
-
+
/*
* unsigned int get_immr (unsigned int mask)
*
@@ -476,7 +475,7 @@ relocate_code:
stwu r0,-4(r7)
bdnz 3b
-4: sync
+4: sync
isync
/*
@@ -493,8 +492,8 @@ in_ram:
/*
* Relocation Function, r14 point to got2+0x8000
*
- * Adjust got2 pointers, no need to check for 0, this code
- * already puts a few entries in the table.
+ * Adjust got2 pointers, no need to check for 0, this code
+ * already puts a few entries in the table.
*/
li r0,__got2_entries@sectoff@l
la r3,GOT(_GOT2_TABLE_)
@@ -508,7 +507,7 @@ in_ram:
bdnz 1b
/*
- * Now adjust the fixups and the pointers to the fixups
+ * Now adjust the fixups and the pointers to the fixups
* in case we need to move ourselves again.
*/
2: li r0,__fixup_entries@sectoff@l
OpenPOWER on IntegriCloud