Version 3 (modified by PavelPisa, on 07/23/14 at 21:34:49) (diff)

/* Test Reports */


{{Infobox BSP |BSP_name = TMS570 |Manufacturer = Texas Instruments |image = TMS570LS31x_HDK_Kit.jpg |caption = TMS570LS31x HDK Kit |Board_URL = |Dimensions = 125 x 110 mm |Architecture = ARM Cortex-R (big-endian) |CPU_model = Texas Instruments Cortex-R TMS570LS3137 microcontroller |Power = Powered by included adapter |Aliases = None |RAM = 256 kB EEC SRAM internal + 8 MB SDRAM |NVMEM = 3 MB EEC Flash |Serial = 1 x I2C, 3 x CAN, 1 x 2ch FlexRay?, 2 x UARTs (1 with LIN), 3+2 x SPI |NICs = 10/100 Ethernet |Other = 2 x N2HET timing coprocessor, 2 x ADC }}


BSP is Work in the Progress state now. It is developed in a frame of GSoC 2014 project

RTEMS with BSP sources is available from respective GitHub? project tms570-bsp branch


The TMS570LS3137 device is a high-performance automotive-grade microcontroller family for safety systems. The safety architecture includes the following:


  • Texas Instruments TMS570LS3137 MCU:
  • Dual CPUs in lockstep
  • CPU and memory Built-In Self-Test (BIST) logic
  • ECC on both the flash and the data SRAM
  • Parity on peripheral memories
  • Loopback capability on peripheral I/Os


GCC 4.9.0 + Newlib 2.1.0 + Binutils 2.24 configuration

CFLAGS="-O2 -pipe" LDFLAGS=-s \
../../../src/gcc-4.9/configure --target=arm-rtems4.11 --prefix=/usr \
             --enable-languages=c,c++ \
             --disable-libstdcxx-pch \
             --with-gnu-ld \
             --with-gnu-as \
             --enable-threads \
             --enable-target-optspace \
             --with-system-zlib \
             --verbose \
             --disable-nls --without-included-gettext \
             --disable-win32-registry \
             --with-newlib \
             --enable-plugin \
             --enable-newlib-io-c99-formats \
             --enable-version-specific-runtime-libs \
             --enable-newlib-iconv \
             --disable-lto \

Next patches required for Cortex-R and big-endian ARM support

The first target is soft-float RTEMS Cortex-R support. Next GCC options are used

-mbig-endian -march=armv7-r -mthumb

for future hard float alternative

-mbig-endian -mthumb -march=armv7-r -mfpu=vfpv3-d16 -mfloat-abi=hard


We have not used any generic bootloader nor initial complex CPU and peripherals initialization and self test is implemented and included in RTEMS BSP. We use simple Ti's HalCoGen? generated application to setup board and then download RTEMS image over OpenOCD to internal EEC SRAM or external SDRAM. Setup application code is available there


OpenOCD support with GDB and DDD frontend setup can be found there

Test Reports

The hello world and ticker test running.