Skip to content

Resolve Realtek device small code space issue #4487

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

Merged
merged 1 commit into from
Jun 11, 2017

Conversation

Archcady
Copy link
Contributor

@Archcady Archcady commented Jun 7, 2017

Switch on TCM section usage of Realtek RTL8195AM device. This should give user code more codespace.

@Archcady
Copy link
Contributor Author

Archcady commented Jun 7, 2017

cc @JanneKiiskila .

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 7, 2017

@JanneKiiskila Can you please test?

@Archcady how much space is left for the bss , as this is moving only part of it?

@Archcady
Copy link
Contributor Author

Archcady commented Jun 7, 2017

@0xc0170 When tested with the WiFi example after wifi is connected, there was around 30KB for free global memory, and around 80K for heap usage.

@sg-
Copy link
Contributor

sg- commented Jun 7, 2017

Why restrict to lwIP mem and not allow RW and ZI here as well?

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 8, 2017

@Archcady bump

@Archcady
Copy link
Contributor Author

Archcady commented Jun 9, 2017

Yes, we could allow RW and ZI as well. However TCM space is quite limited, if the user code have many RW / ZI data, then there will be problem if we arrange RW and ZI to TCM. By the way TCM has better performance so we put lwip mem in it for better wlan performance.

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 9, 2017

By the way TCM has better performance so we put lwip mem in it for better wlan performance.

Could be in the commit msg

Yes, we could allow RW and ZI as well. However TCM space is quite limited, if the user code have many RW / ZI data, then there will be problem if we arrange RW and ZI to TCM.

Ok, so therefore just lwip rw/zi there

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 9, 2017

/morph test

@mbed-bot
Copy link

mbed-bot commented Jun 9, 2017

Result: FAILURE

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 516

Example Build failed!

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 9, 2017

@Archcady please look at the failure. seems like sockets example fails for arm toolchain

@@ -39,6 +39,14 @@ LR_RAM 0x10006000 0x6FFFF {
}
}

TCM 0x1FFF0000 0x10000{
TCM_OVERLAY 0x1FFF0000 0x10000{
Copy link
Contributor

Choose a reason for hiding this comment

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

This is all zero init RAM right? Why does it need the load region TCM? If you move the execution region TCM_OVERLAY inside LR_RAM and remove the load region TCM then this builds.

switch on TCM section usage, this should give user code more codespace.
@ARMmbed ARMmbed deleted a comment from c1728p9 Jun 10, 2017
@ARMmbed ARMmbed deleted a comment from mbed-bot Jun 10, 2017
@sg-
Copy link
Contributor

sg- commented Jun 10, 2017

/morph test

@mbed-bot
Copy link

Result: SUCCESS

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 531

All builds and test passed!

@sg- sg- merged commit f31ea01 into ARMmbed:master Jun 11, 2017
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.

6 participants