Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to 2-region model for HEAP and Stack Memory #9571

Merged
merged 40 commits into from Feb 27, 2019
Commits on Feb 19, 2019
  1. Use 2-region memory model in ARM rtos-less builds.

    mprse authored and deepikabhavnani committed Jan 31, 2019
    The following commits: #8039, #9092 added Boot/ISR stack definition to all scatter files (ARM_LIB_STACK).
    
    This has changed memory model for RTOS-less builds to 2-region memory model and caused failure in case of rtos less builds.
    This PR defines valid heap/stack regions for rtos-less builds.
  2. Remove duplicated _mbed_user_setup_stackheap, __rt_lib_init definitions.

    mprse authored and deepikabhavnani committed Jan 31, 2019
    Few targets already used 2-region memory model.
  3. mbed_retarget.cpp: Fixed style

    mprse authored and deepikabhavnani committed Jan 31, 2019
  4. Interrupt stack is always explicitly specified, hence other condition…

    deepikabhavnani committed Feb 4, 2019
    … is not needed
    
    Earlier if interrupt stack is specified it was used and remaining section of
    IRAM was used to allocate heap, if stack is not specified heap section was
    reduced by isr stack size and it was added at the end of RAM
    
    With 2-region RAM support interrupt stack will always be specified.
  5. Update memory model for stack and heap memory

    deepikabhavnani committed Feb 6, 2019
    Memory model for RTOS and No RTOS was initially single stack and heap,
    only few targets implemented 2-region RAM model.
    
    2-region RAM model is applied for all toolchains and targets.
    
    GCC: __wrap__sbrk was implemented for 2-region ram model, with switch to 2-region
    for all targets, we do not need target specific implementation of this API
    Also _sbrk is WEAK function, hence can be over written in target folder for
    special cases
  6. Target_STM:_sbrk updated to use limits from linker files no need to s…

    deepikabhavnani committed Feb 7, 2019
    …et defines
    
    _sbrk uses the exports from linker file __end and __HeapLimit to allocate memory
    in heap. Linker scripts were updated accordingly to set the limits.
  7. Corrected main thread stack size, was accidently updated by removing …

    deepikabhavnani committed Feb 12, 2019
    …condition
    
    Main thread stack size is reduced for TARGET_STM32F070RB and TARGET_STM32F072RB,
    in recent update to mbed_rtx.h the conditional check for main thread size update
    was removed.
  8. Spell correction in design doc

    deepikabhavnani committed Feb 18, 2019
Commits on Feb 20, 2019
  1. Target_Freescale: Add heap section in linker files

    deepikabhavnani committed Feb 20, 2019
Commits on Feb 21, 2019
  1. New heap can be equal to heap limit for last chunk

    deepikabhavnani committed Feb 21, 2019
Commits on Feb 22, 2019
  1. Remove TOOLCHAIN_GCC_CW_NEWLIB files

    deepikabhavnani committed Feb 22, 2019
You can’t perform that action at this time.