rtems source builder on flexible hardware (FPGA)

Chris Johns chrisj at rtems.org
Fri Oct 17 22:41:11 UTC 2014


On 18/10/2014 2:19 am, Hoefle Marco wrote:
> We let an external company develop an rtems bsp for a FPGA based hardware.
> The CPU is a powerpc embedded in a Virtex-4 FPGA and thus address map,
> interrupts etc can vary.
>
> At that time the bsp engineering company told us to configure RTEMS this
> way:
> set -x
> CPU=powerpc
> BSP=virtex
> cd .
> rm -rf b-${BSP}
> mkdir b-${BSP}
> cd b-${BSP}
> ../rtems/configure --target=${CPU}-rtems4.11 --enable-rtemsbsp=${BSP} \
>            --prefix=/mnt/extended/ppc_rtems/bsp-install \
>            --disable-cxx --enable-posix --disable-networking
> --disable-tests \
>            'RTEMS_XPARAMETERS_H="/path to/xparameters.h"' \
>            VIRTEX_CONSOLE_USE_INTERRUPTS=0 \
>            VIRTEX_FAST_RAM_ORIGIN=0xfffe0000 \
>            VIRTEX_FAST_RAM_LENGTH=0x0001ffec \
>            VIRTEX_RAM_ORIGIN=0x00000000 \
>            VIRTEX_RAM_LENGTH=0x00200000 \
>            VIRTEX_RESET_ORIGIN=0xffffffec
>  >../configure_${CPU}_${BSP}_rtems.log 2>&1
>
>
> Is there a way to tell the rsb to configure the kernel with these
> parameters?

Not the git sources. Does the attached patch help ? If it is ok I will 
push it.

Use as:

    --with-rtems-bspopts="options list"

Note, --without-rtems-tests is supported by the RSB.

>
> Also I have seen that there are two bsps in the mainline rtems repo:
>
> virtex and virtex4.
> Our platform is virtex4 but we used the virtex bsp at that time.
> So the name virtex is confusing as not all virtex devices contain a powerpc.
>
> The goal here is to unify our rtems build flow to the other - sparc
> leon3 based -  project.
>

Excellent. It is really nice to see this happening.

Chris

-------------- next part --------------
From 5d2f1a4aab96241d19a2ee85236c919f557d1c3d Mon Sep 17 00:00:00 2001
From: Chris Johns <chrisj at rtems.org>
Date: Sat, 18 Oct 2014 09:21:00 +1100
Subject: [PATCH] rtems: Add support for users to supply BSP options for
 configure.

The user can provide --with-rtems-bspopts and these are added
to the RTEMS configure command line.
---
 rtems/config/tools/rtems-kernel-4-1.cfg | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/rtems/config/tools/rtems-kernel-4-1.cfg b/rtems/config/tools/rtems-kernel-4-1.cfg
index 33f894d..a077761 100644
--- a/rtems/config/tools/rtems-kernel-4-1.cfg
+++ b/rtems/config/tools/rtems-kernel-4-1.cfg
@@ -95,7 +95,8 @@ BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n)
     --prefix=%{_prefix} --bindir=%{_bindir} \
     --exec-prefix=%{_exec_prefix} \
     --includedir=%{_includedir} --libdir=%{_libdir} \
-    --mandir=%{_mandir} --infodir=%{_infodir}
+    --mandir=%{_mandir} --infodir=%{_infodir} \
+    %{?with_rtems_bspopts:%{with_rtems_bspopts}}
 
   %{__make} %{?_smp_mflags} all
   cd ..
-- 
1.9.3 (Apple Git-50)




More information about the users mailing list