Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Heap init code improvements and updates#8458

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
d-a-v merged 5 commits intoesp8266:masterfrommhightower83:pr-umm_init_heap
Feb 15, 2022

Conversation

@mhightower83
Copy link
Contributor

@mhightower83mhightower83 commentedJan 22, 2022
edited
Loading

Moved secondary heap init code to flash.

  External -24 IRAM, +32 IROM  IRAM     -76 IRAM, +64 IROM

General updates toumm_init call path and defines to better align with upstream. Name changes:UMM_INIT_HEAP withUMM_CHECK_INITIALIZED,umm_init_stage_2 with_umm_init_heap, andumm_init_common withumm_init_heap.

Add fileumm_cfgport.h to hold port-specific values. Stay focused on heap initialization only move-related defines.

Improved comments.

Created a wrapper function for running pre-SDK code from flash.
Updatedhwdt_app_entry to use it.

Updateumm_init with the option to run from ICACHE.
Added build defineUMM_INIT_USE_ICACHE to moveumm_init call path to flash.
Added build defineUMM_INIT_USE_IRAM to moveumm_init call path back to IRAM.
Using ICACHE frees up 160 bytes of IRAM at a cost of 208 bytes of IROM.

Defaults to no change,umm_init call path will be in IRAM.
Defaults withumm_init call path in ICACHE.

Moved secondary heap init code to flash.  External -24 IRAM, +32 IROM  IRAM     -76 IRAM, +64 IROMGeneral updates to umm_init call path and DEFINES to better align withupstream. Name changes: UMM_INIT_HEAP with UMM_CHECK_INITIALIZED,umm_init_stage_2 with _umm_init_heap, and umm_init_common with umm_init_heap.Add file umm_cfgport.h to hold port-specific values. Stay focusedon heap initialization only move-related defines.Improved comments.Created a wrapper function for running pre-SDK code from flash.Updated hwdt_app_entry to use it.Update umm_init with option to run from ICACHE.Added build define UMM_INIT_USE_ICACHE to move umm_init call path to flash.When used frees up 160 bytes of IRAM at a cost of 208 bytes of IROMDefaults to no change, umm_init call path will be in IRAM.
@d-a-v
Copy link
Collaborator

d-a-v commentedJan 25, 2022
edited
Loading

Defaults to no change,umm_init call path will be in IRAM.

Would it be more efficient tochange default settings ?

Other than that, LGTM and thanks !

@mhightower83
Copy link
ContributorAuthor

@d-a-v I was being over-cautious. The experience we have with using switching cache on and off before the SDK initializes is with HWDT Stack Dump, which for me has worked fine without issue. I don't know how often it gets used. I also used it in one of the methods in my "ideas for config erase" PR. So I played it safe and left it as an option to turn on.

Hmm, if we have a while before the next dot release and you guys feel comfortable with the change, I could switch the default around?

@d-a-v
Copy link
Collaborator

Hmm, if we have a while before the next dot release and you guys feel comfortable with the change, I could switch the default around?

We think it is OK to go this way !

Copy link
Collaborator

@d-a-vd-a-v left a comment

Choose a reason for hiding this comment

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

Thanks!

@d-a-vd-a-v added the alphaincluded in alpha release labelJan 29, 2022
@d-a-vd-a-v merged commit7356cd1 intoesp8266:masterFeb 15, 2022
@mhightower83mhightower83 deleted the pr-umm_init_heap branchApril 21, 2022 19:36
hasenradball pushed a commit to hasenradball/Arduino that referenced this pull requestNov 18, 2024
* Heap init code improvements and updatesMoved secondary heap init code to flash.  External -24 IRAM, +32 IROM  IRAM     -76 IRAM, +64 IROMGeneral updates to umm_init call path and DEFINES to better align withupstream. Name changes: UMM_INIT_HEAP with UMM_CHECK_INITIALIZED,umm_init_stage_2 with _umm_init_heap, and umm_init_common with umm_init_heap.Add file umm_cfgport.h to hold port-specific values. Stay focusedon heap initialization only move-related defines.Improved comments.Created a wrapper function for running pre-SDK code from flash.Updated hwdt_app_entry to use it.Update umm_init with option to run from ICACHE.Added build define UMM_INIT_USE_ICACHE to move umm_init call path to flash.When used frees up 160 bytes of IRAM at a cost of 208 bytes of IROMDefaults to no change, umm_init call path will be in IRAM.* Changed default to use IROM for umm_init() and option to revert back to UMM_INIT_USE_IRAM.
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@d-a-vd-a-vd-a-v approved these changes

Assignees

No one assigned

Labels

alphaincluded in alpha release

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

2 participants

@mhightower83@d-a-v

[8]ページ先頭

©2009-2025 Movatter.jp