micropython/ports
robert-hh dfd4324eb1 mimxrt: Add flash storage support with VFS and littlefs filesystem.
This commit adds full support for a filesystem on all boards, with a block
device object mimxrt.Flash() and uos.VfsLfs2 enabled.

Main changes are:
- Refactoring of linker scripts to accomodate reserved area for VFS.  VFS
  will take up most of the available flash. 1M is reserved for code.  9K is
  reserved for flash configuration, interrupts, etc.
- Addition of _boot.py with filesystem init code, called from main.c.
- Definition of the mimxrt module with a Flash class in modmimxrt.[ch].
- Implementation of a flash driver class in mimxrt_flash.c.  All flashing
  related functions are stored in ITCM RAM.
- Addition of the uos module with filesystem functions.
- Implementation of uos.urandom() for the sake of completeness of the uos
  module.

It uses sample code from CircuitPython supplied under MIT license, which
uses the NXP SDK example code.

Done in collaboration with Philipp Ebensberger aka @alphaFred who
contributed the essential part to enable writing to flash while code is
executing, among other things.
2021-06-01 23:42:57 +10:00
..
bare-arm bare-arm: Switch to use MICROPY_ERROR_REPORTING_NONE to reduce size. 2021-04-27 23:52:40 +10:00
cc3200 all: Rename mp_keyboard_interrupt to mp_sched_keyboard_interrupt. 2021-04-30 15:13:43 +10:00
esp32 esp32/espneopixel: Add support for GPIO32 and GPIO33. 2021-05-30 23:36:50 +10:00
esp8266 esp8266,esp32: Update manifest to point to new dirs in micropython-lib. 2021-05-28 18:32:56 +10:00
javascript all: Rename mp_keyboard_interrupt to mp_sched_keyboard_interrupt. 2021-04-30 15:13:43 +10:00
mimxrt mimxrt: Add flash storage support with VFS and littlefs filesystem. 2021-06-01 23:42:57 +10:00
minimal ports: Disable MICROPY_PY_ASSIGN_EXPR in bare-arm and minimal ports. 2020-06-16 22:06:21 +10:00
nrf nrf/boards: Add support for evk_nina_b3 board. 2021-05-18 12:14:57 +10:00
pic16bit pic16bit/Makefile: Make the XC compiler version user-configurable. 2021-04-28 00:18:04 +10:00
powerpc ports: Remove def of MP_PLAT_PRINT_STRN if it's the same as the default. 2021-02-04 22:39:17 +11:00
qemu-arm qemu-arm: Add support for Cortex-A9 via sabrelite board. 2021-05-26 16:24:00 +10:00
rp2 rp2/CMakeLists.txt: Include tinyusb_common in PICO_SDK_COMPONENTS. 2021-05-11 12:46:18 +10:00
samd all: Rename mp_keyboard_interrupt to mp_sched_keyboard_interrupt. 2021-04-30 15:13:43 +10:00
stm32 stm32/boards/PYBD_SF2: Disable GCC 11 warnings for array bounds. 2021-05-27 23:57:51 +10:00
teensy all: Replace busses with buses. 2021-05-20 23:22:03 +10:00
unix unix/modffi: Use a union for passing/returning FFI values. 2021-05-06 12:17:10 +10:00
windows all: Rename mp_keyboard_interrupt to mp_sched_keyboard_interrupt. 2021-04-30 15:13:43 +10:00
zephyr zephyr/boards: Add config for nucleo_wb55rg board. 2021-04-30 15:32:16 +10:00