summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-11-19samd/boards/MINISAM_M4: Update for flash and pins.Peter van der Burg
- mpconfigboard.h: flash and USART config - mpconfigboard.mk: enable LFS1 - pins.c: define pins and LEDs - pins.h: define structs and consts
2021-11-19samd/boards/ADAFRUIT_ITSYBITSY_M4_EXPRESS: Update for flash and pins.Peter van der Burg
- mpconfigboard.h: flash and USART config - mpconfigboard.mk: enable LFS1 - pins.c: define pins and LEDs - pins.h: define structs and consts
2021-11-19samd/boards/ADAFRUIT_FEATHER_M0_EXPRESS: Update for flash and pins.Peter van der Burg
- mpconfigboard.h: flash and USART config - mpconfigboard.mk: enable LFS1 - pins.c: define pins and LEDs - pins.h: define structs and consts
2021-11-19samd: Add Pin and LED classes, and machine.unique_id.Peter van der Burg
2021-11-19samd: Add internal flash block device, filesystem and uos support.Peter van der Burg
2021-11-19samd/samd_soc: Allow a board to configure the low-level MCU config.Peter van der Burg
The board specific #defines will be moved to individual boards.
2021-11-19samd: Integrate latest asf4, add help, more time funcs and uPy features.Peter van der Burg
- Makefile: update to use new ASF4 files, support frozen manifest, and include source files in upcoming commits - boards/manifest.py: add files to freeze - boards/samd51p19a.ld: add linker script for this MCU - help.c: add custom help text - main.c: execute _boot.py, boot.py and main.py on start-up - modules/_boot.py: startup file to freeze - modutime.c: add gmtime, localtime, mktime, time functions - mpconfigport.h: enabled more features for sys and io and modules - mphalport.h: add mp_hal_pin_xxx macros - mphalport.c: add mp_hal_stdio_poll
2021-11-18lib/asf4: Point submodule to latest commit on circuitpython branch.Damien George
2021-11-18extmod/uplatform: Use generic custom platform string.stijn
Don't force the 'HAL' string to be part of the platform string because it doesn't have a sensible meaning for all possible platforms, and swap it with the PLATFORM_ARCH string so the strings which most platforms have come first.
2021-11-18extmod/uplatform: Remove unused definitions.stijn
2021-11-17windows/mpconfigport.h: Enable help and help("modules").retsyo
Following a similar change to the unix port in 6430cd3e02d4ec4a8fc949754b434f745b1973e6
2021-11-17stm32/led: Support an extra 2 LEDs in board configuration.Matt van de Werken
Although the pyboard has only 4 LEDs, there are some boards that (may) have more. This commit adds 2 more LEDs to the led.c file that if defined in the board-specific config file will be compiled in.
2021-11-17docs/library/framebuf.rst: Adjust dimensions in example.Sebastian Wicki
This commit swaps the dimensions of the `framebuffer.FrameBuffer` in the docs example from 10x100 to 100x10 pixels to avoid clipping. This is done to better fit the subsequent example code, which writes text of size 96x8 followed by a 96x1 horizontal line. The y coordinate of the horizontal line is also adjusted such that it is drawn inside of the new canvas bounds.
2021-11-17nrf/Makefile: Improve Black Magic Probe commands.Pooya Moradi
Used batch mode to get rid of the confirmation prompt on flashing. Used 'compare-sections' to verify flash. Removed the unnecessary `quit` at the end.
2021-11-17tests/micropython/const.py: Add comment about required config for test.jc_.kim
Expected result of const.py will be matched only when MICROPY_COMP_CONST is enabled. For easy understanding, added description at the first of the test code.
2021-11-17extmod/uasyncio: Fix gather returning exceptions from a cancelled task.Damien George
Fixes issue #5882.
2021-11-17shared/libc/string0: Don't include string.h, and provide __memcpy_chk.Alexey 'alexxy' Shvetsov
Some toolchains will have string.h defining various macros which can lead to compile errors for string function implementations. Not including string.h fixes this. An implementation of __memcpy_chk is provided for toolchains that enable _FORTIFY_SOURCE. Fixes issue #6046. Signed-off-by: Alexey 'alexxy' Shvetsov <alexxyum@gmail.com>
2021-11-17unix/modos: Add support for uos.urandom(n).Henk Vergonet
Use getrandom function if available, otherwise read from /dev/urandom. Signed-off-by: Henk.Vergonet@gmail.com
2021-11-17rp2/boards: Add neopixel.py to manifest.py.robert-hh
Because machine.bitstream is now implemented on the rp2 port.
2021-11-17rp2/machine_bitstream: Implement the machine.bitstream driver.robert-hh
Timing error is ~20ns at 125MHz, and ~10ns at 250MHz.
2021-11-16mimxrt: Fix mp_hal_quiet_timing_enter()/exit() so timer still runs.robert-hh
The initial code disabled IRQs, which caused the us-ticks timer to stop. The change here changes the priotity level, such that the timer still runs.
2021-11-16mimxrt/boards: Update the board.json files and add deploy_xx.md files.robert-hh
- Add board.md files for MIMXRT1060_EVK and MIMXRT1064_EVK warning about their experimental state. - Add separate deploy_teensy.md and deploy_mimxrt.md files.
2021-11-16mimxrt/boards: Add the Seeed ARCH MIX board.robert-hh
The ARCH MIX board exposes the Ethernet Pins at it's connectors. Therefore the software is configured for using a LAN8720 PHY device. Breakout boards with the LAN8720 are easily available.
2021-11-16rp2/boards: Add support for Arduino Nano RP2040.iabdalkader
2021-11-16drivers/lsm6dsox: Add LSM6DSOX driver and examples.iabdalkader
2021-11-13rp2: Add support for Nina-W10 WiFi/BT module.iabdalkader
This commit integrates the Nina-W10 driver as an optional component in the rp2 port.
2021-11-13drivers/ninaw10: Add ublox Nina-W10 WiFi/BT module driver.iabdalkader
- Add WiFi/BT drivers for ublox Nina-W10 (esp32 based) module. - Add ublox Nina-W10 Python module in extmod.
2021-11-13rp2/machine_i2s: Add I2S protocol support.Mike Teachman
This commit adds I2S protocol support for the rp2 port: - I2S API is consistent with STM32 and ESP32 ports - I2S configurations supported: - master transmit and master receive - 16-bit and 32-bit sample sizes - mono and stereo formats - sampling frequency - 3 modes of operation: - blocking - non-blocking with callback - uasyncio - internal ring buffer size can be tuned - DMA IRQs are managed on an I2S object basis, allowing other RP2 entities to use DMA IRQs when I2S is not being used - MicroPython documentation - tested on Raspberry Pi Pico development board - build metric changes for this commit: text(+4552), data(0), bss(+8) Signed-off-by: Mike Teachman <mike.teachman@gmail.com>
2021-11-13stm32,esp32: In machine_i2s, make object reference arrays root pointers.MikeTeachman
This change eliminates the risk of the IRQ callback accessing invalid data. Discussed here: https://github.com/micropython/micropython/pull/7183#discussion_r660209875 Signed-off-by: Mike Teachman <mike.teachman@gmail.com>
2021-11-12stm32,esp32: In machine_i2s, send null samples in underflow situations.MikeTeachman
Eliminate noise data from being sent to the I2S peripheral when the transmitted sample stream is stopped. Signed-off-by: Mike Teachman <mike.teachman@gmail.com>
2021-11-12esp32: Support building with latest IDF v5.Magnus von Wachenfeldt
The latest ESP-IDF v5.0-dev declares MAJOR_VERSION 5 and MINOR_VERSION 0. timer_ll_set_alarm_enable() is also changed to timer_ll_set_alarm_value().
2021-11-05esp8266/boards/GENERIC: Enable f-strings.Damien George
Costs 612 bytes of code space. Signed-off-by: Damien George <damien@micropython.org>
2021-11-05tools/autobuild: Automatically build all mimxrt, rp2 and samd boards.Damien George
Any board with a board.json file will be automatically built. Signed-off-by: Damien George <damien@micropython.org>
2021-11-05minimal/mpconfigport.h: Disable features that are not needed.Damien George
Now that there are feature levels, and that this port uses MICROPY_CONFIG_ROM_LEVEL_MINIMUM, it's easy to see what optional features can be disabled. And this commit disables them. Signed-off-by: Damien George <damien@micropython.org>
2021-11-04minimal/Makefile: Don't force a 32-bit build.Jim Mussared
Word-size specific configuration is now done automatically, so it no longer requires this to match the ARM configuration. Also it's less common to have 32-bit compilation support installed, so this will make it work "out of the box" for more people. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-11-01tools/dfu.py: Make tool work with python3 when parsing DFU files.Dave Hylands
2021-11-01docs/rp2/general.rst: Fix typo with missing spaces.Andrew Scheller
2021-11-01py/gc: Add hook to run code during time consuming GC operations.Laurens Valk
This makes it possible for cooperative multitasking systems to keep running event loops during garbage collector operations. For example, this can be used to ensure that a motor control loop runs approximately each 5 ms. Without this hook, the loop time can jump to about 15 ms. Addresses #3475. Signed-off-by: Laurens Valk <laurens@pybricks.com>
2021-11-01rp2: Enable optimisations (comp goto, map cache, fast attr).Jim Mussared
Computed goto costs 1800 bytes for 5-10% performance. Map caching and attr fast path costs 130 bytes for up to 30%. Net effect of those three optimisations: bm_chaos.py +16.059% (+/-0.09%) bm_fannkuch.py +11.145% (+/-0.01%) bm_fft.py +14.604% (+/-0.01%) bm_float.py +26.849% (+/-0.08%) bm_hexiom.py +34.039% (+/-0.03%) bm_nqueens.py +18.333% (+/-0.06%) bm_pidigits.py +4.472% (+/-0.03%) misc_aes.py +28.765% (+/-0.09%) misc_mandel.py +27.116% (+/-0.05%) misc_pystone.py +40.299% (+/-0.20%) misc_raytrace.py +22.812% (+/-0.07%) Also enable other EXTRA-level optimisations (module const, return_if_expr, triple_tuple_assign, factorial, mpz bitwise). Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-11-01py/mpconfig.h: Revert MICROPY_REPL_INFO to disabled at all levels.Damien George
This is an stm32-specific feature that's accessed via the pyb module, so not something that will be widely enabled. Signed-off-by: Damien George <damien@micropython.org>
2021-11-01rp2/mpconfigport.h: Use the "extra" feature level.Jim Mussared
This commit is a no-op change to simplify existing config. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-11-01stm32/mpconfigport.h: Use the "extra" feature level.Jim Mussared
This commit is a no-op change. Future improvements can come from making individual boards use CORE or BASIC. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-11-01py/mpconfig.h: Define the "extra" feature level.Jim Mussared
Some of these will later be moved to CORE or BASIC, but EXTRA is a good starting point based on what stm32 uses. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-11-01bare-arm/mpconfigport.h: Disable remaining optional features.Damien George
Signed-off-by: Damien George <damien@micropython.org>
2021-11-01bare-arm/mpconfigport.h: Use MICROPY_CONFIG_ROM_LEVEL_MINIMUM.Damien George
To simplify the config. This commit does not change the build. Signed-off-by: Damien George <damien@micropython.org>
2021-10-28github/workflows: Add new workflow to build ports download metadata.Damien George
Signed-off-by: Damien George <damien@micropython.org>
2021-10-28ports: Add images, features and urls to board.json.Mike Causer
2021-10-28stm32/uart: Fix race conditions and clearing status in IRQ handler.Damien George
Prior to this commit IRQs on STM32F4 could be lost because SR is cleared by reading SR then reading DR. For example, if both RXNE and IDLE IRQs were active upon entry to the IRQ handler, then IDLE is lost because the code that handles RXNE comes first and accidentally clears SR (by reading SR then DR to get the incoming character). This commit fixes this problem by making the IRQ handler more atomic in the following operations: - get current IRQ status flags - deal with RX character - clear remaining status flags - call user handler On the STM32F4 it's very hard to get this right because the only way to clear IRQ status flags is to read SR then DR, but the read of DR may read some data which should remain in the register until the user wants to read it. And it won't work to cache the read because RTS/CTS flow control will then not work. So instead the new code disables interrupts if the DR is full and waits for the user to read it before reenabling the interrupts. Fixes issue mentioned in #4599 and #6082. Signed-off-by: Damien George <damien@micropython.org>
2021-10-28esp32/boards/ESP32_S2_WROVER: Link to specific deploy_s2 instructions.Mike Causer
2021-10-28esp32/boards/LOLIN_S2_PICO: Add LOLIN_S2_PICO board definition files.Mike Causer