stm32/boards/pllvalues.py: Relax PLLQ constraints on STM32F413 MCUs.
stm32/powerctrl: Support using PLLI2C on STM32F413 as USB clock source.
stm32/powerctrl: Allow a board to configure AHB and APB clock dividers.
unix: Improve command line argument processing.
rp2: Import uarray instead of array in rp2 module.
extmod/re1.5: Check and report byte overflow errors in _compilecode.
tools/metrics.py: Fix esp32 output filename due to move to CMake.
stm32: Include .ARM section in firmware for C++ exception handling.
rp2/CMakeLists.txt: Enable USB enumeration fix.
docs/develop: Improve user C modules to properly describe how to build.
examples/usercmodules: Simplify user C module enabling.
esp32: Fix multiple definition errors with mp_hal_stdout_tx functions.
tools/ci.sh: Build user C modules for esp32.
esp32: Restore USER_C_MODULE support with new CMake build system.
rp2/moduos: Implement uos.urandom().
rp2/rp2_pio: Validate state machine frequency in constructor.
examples/embedding: Fix example so it compiles again.
stm32/boards/NUCLEO_L476RG: Add 5 remaining UARTs.
extmod/extmod.cmake: Add support to build btree module with CMake.
py/py.cmake: Introduce MICROPY_INC_CORE as a list with core includes.
py/py.cmake: Move qstr helper code to micropy_gather_target_properties.
stm32/boardctrl: Give boards control over execution of boot.py,main.py.
stm32/mpconfigport.h: Add support for a board to specify root pointers.
esp32/modsocket: Correctly handle poll/read of unconnected TCP socket.
mimxrt: Enable CPYTHON_COMPAT, PY_ASYNC_AWAIT, PY_ATTRTUPLE options.
stm32/sdram: Make MICROPY_HW_FMC_BA1,MICROPY_HW_FMC_A11 optional pins.
unix/main: Make static variable that's potentially clobbered by longjmp.
stm32/uart: Use LL_USART_GetBaudRate to compute baudrate.
stm32/boards: Split UARTx_RTS_DE into UARTx_RTS/UARTx_DE in pin defs.
py/runtime: Make sys.modules preallocate to a configurable size.
py/profile: Resolve name collision with STATIC unset.
stm32/rfcore: Intercept addr-resolution HCI cmd to work around BLE bug.
stm32/rfcore: Fix race condition with C2 accessing free buffer list.
rp2: Add support for building different board configurations.
rp2/machine_uart: Add buffered transfer of data with rxbuf/txbuf kwargs.
rp2/rp2_pio: Add StateMachine restart,rx_fifo,tx_fifo helper functions.
tools/metrics.py: Add rp2 port to table of ports that can be built.
tests/net_inet: Add 'Strict-Transport-Security' to exp file.
rp2/rp2_pio: Add fifo_join support for PIO.
esp32/machine_pin: Use rtc_gpio_deinit instead of gpio_reset_pin.
tools/ci.sh: Build esp32 using IDF v4.0.2 and v4.3.
esp32/boards: Add GENERIC_S2 board definition.
esp32: Add support for USB with CDC ACM.
esp32: Add initial support for ESP32S2 SoCs.
tests/feature_check: Check for lack of pass result rather than failure.
lib/utils: Remove unused PYEXEC_SWITCH_MODE from pyexec.h.
drivers/sdcard: Add sleep_ms(1) delay in SDCard.readinto sync loop.
windows/mpconfigport.h: Enable features also present in unix port.
esp32/CMakeLists.txt: Require CMake version 3.12.
tools/pyboard.py: Support opening serial port in exclusive mode.
tests: Use .errno instead of .args[0] for OSError exceptions.
extmod/uasyncio: Use .errno instead of .args[0] for OSError exceptions.
tools/upip.py: Use .errno instead of .args[0] for OSError exceptions.
py/objexcept: Support errno attribute on OSError exceptions.
stm32/mboot: Allow unpacking dfu without secret key.
stm32/machine_timer: Improve usability of Timer constructor and init.
stm32/boards/pllvalues.py: Support wider range of PLL values for F413.
docs/library/machine: Specify initial machine.PWM class.
py/runtime: Remove commented-out code from mp_deinit().
tests/multi_bluetooth: Add performance test for gatt char writes.
tests/run-multitests.py: Provide some convenient serial device shorcuts.
zephyr/boards: Add config for nucleo_wb55rg board.
zephyr/modmachine: Add machine.idle().
zephyr: Run scheduled callbacks at REPL and during mp_hal_delay_ms.
py/scheduler: Add optional port hook for when something is scheduled.
all: Rename mp_keyboard_interrupt to mp_sched_keyboard_interrupt.
nrf/boards/microbit: Use mp_sched_exception() where appropriate.
py/scheduler: Add mp_sched_exception() to schedule a pending exception.
py/profile: Use mp_handle_pending() to raise pending exception.
esp8266/modnetwork: Use mp_handle_pending() to raise pending exception.
stm32/sdio: Allow configuring the SDMMC periph used for SDIO.
drivers/cyw43/cywbt: Remove hard-coded UART6 alternate function setting.
stm32/boards/PYBD_SF2: Enable RF switch compile option.
drivers/cyw43/cywbt: Add compile option for RF switch.
drivers/cyw43/cyw43_ctrl: Use new sdio enable API functions.
stm32/sdio: Add functions to re/enable SDIO/SDIOIT.
stm32/uart: Enable HW flow control for UART 1/5/7/8.
stm32/sdcard: Allow configuring the SDMMC periph used for SD/MMC card.
stm32/mboot: Allow mboot to be placed at any location in flash.
stm32/mboot: Allow a board to customise the linker scripts.
stm32/mboot: Fix mp_hal_delay_us() and add mp_hal_ticks_ms().
tm32/adc: Allow mboot to use basic ADC functions.
stm32/mboot: Allow a board to add source files to the build.
stm32/boardctrl: Show first reset-mode state on LEDs when selecting.
stm32/boardctrl: Add constants for reset mode values.
stm32/softtimer: Support static soft timer instances.
stm32/softtimer: Add support for having a C-based callback.
tools/makemanifest.py: Show directory name if there is a FreezeError.
esp32: Restore FROZEN_MANIFEST support with new CMake build system.