Warning, /bsps/arm/tms570/README.md is written in an unsupported language. File is not indexed.
0001 TI Hercules TMS570
0002 ==================
0003
0004 TI Hercules TMS570 series development boards:
0005
0006 TMS570LS31:
0007
0008 http://www.ti.com/tool/tmds570ls31hdk
0009
0010 TMS570LC43:
0011
0012 https://www.ti.com/tool/TMDX570LC43HDK
0013
0014 Overview
0015 --------
0016
0017 Drivers:
0018
0019 o Console
0020 o Clock
0021 o Ethernet - external lwIP fork repository
0022
0023 BSP variants:
0024
0025 TMS570LS3137:
0026
0027 tms570ls3137_hdk_intram - place code and data into internal SRAM
0028 tms570ls3137_hdk_sdram - place code and data into external SDRAM
0029 tms570ls3137_hdk - variant for stand-alone RTEMS application stored
0030 and running directly from flash..
0031
0032 TMS570LC4357:
0033
0034 tms570ls4357_hdk_sdram - place code and data into external SDRAM
0035 tms570lc4357_hdk - variant for stand-alone RTEMS application stored
0036 and running directly from flash.
0037
0038 Toolchain used for development
0039 -------------------------------
0040
0041 Example of RTEMS build configuration (config.ini) used for testing of self-contained applications
0042 running directly from flash:
0043
0044 [arm/tms570lc4357_hdk]
0045
0046 All patches required for Cortex-R and big-endian ARM support are already
0047 integrated into the GCC and RTEMS mainline.
0048
0049 MCU-specific flags used during compilation are located in
0050 `externs/rtems/spec/build/bsps/arm/tms570/abi.yml`
0051
0052 When linking an application to an RTEMs build, ensure the following flags are set
0053 (arm-rtems6-gcc/g++):
0054
0055 -mbe32
0056 -qrtems
0057 -T{RTEMS_BSP_VARIANT_LINKERSCRIPT}
0058
0059 RTEMS_BSP_VARIANT_LINKERSCRIPT can be found with the static libraries built for rtems. There
0060 is one for each BSP variant type. For example `linkcmds.tms570lc4357_hdk`
0061
0062 Execution
0063 ---------
0064
0065 Application built by the above process can be directly programmed
0066 into Flash and run.
0067
0068 The following features are implemented in the `_hdk` BSP variants:
0069
0070 + Initial CPU and peripheral initialization
0071 + Cores Self-test
0072
0073 For test and debug purposes, TI's HalCoGen generated application
0074 can be used to set up the board and then a RTEMS application
0075 can be loaded using OpenOCD to internal SRAM or external SDRAM.
0076 This prevents wear of Flash which has limited guaranteed
0077 erase cycles count.
0078
0079 Setup application code is available there:
0080 https://github.com/hornmich/tms570ls3137-hdk-sdram
0081
0082 A branch that enables loading to Flash via openocd on the TMS570LC4357
0083 can be found here:
0084 https://github.com/len0rd/openocd
0085
0086 TMDS570LS31HDK setup to use SDRAM to load and debug RTEMS applications
0087 -----------------------------------------------------------------------
0088
0089 o Program SDRAM_SCI_configuration-program or another boot loader
0090 (for example ETHERNET XCP is developed)
0091 o write BSP application either to sdram or intram and jump to RTEMS start code
0092
0093 ETHERNET
0094 --------
0095
0096 For ETHERNET, the lwIP port for TMS570LS3137 has been developed
0097 at Industrial Informatics Group of Czech Technical University
0098 in Prague and development versions are available on SourceForge.
0099
0100 RTEMS and TMS570 support is included in uLAN project lwIP
0101 repository
0102
0103 https://sourceforge.net/p/ulan/lwip-omk/
0104
0105 This port has been consolidated with other RTEMS-LWIP ports here:
0106
0107 https://gitlab.rtems.org/rtems/pkg/rtems-lwip/-/tree/main/rtemslwip/tms570
0108
0109 A port to the TMS570LC4357 based off this work is underway.
0110
0111 Adapt BSP for other TMS570 based hardware
0112 -----------------------------------------
0113
0114 Complete pin multiplexer initialization according
0115 to the list of individual pins functions is included.
0116 Pins function definition can be found and altered
0117 in a file
0118
0119 `rtems/c/src/lib/libbsp/arm/tms570/hwinit/init_pinmux.c`
0120
0121 Complete "database" of all possible pin functions for
0122 a chip is provided in a file
0123
0124 `rtems/c/src/lib/libbsp/arm/tms570/include/tms570<MODEL>-pins.h`
0125
0126 If another package or chip is considered then tools found
0127 in next repository can be used or extended to generate header
0128 files and pins "database"
0129
0130 https://github.com/AoLaD/rtems-tms570-utils
0131
0132 Links to additional information
0133 -------------------------------
0134
0135 Additional information about the CPU can be found at
0136 https://www.ti.com/product/tms570ls3137
0137 https://www.ti.com/product/TMS570LC4357