GRSpw driver in SMP context

Charles INGELS charles.ingels at syderal.ch
Wed Oct 12 13:30:20 UTC 2016


Dear all,

I am trying to setup and to use the GR Spacewire driver in an SMP RTEMS
application.
I activate the GRSPW driver by defining the following constant :


...
#define CONFIGURE_DRIVER_AMBAPP_GAISLER_GRSPW
#include <drvmgr/drvmgr_confdefs.h>
...

I also define SMP context by writing :

...
#define CONFIGURE_SMP_APPLICATION
#define CONFIGURE_SMP_MAXIMUM_PROCESSORS    2
#define CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP
#include <rtems/confdefs.h>
...

Note that SMP works fine on my LEON3 evaluation board and I am able to
play with tasks affinities.


Finally, I rely on the driver manager to setup the drivers I want to use.

When I compile my application, I get an unresolved symbol error related
to the following function (macro in fact):

...../rtems/c/src/lib/libbsp/sparc/leon3/../../sparc/shared/spw/grspw.c:1846:
undefined reference to `rtems_interrupt_disable'

After investigating a little bit more, it appears that such macro is
only defined if the RTEMS_SMP symbol is not defined. In other words,
such macro is only defined on a mono-core configuration, while in a
multi-core configuration, the macro rtems_interrupt_disable shall not be
used and shall be replaced by the macrortems_interrupt_local_disable.

However, the grspw driver relies on the mono-core macro
rtems_interrupt_disable. Since it is not defined in my SMP
configuration, the compilation fails.

So, my question is : is the grspw driver multi-core ready or is there
some work to do to have it work in a multi-core configuration ?

Thanks for your help,

Charles





-- 
*Charles INGELS*
Embedded software expert
charles.ingels at syderal.ch
Phone /+41 (0)32 338 99 10/
iNum /+883 5100 0902 7759/

*SYDERAL SA*
Neuenburgstrasse 7
CH-3238 Gals (Suisse)
Desk /+41 (0)32 338 98 00/
Fax /+41 (0)32 338 99 34/
Web site http://www.syderal.ch
	

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20161012/4ecbfd5d/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: QR_Code_ING.png
Type: image/png
Size: 80473 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20161012/4ecbfd5d/attachment-0001.png>


More information about the users mailing list