Converting to no-bsp

Chris Johns ccj at acm.org
Thu Mar 9 11:40:05 UTC 2000


Ralf Corsepius wrote:
> 
> Nick.SIMON at syntegra.bt.co.uk wrote:
> 
> > A while ago, it was pointed out that it is possible to build RTEMS library
> > without a BSP, and link in the BSP separately.
> 
> Yep. What you are refering to, in RTEMS terms is called the bare BSP.
> 
> It should not be mixed up with the no_bsp BSP or no_cpu CPU, which are
> templates to be used when implementing new BSPs rsp. porting RTEMS to new
> CPUs -- They can't even be compiled.
> 
> >
> > Because we're now using several BSPs with the same processor, I'd like to
> > cut down on the amount of space required for multiple RTEMS images, and
> > avoid rebuilding the whole kernel whenever a BSP change is made.
> >
> > Before I plough into this, has anyone any advice?
> >
> 
> Check the files below c/src/lib/libbsp/bare.
> 
> The bare BSP is not enabled by default and can be enabled by adding it to the
> list being passed with --enable-rtemsbsps="<list>" at configuration time.
> Additionally you need to pass further configuration options to get the
> appropriate flags passed into the bare BSP's configuration.
> 
> E.g.
> configure <more_options> \
> --target=sh-rtems \
> --enable-rtemsbsp="bare gensh1" \
> --enable-bare-cpu-cflags='"-DHZ=40000000 -m1"' \
> --enable-bare-cpu-model=sh7032
> will configure the sources for the bare bsp for a (fictional) SH1/sh7032 CPU
> w/ 40MHz and for the standard gensh1 BSP.
> 
> But let me warn you, the bare BSP is in its infancy and not all targets/CPUs
> may support it. I know that it can be build for the m68k and the SH, but I
> don't know about the status of other targets. Also, setting up the flags can
> be cumbersome, but the flags used in make/custom/*.cfg should provide enough
> hints to get started.
> 

Another little warning is when installing the BSP (make install), RTEMS
places the bsp in a directory under the prefix called `bare'. Building
another variant of RTEMS with different flags and installing will over
write the previous `bare' install. I move the `bare' directory to
something more specific after installation.

-- 
 Chris Johns, mailto:ccj at acm.org



More information about the users mailing list