summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2007-12-11 15:49:53 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2007-12-11 15:49:53 +0000
commit12bd47efc0f50d673c10528ed601eaf8b54f182b (patch)
treed775bb30121bac016ab20aa95e4b3d40ba205a0a /c/src/lib/libbsp/i386/pc386
parent2007-12-11 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-12bd47efc0f50d673c10528ed601eaf8b54f182b.tar.bz2
2007-12-11 Joel Sherrill <joel.sherrill@OARcorp.com>
* clock/ckinit.c, include/bsp.h, startup/bspstart.c: Eliminate copies of the Configuration Table. Use the RTEMS provided accessor macros to obtain configuration fields.
Diffstat (limited to 'c/src/lib/libbsp/i386/pc386')
-rw-r--r--c/src/lib/libbsp/i386/pc386/ChangeLog6
-rw-r--r--c/src/lib/libbsp/i386/pc386/clock/ckinit.c4
-rw-r--r--c/src/lib/libbsp/i386/pc386/include/bsp.h2
-rw-r--r--c/src/lib/libbsp/i386/pc386/startup/bspstart.c29
4 files changed, 12 insertions, 29 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/ChangeLog b/c/src/lib/libbsp/i386/pc386/ChangeLog
index c4999b82a3..ce0257c2d2 100644
--- a/c/src/lib/libbsp/i386/pc386/ChangeLog
+++ b/c/src/lib/libbsp/i386/pc386/ChangeLog
@@ -1,3 +1,9 @@
+2007-12-11 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * clock/ckinit.c, include/bsp.h, startup/bspstart.c: Eliminate copies
+ of the Configuration Table. Use the RTEMS provided accessor macros to
+ obtain configuration fields.
+
2007-12-04 Joel Sherrill <joel.sherrill@OARcorp.com>
* include/bsp.h, startup/bspstart.c: Move interrupt_stack_size field
diff --git a/c/src/lib/libbsp/i386/pc386/clock/ckinit.c b/c/src/lib/libbsp/i386/pc386/clock/ckinit.c
index 5717f6f117..29a746a9d0 100644
--- a/c/src/lib/libbsp/i386/pc386/clock/ckinit.c
+++ b/c/src/lib/libbsp/i386/pc386/clock/ckinit.c
@@ -141,10 +141,10 @@ static void clockOn(const rtems_irq_connect_data* unused)
Clock_driver_ticks = 0;
Clock_isrs_per_tick = 1;
- if (BSP_Configuration.microseconds_per_tick == 0)
+ if (rtems_configuration_get_microseconds_per_tick() == 0)
microseconds_per_isr = 10000; /* default 10 ms */
else
- microseconds_per_isr = BSP_Configuration.microseconds_per_tick;
+ microseconds_per_isr = rtems_configuration_get_microseconds_per_tick();
while (US_TO_TICK(microseconds_per_isr) > 65535)
{
Clock_isrs_per_tick *= 10;
diff --git a/c/src/lib/libbsp/i386/pc386/include/bsp.h b/c/src/lib/libbsp/i386/pc386/include/bsp.h
index bd0f3551e8..026f512c34 100644
--- a/c/src/lib/libbsp/i386/pc386/include/bsp.h
+++ b/c/src/lib/libbsp/i386/pc386/include/bsp.h
@@ -164,8 +164,6 @@ extern int rtems_dec21140_driver_attach(struct rtems_bsdnet_ifconfig *, int);
extern interrupt_gate_descriptor Interrupt_descriptor_table[IDT_SIZE];
extern segment_descriptors Global_descriptor_table [GDT_SIZE];
-extern rtems_configuration_table BSP_Configuration;
- /* User provided BSP configuration table. */
extern uint32_t rtemsFreeMemStart;
/* Address of start of free memory - should be used when creating new
partitions or regions and updated afterwards. */
diff --git a/c/src/lib/libbsp/i386/pc386/startup/bspstart.c b/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
index 15dce5d31b..cfe8dc0de8 100644
--- a/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
+++ b/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
@@ -70,13 +70,6 @@ uint32_t rtemsFreeMemStart;
/* Address of start of free memory - should be updated
after creating new partitions or regions. */
-/* The original BSP configuration table from the application and our copy of it
- with some changes. */
-
-extern rtems_configuration_table Configuration;
- rtems_configuration_table BSP_Configuration;
-
-char *rtems_progname; /* Program name - from main(). */
/*-------------------------------------------------------------------------+
| External Prototypes
@@ -184,8 +177,8 @@ void bsp_start_default( void )
if (rtemsFreeMemStart & (CPU_ALIGNMENT - 1)) /* not aligned => align it */
rtemsFreeMemStart = (rtemsFreeMemStart+CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1);
- BSP_Configuration.work_space_start = (void *)rtemsFreeMemStart;
- rtemsFreeMemStart += BSP_Configuration.work_space_size;
+ Configuration.work_space_start = (void *)rtemsFreeMemStart;
+ rtemsFreeMemStart += rtems_configuration_get_work_space_size();
/*
* Init rtems interrupt management
@@ -204,27 +197,13 @@ void bsp_start_default( void )
printk("PCI bus: could not initialize PCI BIOS interface\n");
}
- /*
- * The following information is very useful when debugging.
- */
#if 0
- printk( "work_space_size = 0x%x\n", BSP_Configuration.work_space_size );
- printk( "maximum_extensions = 0x%x\n", BSP_Configuration.maximum_extensions );
- printk( "microseconds_per_tick = 0x%x\n",
- BSP_Configuration.microseconds_per_tick );
- printk( "ticks_per_timeslice = 0x%x\n",
- BSP_Configuration.ticks_per_timeslice );
- printk( "number_of_device_drivers = 0x%x\n",
- BSP_Configuration.number_of_device_drivers );
- printk( "Device_driver_table = 0x%x\n",
- BSP_Configuration.Device_driver_table );
-
printk( "_heap_size = 0x%x\n", _heap_size );
printk( "_stack_size = 0x%x\n", _stack_size );
printk( "rtemsFreeMemStart = 0x%x\n", rtemsFreeMemStart );
- printk( "work_space_start = 0x%x\n", BSP_Configuration.work_space_start );
- printk( "work_space_size = 0x%x\n", BSP_Configuration.work_space_size );
+ printk( "work_space_start = 0x%x\n", rtems_configuration_get_work_space_start() );
+ printk( "work_space_size = 0x%x\n", rtems_configuration_get_work_space_size() );
#endif
} /* bsp_start */