summaryrefslogtreecommitdiff
path: root/ports/litex/boards
AgeCommit message (Collapse)Author
2021-03-15run code formatting scriptmicroDev
2020-12-28Merge pull request #3878 from xobs/fomu-fixes-6.0.0Scott Shawcroft
Fomu fixes for 6.0.0
2020-12-24litex: move more critical code to RAMSean Cross
The XIP SPI flash on Fomu is slow, which results in certain operations taking a long time. This becomes a problem for time-critical operations such as USB. Move various calls into RAM to improve performance. This includes the call to __modsi3 and __udivsi3 which are used by the supervisor handler to determine if periodic callbacks need to be run. This finishes fixing #3841 Signed-off-by: Sean Cross <sean@xobs.io>
2020-12-08Add `board_deinit` for use with sleepScott Shawcroft
This changes lots of files to unify `board.h` across ports. It adds `board_deinit` when CIRCUITPY_ALARM is set. `main.c` uses it to deinit the board before deep sleeping (even when pretending.) Deep sleep is now a two step process for the port. First, the port should prepare to deep sleep based on the given alarms. It should set alarms for both deep and pretend sleep. In particular, the pretend versions should be set immediately so that we don't miss an alarm as we shutdown. These alarms should also wake from `port_idle_until_interrupt` which is used when pretending to deep sleep. Second, when real deep sleeping, `alarm_enter_deep_sleep` is called. The port should set any alarms it didn't during prepare based on data it saved internally during prepare. ESP32-S2 sleep is a bit reorganized to locate more logic with TimeAlarm. This will help it scale to more alarm types. Fixes #3786
2020-06-23supervisor.mk: Compute USB_DEVICES; remove from boards and portsJeff Epler
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.
2020-04-27linker scripts: Re-align at ":"Jeff Epler
With "git show -b" you can verify that this is a whitespace only change because the diff will be empty.
2020-04-27litex: Use FLASH_FIRMWARE instead of FLASH in linker scriptsJeff Epler
for compatibility with the build_memory_info script
2020-04-02ports: fomu: move more functions into ram for stabilitySean Cross
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>
2020-03-31ports: litex: enable itcm region for fomuSean Cross
This adds a new command line flag -DFOMU to indicate we're building for a Fomu board. Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-31ports: litex: add port and fomu boardSean Cross
This adds support for Litex, along with support for the Fomu FPGA board. Signed-off-by: Sean Cross <sean@xobs.io>