Skip to content

Move BSS to SRAM2 to increase heap size on ST475 IOT board #9434

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

Closed
wants to merge 3 commits into from

Conversation

linlingao
Copy link
Contributor

@linlingao linlingao commented Jan 18, 2019

Description

Fix Pelion client failure on STM32 Discovery IOT board due to heap running out. Update bootloader binary built with QSPI storage.

Pull request type

[x] Fix
[ ] Refactor
[ ] Target update
[ ] Functionality change
[ ] Docs update
[ ] Test update
[ ] Breaking change

Reviewers

@ciarmcom ciarmcom requested a review from a team January 18, 2019 22:00
@ciarmcom
Copy link
Member

@linlingao, thank you for your changes.
@ARMmbed/mbed-os-maintainers please review.

@0xc0170 0xc0170 requested a review from a team January 21, 2019 08:49
@jeromecoutant
Copy link
Collaborator

Hi
I started ST CI tests.

But I noticed that BSS patch is GCC only,
whereas boot loader patch is valid for all tool chains.
Is this OK for you ?

Copy link
Collaborator

@jeromecoutant jeromecoutant left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DISCO_L475VG_IOT01A-GCC_ARM tests are all OK

@linlingao
Copy link
Contributor Author

I needed to provide a quick patch to a very important potential customer. They only use gcc, that's why the linker fix only included gcc. I'll work on ARM and IAR next with lower priority.

Copy link
Contributor

@cmonr cmonr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@cmonr
Copy link
Contributor

cmonr commented Jan 23, 2019

CI started

@cmonr
Copy link
Contributor

cmonr commented Jan 23, 2019

@linlingao Would you mind filling out the PR description template?

@mbed-ci
Copy link

mbed-ci commented Jan 23, 2019

Test run: FAILED

Summary: 1 of 8 test jobs failed
Build number : 1
Build artifacts

Failed test jobs:

  • jenkins-ci/mbed-os-ci_build-ARMC6

@alekla01
Copy link
Contributor

Restarted CI

@0xc0170
Copy link
Contributor

0xc0170 commented Jan 23, 2019

I needed to provide a quick patch to a very important potential customer. They only use gcc, that's why the linker fix only included gcc. I'll work on ARM and IAR next with lower priority.

We should have all 3 aligned, please propose the release version for this one.
I would propose to wait for the ARM + IAR additions here.

@mbed-ci
Copy link

mbed-ci commented Jan 23, 2019

Test run: FAILED

Summary: 1 of 12 test jobs failed
Build number : 2
Build artifacts

Failed test jobs:

  • jenkins-ci/mbed-os-ci_greentea-test

@linlingao
Copy link
Contributor Author

It's fine with me to wait on ARM+IAR fix.

@cmonr
Copy link
Contributor

cmonr commented Jan 24, 2019

@linlingao @ARMmbed/mbed-os-maintainers I think this is ready for merge, not completely sure.

@linlingao
Copy link
Contributor Author

Please go ahead and merge it. It's a good fix that makes it possible to connect with pelion and FOTA works with this fix. I'll do another PR once I get a chance to work on the other two toolchains (low priority).

@cmonr
Copy link
Contributor

cmonr commented Jan 28, 2019

CI started

Retesting since it's been a bit since this PR was run in CI.

@cmonr
Copy link
Contributor

cmonr commented Jan 28, 2019

@linlingao What's the reason that the other two compilers are low priority?

We'd hate to have purposefully different behaviors across compilers.

@mbed-ci
Copy link

mbed-ci commented Jan 28, 2019

Test run: FAILED

Summary: 1 of 12 test jobs failed
Build number : 3
Build artifacts

Failed test jobs:

  • jenkins-ci/mbed-os-ci_greentea-test

@0xc0170
Copy link
Contributor

0xc0170 commented Jan 29, 2019

@ARMmbed/mbed-os-test We have seen recently some kinetis devices failures, can you review this job please and some recent

@linlingao
Copy link
Contributor Author

@0xc0170 This checkin is localized to STM Disco IOT board. It should not cause kinetis devices failures.
I just checked in the fixes for ARM and IAR.
With these three linker fixes, the board registers with Pelion cloud successfully. They were not registering prior to these fixes due to heap running out.

@cmonr
Copy link
Contributor

cmonr commented Jan 30, 2019

CI started

@mbed-ci
Copy link

mbed-ci commented Jan 31, 2019

Test run: SUCCESS

Summary: 12 of 12 test jobs passed
Build number : 4
Build artifacts

@0xc0170
Copy link
Contributor

0xc0170 commented Jan 31, 2019

@linlingao Can you fix permissions for the file? 100644 → 100755

place in ROM_region { readonly };
place in SRAM1_region { readwrite, block HEAP };
place in SRAM2_region { block CSTACK };
if (!isdefinedsymbol(MBED_APP_START)) { define symbol MBED_APP_START = 0x08000000; }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this needs revert of permissions change (100644 → 100755)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated permissions with #9588 as Lin is away on vacation and I couldn't update this PR.

@cmonr
Copy link
Contributor

cmonr commented Feb 2, 2019

Replaced with #9434

@cmonr cmonr closed this Feb 2, 2019
@cmonr cmonr removed the needs: work label Feb 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants