Commit Graph

47 Commits (db965c16527add8ad6cf9ae14022d67f0b6a33d2)

Author SHA1 Message Date
Jimmy Brisson cca4425af6 Python2+3: iteritems -> items 2018-02-05 11:04:36 -06:00
Jimmy Brisson 380ecb1b0e Python2+3: working through many has_attr exceptions 2018-02-05 11:04:01 -06:00
Jimmy Brisson 68737f2762 Python2+3: Things import 2018-02-05 11:03:44 -06:00
Cruz Monrreal 9a47f09ea9
Merge pull request #5910 from OSHChip/typo-fix
fix typos in lint.py
2018-01-26 10:36:33 -06:00
drewcassidy 6f9aa07491
fix typos in lint.py 2018-01-23 19:19:43 -08:00
Cruz Monrreal 47a128a5e5
Merge pull request #5882 from ashok-rao/br-MTB_Dragonfly
Add MTB MTS_Dragonfly as a new target.
2018-01-19 13:58:03 -06:00
Ashok Rao 9ee69854ff Adding MTB MTS_Dragonfly as a new target 2018-01-18 17:08:59 +00:00
chrisyang a1b4b8f10a rtl8195am - move region headers to 0xb000 and 0xc000
The new layout is as follows:

0x000000 - 0x008000  => bootloader
0x008000 - 0x00b000  => system sectors
0x00b000 - 0x00c000  => region1 header
0x00c000 - 0x00d000  => region2 header
0x00d000 - 0x010000  => reserved
0x010000 - 0x040000  => mbed file system
0x040000 - 0x120000  => region1 image
0x120000 - 0x200000  => region2 image

This is to ensure when daplink erases sections, both regions' headers
are erased properly.
2018-01-15 15:08:13 +08:00
Tony Wu a4575a965f rtl8195am - refactor bootloader and ota support
1. move ota region 1 from 0x00b000 to 0x040000
2. move ota region 2 from 0x0c0000 to 0x120000
3. refactor bootloader header as follows:

   uint32_t tag;
   uint32_t ver;
   uint64_t timestamp;
   uint32_t size;
   uint8_t hash[32];
   uint8_t campaign[16];
   uint32_t crc32;

   where,
   a. hash is the sha256 checksum of the payload.
   b. crc32 is the crc32 checksum of headers from tag to campaign.

4. Call NVIC_SystemReset for soft reset.

Signed-off-by: Tony Wu <tung7970@gmail.com>
2017-11-28 21:33:51 +08:00
Tony Wu 985c2b0ec7 rtl8195am - cleanup post-processing binary hook
Preparing for bootloader redesign.

Signed-off-by: Tony Wu <tung7970@gmail.com>
2017-11-28 21:29:49 +08:00
Anna Bridge e9e0595188 Merge pull request #5042 from tung7970/fix-tools
RTL8195AM - Respect Toolchains paths in post bulid script.
2017-10-20 10:23:25 +01:00
Jimmy Brisson a67737f993 Merge pull request #5086 from pan-/systick_sleep_fix
Sleep: Disallow sleep for targets turning off the systick clock at sleep entry
2017-10-13 09:19:10 -05:00
Tony Wu 7d6e66db2f rtl8195am - use TOOLCHAIN_PATHS to locate toolchain
Use TOOLCHAIN_PATHS to locate toolchain binaries for users might set
compiler paths, through mbed_settings.py, env vars, or system path.

Signed-off-by: Tony Wu <tonywu@realtek.com>
2017-10-09 23:38:03 +08:00
Jimmy Brisson 58372d3fdf Allow ARMC6 to run post-binary-hooks marked for ARM 2017-09-13 14:50:06 -05:00
Vincent Coubard 682816d86e Sleep: Disallow sleep for targets turning of the systick clock at sleep entry.
When the RTOS is present and the tickless mode is not implemented, it is
expected that the next tick issued by the Systick timer will wake up the MCU.
However nothing prevents an implementation of the ARM architecture to gate the
systick clock signal upon sleep entry.

Therefore on those targets sleep shall be prohibited if the RTOS is present and the
tickless mode is not implemented.

To ease life of porters , a new option has been added in the device add list:
STCLK_OF_DURING_SLEEP. This option expose that the target turn of the systick
clock during sleep.

Targets which exhibit such behavior shall add this define in their device_has list.
2017-09-13 10:28:02 +01:00
Deepika 9422c351e4 Initial RTX and tools support for Cortex M-23/M-33 devices 2017-09-11 11:43:26 -05:00
Jimmy Brisson 7457bbbc5c Merge pull request #4665 from Archcady/enable_sdram
Enable sdram usage of REALTEK_RTL8195AM
2017-09-06 14:26:34 -05:00
Russ Butler ac22225ad9 Move Cortex specific RTX behind TARGET_CORTEX
Update directory structure to include RTX for only cortex targets, and
for all cortex targets. This patch accomplishes this by moving mbed-os
specific RTX files and RTX itself into rtos/TARGET_CORTEX along with
removing TARGET_CORTEX_M from the RTX5 directory.

The old directory structure:

rtos/rtx5/<mbed-os specific RTX files>
rtos/rtx5/TARGET_CORTEX_M/*
rtos/rtx4/*
rtos/<mbed-os specific RTX files>

Is re-arranged to:

rtos/TARGET_CORTEX/rtx5/*
rtos/TARGET_CORTEX/rtx4/*
rtos/TARGET_CORTEX/<mbed-os specific rtx files>

This both encapsulates RTX code more cleanly and makes it easier to
experiment with non-cortex cmsis-os2 backends, such as a posix
based cmsis-os2 backend.

Note - A potentially better name for the CORTEX_M directory would be
something like FEATURE_RTX5 since this directory only contains RTX5
related files. This cannot be done because there is not an easy way
to turn this feature on, since it cannot be done from mbed_lib.json.
2017-08-31 19:55:54 -05:00
Yuguo Zou c834b7faac Fix bugs for RTL8195AM with debug profile of compilers
1. Add alignment / padding for postbuild segments
2. Clear tcm.bss section
3. Remove TRAP_OverrideTable(), move lines to PLAT_Start()
2017-08-28 19:04:26 +08:00
Yuguo Zou a0064ae47c Remove extension in cmd
Remove extension in command line so the script could work on Linux
2017-08-24 11:26:40 +08:00
Yuguo Zou 1e398cfc60 Add RTL8195AM support for mbed client with IAR
Move ticker related code to SRAM due to time drift sensitive
2017-08-22 17:34:00 +08:00
Tony Wu 35d7ca27be rtl8195am - fix ARMCC SRAM + SDRAM porting
Signed-off-by: Tony Wu <tonywu@realtek.com>
2017-08-01 15:29:21 +08:00
Yuguo Zou d1c87347af Fix ARMCC & IAR compile errors 2017-07-28 18:33:52 +08:00
Tony Wu c9ecb2749d rtl8195am - adjust memory layout and enable fota support
1. Rearrange SDRAM and SRAM layout. Move timing critical code to SRAM,
   and the rest to SDRAM.

2. Add bootloader that's capable of FOTA over mbed cloud.

Signed-off-by: Tony Wu <tonywu@realtek.com>
2017-07-27 13:55:45 +08:00
Yuguo Zou 2864e4b05d enable sdram usage of REALTEK_RTL8195AM
Signed-off-by: Tony Wu <tonywu@realtek.com>
2017-07-27 13:55:42 +08:00
jacobjohnson-ON 41a0941d53 mbed OS 5.5.3, including the changes needed to enable 640k. Includes the proposed changes by Mac. 7/25/17 2017-07-25 17:37:14 -06:00
Jimmy Brisson 18bca08d4b Reduce device has whitelist 2017-06-29 14:09:39 -05:00
Jimmy Brisson dfeb864f19 Add line between local and module imports 2017-06-29 14:09:39 -05:00
Jimmy Brisson 7775764db9 Add license header 2017-06-29 14:09:39 -05:00
Jimmy Brisson 2598bcd1b9 Restrict device_has 2017-06-29 14:09:39 -05:00
Jimmy Brisson 37a3e20dfe Revamp option parsing and add more checks 2017-06-29 14:09:39 -05:00
Jimmy Brisson 32966bbcbe Stylize and add function docs 2017-06-29 14:09:39 -05:00
Jimmy Brisson ae2268490f Added simple linter for targets.json 2017-06-29 14:09:39 -05:00
Andrew Leech 4491d2e3f7 Prevent modifying existing targets.
A warning will be printed if it is attempted.
2017-06-21 22:17:58 +10:00
Jimmy Brisson 49645b44d8 Clear custom-targets uppon setting new taregts.json location 2017-06-21 22:17:57 +10:00
Andrew Leech bf08b108aa Add custom_targets.json file contents to targets
Avoid duplication of update_target_data() code
Keep "custom_targets.json" filename definition in Targets()
2017-06-21 22:17:57 +10:00
Jimmy Brisson 2c4475cacc Find extra targets in all source folders 2017-06-21 22:17:57 +10:00
Andrew Leech 58c52fa2e7 Recursively merge extra_targets into targets
Recursively merge any target configs in extra_targets.json rather than completely replacing keys at the top level
2017-06-21 22:14:07 +10:00
Andrew Leech e6e3d08ea6 Add extra_targets.json support to build tools
If the file extra_targets.json exists in the working directory load it over the top of the built in targets.json for defining new and overriding built in mbed target definitions.
2017-06-21 22:14:07 +10:00
Yuguo Zou 0c046a4c38 improve coding style 2017-06-03 20:15:04 +01:00
Yuguo Zou 00ffb04f68 move target specific scripts to tools/targets/ 2017-06-03 20:14:58 +01:00
Yuguo Zou 29e11a1cb9 move REALTEK_RTL8195AM.py, remove progen in targets.json 2017-06-03 20:14:54 +01:00
Yuguo Zou 53e837bce2 add support for REALTEK_RTL8195AM 2017-06-03 20:14:45 +01:00
Bartek Szatkowski 2ddf4b33cb CMSIS5: Remove ARM7 support and targets 2017-05-12 13:48:43 -05:00
Andrzej Puzdrowski c64d2f4411 avoid 03/05 intel-hex records for nordics devices
use Intelhex::write_hex_file instead of IntelHex::tofile
2017-05-05 13:27:29 +02:00
Jimmy Brisson 74998d649a Change target hooks to use correct input format
The input format is now determined by the OUTPUT_EXT key in
targets.json, and defaults to "bin" when not specified. This changes the
Teensy3_1 and the NRF51x targets' post bulid hooks.

Teensy3_1 just converted to intelhex, so we do nothing instead.

NRF51x assumed that it was taking in a bin format file. I made it detect
file type by extension.
2017-04-03 14:54:38 -05:00
Jimmy Brisson f590dc11bd Move target related code into it's own directory
This should make it easier to navigate the code base
2017-03-22 15:20:09 -05:00