Change Impacting All BSPs

Joel Sherrill joel.sherrill at
Mon Sep 15 22:10:56 UTC 2008


I have been on a quest to simplify BSP construction
and reduce shared code.  I have just committed the
first bulk of changes which make every BSP use
the boot_card framework to allocate memory
between the C Program Heap and the RTEMS Workspace.
Some details:

+ bsp_get_work_area() now used in every BSP.
+ no BSP sets work_space_start explicitly.
+ no BSP specific code calls bsp_libc_init any longer.
+ most BSP's no longer have a bsp_pretasking_hook.

I have checked the BSPs I have access to and they
are still working but it is quite likely I accidentally
broke something. 

After some settle time, I will proceed to reduce the
duplication further.  The implementations of bsp_get_work_area
are similar between BSPs and across targets.  I need
to push to reduce the number of implementations further.
This will likely include modifying linkcmds to add standard
symbols for the beginning of the "work area" and variables
to calculate its size.

Please continue to test the CVS head and 4.9 branch
and give reports.

Joel Sherrill, Ph.D.             Director of Research & Development
joel.sherrill at        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985

More information about the users mailing list