summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2007-11-28 21:44:46 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2007-11-28 21:44:46 +0000
commit07e9642ce0a7a9123dbcd476d2761e7b0f241f38 (patch)
tree85ac803ec0fd5230128da7675d702f70c95757a6
parent2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-07e9642ce0a7a9123dbcd476d2761e7b0f241f38.tar.bz2
2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
* startup/bspstart.c: Eliminate PowerPC specific elements from the CPU Table. They have been replaced with variables named bsp_XXX as needed.
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c7
-rw-r--r--c/src/lib/libbsp/powerpc/gen405/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/gen405/startup/bspstart.c32
-rw-r--r--c/src/lib/libbsp/powerpc/gen83xx/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c14
-rw-r--r--c/src/lib/libbsp/powerpc/helas403/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/helas403/startup/bspstart.c33
-rw-r--r--c/src/lib/libbsp/powerpc/mpc8260ads/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c34
-rw-r--r--c/src/lib/libbsp/powerpc/mvme5500/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c6
-rw-r--r--c/src/lib/libbsp/powerpc/psim/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/psim/startup/bspstart.c36
-rw-r--r--c/src/lib/libbsp/powerpc/score603e/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/score603e/startup/bspstart.c10
-rw-r--r--c/src/lib/libbsp/powerpc/ss555/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/ss555/startup/bspstart.c12
-rw-r--r--c/src/lib/libbsp/powerpc/virtex/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/virtex/startup/bspstart.c35
20 files changed, 208 insertions, 71 deletions
diff --git a/c/src/lib/libbsp/powerpc/ep1a/ChangeLog b/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
index 807ca2b825..dea4e5ced8 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-11-26 Joel Sherrill <joel.sherrill@oarcorp.com>
* console/config.c: Fix typo.
diff --git a/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c b/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c
index de1f3ec8c6..fdaee6398a 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c
@@ -4,7 +4,7 @@
* The generic CPU dependent initialization has been performed
* before this routine is invoked.
*
- * COPYRIGHT (c) 1989-1999.
+ * COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -43,6 +43,8 @@ extern void BSP_vme_config();
extern void ShowBATS();
unsigned int rsPMCQ1Init();
+uint32_t bsp_clicks_per_usec;
+
SPR_RW(SPRG0)
SPR_RW(SPRG1)
@@ -376,9 +378,10 @@ void bsp_start( void )
Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */
Cpu_table.postdriver_hook = bsp_postdriver_hook;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
- Cpu_table.clicks_per_usec = BSP_processor_frequency/(BSP_time_base_divisor * 1000);
Cpu_table.exceptions_in_RAM = TRUE;
+ bsp_clicks_per_usec = BSP_processor_frequency/(BSP_time_base_divisor * 1000);
+
ShowBATS();
#if 0 /* XXX - Add back in cache enable when we get this up and running!! */
/*
diff --git a/c/src/lib/libbsp/powerpc/gen405/ChangeLog b/c/src/lib/libbsp/powerpc/gen405/ChangeLog
index 1f7c0157d4..d08adc5a6c 100644
--- a/c/src/lib/libbsp/powerpc/gen405/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/gen405/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-04-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Remove qrtems_debug.
diff --git a/c/src/lib/libbsp/powerpc/gen405/startup/bspstart.c b/c/src/lib/libbsp/powerpc/gen405/startup/bspstart.c
index aff05322cd..092b996507 100644
--- a/c/src/lib/libbsp/powerpc/gen405/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/gen405/startup/bspstart.c
@@ -78,6 +78,18 @@ rtems_cpu_table Cpu_table;
char *rtems_progname;
void *bsp_ram_end = (void *)RAM_END; /* first addr behind avail. ram area */
+/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_serial_per_sec; /* Serial clocks per second */
+boolean bsp_serial_external_clock;
+boolean bsp_serial_xon_xoff;
+boolean bsp_serial_cts_rts;
+uint32_t bsp_serial_rate;
+uint32_t bsp_timer_average_overhead; /* Average overhead of timer in ticks */
+uint32_t bsp_timer_least_valid; /* Least valid number from timer */
+boolean bsp_timer_internal_clock; /* TRUE, when timer runs with CPU clk */
+
/* Initialize whatever libc we are using
* called from postdriver hook
*/
@@ -179,14 +191,14 @@ void bsp_start( void )
Cpu_table.postdriver_hook = bsp_postdriver_hook;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
- Cpu_table.clicks_per_usec = 300;
- Cpu_table.serial_per_sec = 14625000; /* = (CPU Clock / UART Internal Clock Divisor) */
- Cpu_table.serial_external_clock = 0;
- Cpu_table.timer_internal_clock = 1;
- Cpu_table.serial_xon_xoff = 0;
- Cpu_table.serial_cts_rts = 1;
- Cpu_table.serial_rate = 115200;
- Cpu_table.timer_average_overhead = 2;
- Cpu_table.timer_least_valid = 3;
- Cpu_table.exceptions_in_RAM = TRUE;
+ bsp_clicks_per_usec = 300;
+ bsp_serial_per_sec = 14625000;
+ bsp_serial_external_clock = 0;
+ bsp_timer_internal_clock = 1;
+ bsp_serial_xon_xoff = 0;
+ bsp_serial_cts_rts = 1;
+ bsp_serial_rate = 115200;
+ bsp_timer_average_overhead = 2;
+ bsp_timer_least_valid = 3;
+ bsp_exceptions_in_RAM = TRUE;
}
diff --git a/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog b/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog
index e1b32e5f2f..28a3b331b3 100644
--- a/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-10-26 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
* startup/cpuinit.c: reenable instruction MMU
diff --git a/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c b/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c
index 43056d1855..336288ae70 100644
--- a/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c
@@ -62,6 +62,11 @@ unsigned int BSP_bus_frequency = BSP_CSB_CLK_FRQ;
unsigned int BSP_time_base_divisor = 4000; /* 4 bus clicks per TB click */
/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_clicks_per_usec;
+
+/*
* Use the shared implementations of the following routines.
* Look in rtems/c/src/lib/libbsp/shared/bsppost.c and
* rtems/c/src/lib/libbsp/shared/bsplibc.c.
@@ -205,15 +210,16 @@ void bsp_start(void)
Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */
Cpu_table.predriver_hook = bsp_predriver_hook; /* init PCI / RTC ... */
Cpu_table.postdriver_hook = bsp_postdriver_hook;
- Cpu_table.clicks_per_usec = (BSP_CSB_CLK_FRQ/1000000);
Cpu_table.exceptions_in_RAM = TRUE;
if( Cpu_table.interrupt_stack_size < 4*1024 )
Cpu_table.interrupt_stack_size = 4 * 1024;
- /*
- * Install our own set of exception vectors
- */
+ bsp_clicks_per_usec = (BSP_CSB_CLK_FRQ/1000000);
+
+ /*
+ * Install our own set of exception vectors
+ */
initialize_exceptions();
diff --git a/c/src/lib/libbsp/powerpc/helas403/ChangeLog b/c/src/lib/libbsp/powerpc/helas403/ChangeLog
index c980aaf3a2..322b62b694 100644
--- a/c/src/lib/libbsp/powerpc/helas403/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/helas403/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-04-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Add ecrti%O%s to "startfile:".
diff --git a/c/src/lib/libbsp/powerpc/helas403/startup/bspstart.c b/c/src/lib/libbsp/powerpc/helas403/startup/bspstart.c
index 58717e14b3..dd1d651d0e 100644
--- a/c/src/lib/libbsp/powerpc/helas403/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/helas403/startup/bspstart.c
@@ -76,6 +76,19 @@ rtems_cpu_table Cpu_table;
char *rtems_progname;
void *bsp_ram_end = (void *)RAM_END; /* first addr behind avail. ram area */
+/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_clicks_per_usec;
+uint32_t bsp_serial_per_sec; /* Serial clocks per second */
+boolean bsp_serial_external_clock;
+boolean bsp_serial_xon_xoff;
+boolean bsp_serial_cts_rts;
+uint32_t bsp_serial_rate;
+uint32_t bsp_timer_average_overhead; /* Average overhead of timer in ticks */
+uint32_t bsp_timer_least_valid; /* Least valid number from timer */
+boolean bsp_timer_internal_clock; /* TRUE, when timer runs with CPU clk */
+
/* Initialize whatever libc we are using
* called from postdriver hook
*/
@@ -167,14 +180,14 @@ void bsp_start( void )
Cpu_table.postdriver_hook = bsp_postdriver_hook;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
- Cpu_table.clicks_per_usec = 25;
- Cpu_table.serial_per_sec = 25000000;
- Cpu_table.serial_external_clock = 0;
- Cpu_table.timer_internal_clock = 1;
- Cpu_table.serial_xon_xoff = 0;
- Cpu_table.serial_cts_rts = 1;
- Cpu_table.serial_rate = 9600;
- Cpu_table.timer_average_overhead = 2;
- Cpu_table.timer_least_valid = 3;
- Cpu_table.exceptions_in_RAM = TRUE;
+ bsp_clicks_per_usec = 25;
+ bsp_serial_per_sec = 25000000;
+ bsp_serial_external_clock = 0;
+ bsp_timer_internal_clock = 1;
+ bsp_serial_xon_xoff = 0;
+ bsp_serial_cts_rts = 1;
+ bsp_serial_rate = 9600;
+ bsp_timer_average_overhead = 2;
+ bsp_timer_least_valid = 3;
+ bsp_exceptions_in_RAM = TRUE;
}
diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/ChangeLog b/c/src/lib/libbsp/powerpc/mpc8260ads/ChangeLog
index 09b6d88aaa..7acd599204 100644
--- a/c/src/lib/libbsp/powerpc/mpc8260ads/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/mpc8260ads/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-09-12 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1257/bsps
diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c
index 5c13389f50..45e80f284a 100644
--- a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c
@@ -25,7 +25,7 @@
* The mmu is unused at this time.
*
*
- * COPYRIGHT (c) 1989-1999.
+ * COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -75,6 +75,20 @@ rtems_cpu_table Cpu_table;
char *rtems_progname;
/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_clock_speed;
+uint32_t bsp_clicks_per_usec;
+uint32_t bsp_serial_per_sec; /* Serial clocks per second */
+boolean bsp_serial_external_clock;
+boolean bsp_serial_xon_xoff;
+boolean bsp_serial_cts_rts;
+uint32_t bsp_serial_rate;
+uint32_t bsp_timer_average_overhead; /* Average overhead of timer in ticks */
+uint32_t bsp_timer_least_valid; /* Least valid number from timer */
+boolean bsp_timer_internal_clock; /* TRUE, when timer runs with CPU clk */
+
+/*
* Use the shared implementations of the following routines.
* Look in rtems/c/src/lib/libbsp/shared/bsppost.c and
* rtems/c/src/lib/libbsp/shared/bsplibc.c.
@@ -293,15 +307,15 @@ void bsp_start(void)
if( Cpu_table.interrupt_stack_size < 4*1024 )
Cpu_table.interrupt_stack_size = 4 * 1024;
- Cpu_table.clicks_per_usec = 10; /* for 40MHz extclk */
- Cpu_table.serial_per_sec = 40000000;
- Cpu_table.serial_external_clock = 0;
- Cpu_table.serial_xon_xoff = 0;
- Cpu_table.serial_cts_rts = 0;
- Cpu_table.serial_rate = 9600;
- Cpu_table.timer_average_overhead = 3;
- Cpu_table.timer_least_valid = 3;
- Cpu_table.clock_speed = 40000000;
+ bsp_clicks_per_usec = 10; /* for 40MHz extclk */
+ bsp_serial_per_sec = 40000000;
+ bsp_serial_external_clock = 0;
+ bsp_serial_xon_xoff = 0;
+ bsp_serial_cts_rts = 0;
+ bsp_serial_rate = 9600;
+ bsp_timer_average_overhead = 3;
+ bsp_timer_least_valid = 3;
+ bsp_clock_speed = 40000000;
#ifdef REV_0_2
/* set up some board specific registers */
diff --git a/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog b/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog
index 926982c9e8..ca875ee145 100644
--- a/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-09-20 Kate Feng <feng1@bnl.gov>
* network/if_100MHz/GT64260eth.c: Add else.
diff --git a/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
index c9d8375359..0898460b7a 100644
--- a/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
@@ -4,7 +4,7 @@
* The generic CPU dependent initialization has been performed
* before this routine is invoked.
*
- * COPYRIGHT (c) 1989-1998.
+ * COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -72,6 +72,8 @@ extern void BSP_pgtbl_activate();
extern int I2Cread_eeprom();
extern void BSP_vme_config(void);
+uint32_t bsp_clicks_per_usec;
+
SPR_RW(SPRG0)
SPR_RW(SPRG1)
@@ -386,10 +388,10 @@ void bsp_start( void )
Cpu_table.do_zero_of_workspace = TRUE;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
/* P94 : 7455 TB/DECR is clocked by the system bus clock frequency */
- Cpu_table.clicks_per_usec = BSP_bus_frequency/(BSP_time_base_divisor * 1000);
Cpu_table.exceptions_in_RAM = TRUE;
_CPU_Table = Cpu_table;/* S. Kate Feng <feng1@bnl.gov>, for rtems_bsp_delay() */
+ bsp_clicks_per_usec = BSP_bus_frequency/(BSP_time_base_divisor * 1000);
printk("BSP_Configuration.work_space_size = %x\n", BSP_Configuration.work_space_size);
work_space_start =
(unsigned char *)BSP_mem_size - BSP_Configuration.work_space_size;
diff --git a/c/src/lib/libbsp/powerpc/psim/ChangeLog b/c/src/lib/libbsp/powerpc/psim/ChangeLog
index c9bf80b31b..0de398abfb 100644
--- a/c/src/lib/libbsp/powerpc/psim/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/psim/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-09-13 Joel Sherrill <joel.sherrill@OARcorp.com>
* configure.ac, startup/bspstart.c: Add BSP_DIRTY_MEMORY option.
diff --git a/c/src/lib/libbsp/powerpc/psim/startup/bspstart.c b/c/src/lib/libbsp/powerpc/psim/startup/bspstart.c
index 9a21d6b137..5385cc070e 100644
--- a/c/src/lib/libbsp/powerpc/psim/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/psim/startup/bspstart.c
@@ -4,7 +4,7 @@
* The generic CPU dependent initialization has been performed
* before any of these are invoked.
*
- * COPYRIGHT (c) 1989-1999.
+ * COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -29,6 +29,10 @@
SPR_RW(SPRG0)
SPR_RW(SPRG1)
+/*
+ * Driver configuration parameters
+ */
+boolean bsp_exceptions_in_RAM;
extern unsigned long __rtems_end[];
@@ -51,7 +55,7 @@ extern int PSIM_INSTRUCTIONS_PER_MICROSECOND;
extern rtems_configuration_table Configuration;
rtems_configuration_table BSP_Configuration;
-rtems_cpu_table Cpu_table;
+rtems_cpu_table Cpu_table;
/*
* Tells us where to put the workspace in case remote debugger is present.
@@ -64,13 +68,12 @@ extern uint32_t rdb_start;
/*
* PCI Bus Frequency
*/
- unsigned int BSP_bus_frequency;
- /*
- * * Time base divisior (how many tick for 1 second).
- * */
- unsigned int BSP_time_base_divisor;
-
+unsigned int BSP_bus_frequency;
+/*
+ * Time base divisior (how many tick for 1 second).
+ */
+unsigned int BSP_time_base_divisor;
/*
* Use the shared implementations of the following routines
@@ -80,22 +83,21 @@ void bsp_postdriver_hook(void);
void bsp_libc_init( void *, uint32_t, int );
/*
- * system init stack and soft ir stack size
+ * system init stack and soft irq stack size
*/
#define INIT_STACK_SIZE 0x1000
#define INTR_STACK_SIZE CONFIGURE_INTERRUPT_STACK_MEMORY
-
void BSP_panic(char *s)
{
- printk("%s PANIC %s\n",_RTEMS_version, s);
- __asm__ __volatile ("sc");
+ printk("%s PANIC %s\n",_RTEMS_version, s);
+ __asm__ __volatile ("sc");
}
void _BSP_Fatal_error(unsigned int v)
{
- printk("%s PANIC ERROR %x\n",_RTEMS_version, v);
- __asm__ __volatile ("sc");
+ printk("%s PANIC ERROR %x\n",_RTEMS_version, v);
+ __asm__ __volatile ("sc");
}
/*
@@ -123,7 +125,6 @@ void bsp_pretasking_hook(void)
#ifdef RTEMS_DEBUG
rtems_debug_enable( RTEMS_DEBUG_ALL_MASK );
#endif
-
}
/*
@@ -139,7 +140,8 @@ void bsp_start( void )
register uint32_t *intrStackPtr;
/*
- * Note we can not get CPU identification dynamically, so force current_ppc_cpu.
+ * Note we can not get CPU identification dynamically, so
+ * force current_ppc_cpu.
*/
current_ppc_cpu = PPC_PSIM;
@@ -173,7 +175,7 @@ void bsp_start( void )
* The simulator likes the exception table to be at 0xfff00000.
*/
- Cpu_table.exceptions_in_RAM = FALSE;
+ bsp_exceptions_in_RAM = FALSE;
BSP_Configuration.work_space_size += 1024;
diff --git a/c/src/lib/libbsp/powerpc/score603e/ChangeLog b/c/src/lib/libbsp/powerpc/score603e/ChangeLog
index 4c2c30ec4a..efc4cd2c19 100644
--- a/c/src/lib/libbsp/powerpc/score603e/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/score603e/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-09-17 Joel Sherrill <joel.sherrill@OARcorp.com>
* PCI_bus/universe.c, console/console.c, include/bsp.h, irq/FPGA.c,
diff --git a/c/src/lib/libbsp/powerpc/score603e/startup/bspstart.c b/c/src/lib/libbsp/powerpc/score603e/startup/bspstart.c
index 0916523a74..66fa562a88 100644
--- a/c/src/lib/libbsp/powerpc/score603e/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/score603e/startup/bspstart.c
@@ -5,7 +5,7 @@
* The generic CPU dependent initialization has been performed
* before any of these are invoked.
*
- * COPYRIGHT (c) 1989-1997.
+ * COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -38,6 +38,11 @@ unsigned int BSP_processor_frequency; /* XXX - Set this based upon the Score boa
unsigned int BSP_time_base_divisor = 1000; /* XXX - Just a guess */
/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_clicks_per_usec;
+
+/*
* The original table from the application and our copy of it with
* some changes.
*/
@@ -311,10 +316,11 @@ void bsp_start( void )
Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */
Cpu_table.predriver_hook = bsp_predriver_hook; /* Init vectors */
Cpu_table.postdriver_hook = SCORE603e_bsp_postdriver_hook;
- Cpu_table.clicks_per_usec = 66 / 4; /* XXX get from linkcmds */
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
Cpu_table.idle_task_stack_size = (3 * STACK_MINIMUM_SIZE);
+ bsp_clicks_per_usec = 66 / 4; /* XXX get from linkcmds */
+
#if ( PPC_USE_DATA_CACHE )
instruction_cache_enable ();
data_cache_enable ();
diff --git a/c/src/lib/libbsp/powerpc/ss555/ChangeLog b/c/src/lib/libbsp/powerpc/ss555/ChangeLog
index b84f6be0ca..26f6a9c456 100644
--- a/c/src/lib/libbsp/powerpc/ss555/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/ss555/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-04-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Remove qrtems_debug.
diff --git a/c/src/lib/libbsp/powerpc/ss555/startup/bspstart.c b/c/src/lib/libbsp/powerpc/ss555/startup/bspstart.c
index 371fc4831d..a45f7716f0 100644
--- a/c/src/lib/libbsp/powerpc/ss555/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/ss555/startup/bspstart.c
@@ -5,7 +5,7 @@
* The generic CPU dependent initialization has been performed
* before this routine is invoked.
*
- * COPYRIGHT (c) 1989-1998.
+ * COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -54,6 +54,12 @@ rtems_cpu_table Cpu_table;
char *rtems_progname;
/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_clicks_per_usec;
+uint32_t bsp_clock_speed; /* Serial clocks per second */
+
+/*
* Use the shared implementations of the following routines.
* Look in rtems/c/src/lib/libbsp/shared/bsppost.c and
* rtems/c/src/lib/libbsp/shared/bsplibc.c.
@@ -186,8 +192,8 @@ void bsp_start(void)
if( Cpu_table.interrupt_stack_size < 4 * 1024 )
Cpu_table.interrupt_stack_size = 4 * 1024;
- Cpu_table.clicks_per_usec = BSP_CRYSTAL_HZ / 4 / 1000000;
- Cpu_table.clock_speed = BSP_CLOCK_HZ; /* for SCI baud rate generator */
+ bsp_clicks_per_usec = BSP_CRYSTAL_HZ / 4 / 1000000;
+ bsp_clock_speed = BSP_CLOCK_HZ; /* for SCI baud rate generator */
/*
* Call this in case we use TERMIOS for console I/O
diff --git a/c/src/lib/libbsp/powerpc/virtex/ChangeLog b/c/src/lib/libbsp/powerpc/virtex/ChangeLog
index 31ebde8fc9..0d3f9e33d4 100644
--- a/c/src/lib/libbsp/powerpc/virtex/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/virtex/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
+ Table. They have been replaced with variables named bsp_XXX as
+ needed.
+
2007-11-07 Joel Sherrill <joel.sherrill@OARcorp.com>
* aclocal.m4: Removed. Is automatically generated by bootstrap.
diff --git a/c/src/lib/libbsp/powerpc/virtex/startup/bspstart.c b/c/src/lib/libbsp/powerpc/virtex/startup/bspstart.c
index 700ac0c812..a33367030b 100644
--- a/c/src/lib/libbsp/powerpc/virtex/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/virtex/startup/bspstart.c
@@ -90,6 +90,19 @@ uint32_t _heap_start;
uint32_t _heap_end;
uint32_t _top_of_ram;
+/*
+ * Driver configuration parameters
+ */
+uint32_t bsp_clicks_per_usec;
+uint32_t bsp_serial_per_sec; /* Serial clocks per second */
+boolean bsp_serial_external_clock;
+boolean bsp_serial_xon_xoff;
+boolean bsp_serial_cts_rts;
+uint32_t bsp_serial_rate;
+uint32_t bsp_timer_average_overhead; /* Average overhead of timer in ticks */
+uint32_t bsp_timer_least_valid; /* Least valid number from timer */
+boolean bsp_timer_internal_clock; /* TRUE, when timer runs with CPU clk */
+
/* Initialize whatever libc we are using
* called from postdriver hook
@@ -196,17 +209,17 @@ void bsp_start( void )
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
/* timebase register ticks/microsecond */
- Cpu_table.clicks_per_usec = (250000000 / 1000000);
-
- Cpu_table.serial_per_sec = 14625000; /* = (CPU Clock / UART Internal Clock Divisor) */
- Cpu_table.serial_external_clock = 0;
- Cpu_table.timer_internal_clock = 1;
- Cpu_table.serial_xon_xoff = 0;
- Cpu_table.serial_cts_rts = 0;
- Cpu_table.serial_rate = 115200;
- Cpu_table.timer_average_overhead = 2;
- Cpu_table.timer_least_valid = 3;
- Cpu_table.exceptions_in_RAM = TRUE;
+ bsp_clicks_per_usec = (250000000 / 1000000);
+
+ bsp_serial_per_sec = 14625000;
+ bsp_serial_external_clock = 0;
+ bsp_timer_internal_clock = 1;
+ bsp_serial_xon_xoff = 0;
+ bsp_serial_cts_rts = 0;
+ bsp_serial_rate = 115200;
+ bsp_timer_average_overhead = 2;
+ bsp_timer_least_valid = 3;
+ bsp_exceptions_in_RAM = TRUE;
/*
* Initialize some SPRG registers related to irq handling