Testing performed: That a card is successfully mounted on Pygamer with
the built in SD card slot
This module is enabled for most FULL_BUILD boards, but is disabled for
samd21 ("M0"), litex, and pca10100 for various reasons.
Since Actions passed on the previous commit, where this computed value
was checked against the specified value (if any), this is no net change,
except that we no longer need to specify it for particular boards or
ports.
These calls were all moved into `main.c`, however this call was not
removed from litex. As a result, litex was calling `board_init()` twice.
This is currently not a problem, as `fomu` is able to be initialized
twice without issue, however future boards may have issue with this.
This fixes#2991.
Signed-off-by: Sean Cross <sean@xobs.io>
* Fix flash writes that don't end on a sector boundary. Fixes#2944
* Fix enum incompatibility with IDF.
* Fix printf output so it goes out debug UART.
* Increase stack size to 8k.
* Fix sleep of less than a tick so it doesn't crash.
Manually specify available modules and disable any modules
that are currently unsupported on the litex target.
Signed-off-by: Sean Cross <sean@xobs.io>
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 <sean@xobs.io>