Skip to content

fomu: Place more functions into RAM #2744

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
Apr 2, 2020

Conversation

xobs
Copy link

@xobs xobs commented Apr 2, 2020

The SPI flash on current Fomu firmware is slow. Circuitpython runs
XIP from SPI flash, and so execution time can also be slow. Ordinarily
this isn't a problem, however certain operations are time-sensitive.

In particular, USB function needs to be handled quickly in order to
prevent the host from re-enumerating the device.

Place several critical TinyUSB structures into RAM, as well as several
hot functions that are frequently called. This reduces execution time
at the expense of system memory, and greatly improves system stability.

The SPI flash on current Fomu firmware is slow.  Circuitpython runs
XIP from SPI flash, and so execution time can also be slow.  Ordinarily
this isn't a problem, however certain operations are time-sensitive.

In particular, USB function needs to be handled quickly in order to
prevent the host from re-enumerating the device.

Place several critical TinyUSB structures into RAM, as well as several
hot functions that are frequently called.  This reduces execution time
at the expense of system memory, and greatly improves system stability.

Signed-off-by: Sean Cross <[email protected]>
@tannewt tannewt self-requested a review April 2, 2020 18:28
Copy link
Member

@tannewt tannewt left a comment

Choose a reason for hiding this comment

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

This looks totally fine to me. It isn't your fault the CI is unhappy.

@tannewt tannewt merged commit e6f1194 into adafruit:master Apr 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants