summaryrefslogtreecommitdiffstatshomepage
path: root/lib
Commit message (Collapse)AuthorAge
* lib/utils: Change default value of pyexec_mode_kind to 0 to put in bss.odewdney2020-02-04
| | | | | | | | | By simply reordering the enums for pyexec_mode_kind_t it eliminates a data variable which costs ROM to initialise it. And the minimal build now has nothing in the data section. It seems the compiler is smart enough so that the generated code for if-logic which tests these enum values is unchanged.
* lib/mp-readline: Add word-based move/delete EMACS key sequences.Yonatan Goldschmidt2020-01-12
| | | | | | | | | | | | This commit adds backward-word, backward-kill-word, forward-word, forward-kill-word sequences for the REPL, with bindings to Alt+F, Alt+B, Alt+D and Alt+Backspace respectively. It is disabled by default and can be enabled via MICROPY_REPL_EMACS_WORDS_MOVE. Further enabling MICROPY_REPL_EMACS_EXTRA_WORDS_MOVE adds extra bindings for these new sequences: Ctrl+Right, Ctrl+Left and Ctrl+W. The features are enabled on unix micropython-coverage and micropython-dev.
* lib/mp-readline: Add an assert() to catch buffer overflows.Yonatan Goldschmidt2020-01-12
| | | | | | During readline development, this function may receive bad `pos` values. It's easier to understand the assert() failing error than to have a "stack smashing detected" message.
* lib/utils/pyexec: Introduce MICROPY_REPL_INFO, wrap debug prints in it.Yonatan Goldschmidt2019-12-28
| | | | | | | | | | For the 3 ports that already make use of this feature (stm32, nrf and teensy) this doesn't make any difference, it just allows to disable it from now on. For other ports that use pyexec, this decreases code size because the debug printing code is dead (it can't be enabled) but the compiler can't deduce that, so code is still emitted.
* py: Introduce MP_ROM_NONE macro for ROM to refer to None object.Damien George2019-12-27
| | | | | This helps to prevent mistakes, and allows easily changing the ROM value of None if needed.
* Revert "lib/tinytest: Clean up test reporting in the presence of std..."David Lechner2019-12-19
| | | | | | | This reverts commit f4ed2dfa942339dc1f174e8a83ff0d41073f1972. This lets tinytest work as it was originally designed. An alternate solution for the reverted commit will be implemented in a future commit.
* lib/libc/string0: Add simple implementations of strspn and strcspn.Damien George2019-10-30
| | | | They are needed for littlefs.
* lib/littlefs: Add README describing origin and how to gen lfs1/lfs2.Damien George2019-10-29
|
* lib/littlefs: Add littlefs v2.1.3 source.Damien George2019-10-29
|
* lib/littlefs: Add littlefs v1.7.2 source.Damien George2019-10-29
|
* stm32: Use hardware double sqrt on F7/H7 MCUs.Jim Mussared2019-10-10
| | | | | | Identical to cd527bb324ade952d11a134859d38bf5272c165e but for doubles. This gives a -2.754% improvement on bm_float.py, and -35% improvement on calling sqrt in a loop.
* lib/mynewt-nimble: Add Apache mynewt nimble as a submodule.Damien George2019-10-01
| | | | Tag nimble_1_1_0_tag.
* py: Add global default_emit_opt variable to make emit kind persistent.Damien George2019-08-28
| | | | | | | | | | | | | mp_compile no longer takes an emit_opt argument, rather this setting is now provided by the global default_emit_opt variable. Now, when -X emit=native is passed as a command-line option, the emitter will be set for all compiled modules (included imports), not just the top-level script. In the future there could be a way to also set this variable from a script. Fixes issue #4267.
* lib/lwip: Update lwIP to v2.1.2, tag STABLE-2_1_2_RELEASE.Damien George2019-07-04
|
* lib/stm32lib: Update library for updated H7xx, new L0xx, new WBxx.Damien George2019-07-03
| | | | And this library now includes the startup_stm32*.s files for each MCU.
* lib: Add tinyusb as a submodule.Damien George2019-07-01
|
* lib: Add asf4 as a submodule.Damien George2019-07-01
|
* lib/utils/sys_stdio_mphal: Add support to poll sys.stdin and sys.stdout.Damien George2019-07-01
| | | | | | A port must provide the following function for this to work: uintptr_t mp_hal_stdio_poll(uintptr_t poll_flags);
* lib: Add new submodule for mbedtls, currently at v2.17.0.Damien George2019-06-05
| | | | From upstream source: https://github.com/ARMmbed/mbedtls.git
* lib/netutils: Add DHCP server component.Damien George2019-06-03
|
* lib/cmsis: Upgrade to CMSIS 5.5.1.Damien George2019-06-03
| | | | From https://github.com/ARM-software/CMSIS_5.git, tag 5.5.1
* lib/nrfx: Upgrade nrfx to master.Glenn Ruben Bakke2019-05-21
| | | | | | | | | | | Updating the nrfx git submodule containing HAL drivers for nrf-port from v1.3.1 to current master. The version pointed to is one commit ahead of v1.7.1 release. The extra commit contains a bugfix for nrfx_uart_tx_in_progress() making it report correctly. The general upgrade of nrfx is considered to be safe, as almost all changes in between 1.3.1 and 1.7.1 are related to peripherals and target devices not used by the nrf-port as of today.
* lib/stm32lib: Update library to fix UART9/10 baudrate on F4 MCUs.Damien George2019-05-20
|
* lib/utils/interrupt_char: Invalidate interrupt char at start up.Damien George2019-05-01
| | | | | | | Otherwise mp_interrupt_char will have a value of zero on start up (because it's in the BSS) and a KeyboardInterrupt may be raised during start up. For example this can occur if there is a UART attached to the REPL which sends spurious null bytes when the device turns on.
* lib/utils: Make pyexec_file_if_exists run frozen scripts if they exist.Andrew Leech2019-05-01
| | | | | | So that boot.py and/or main.py can be frozen (either as STR or MPY) in the same way that other scripts are frozen. Frozen scripts have preference to scripts in the VFS.
* lib/utils/pyexec: Add pyexec_file_if_exists() helper function.Damien George2019-04-26
| | | | It will only execute the script if it can be stat'd and is a file.
* lib/stm32lib: Update library to fix F7 MMC capacity calculation.Damien George2019-04-01
|
* lib/oofatfs: Update oofatfs library to fix issue with logic not.Damien George2019-03-07
| | | | | From https://github.com/micropython/oofatfs, branch work-R0.13c, commit 3b4ee5a646af2769b3dddfe17d5d866233c1e45b.
* lib/oofatfs: Update ffconf.h config for new oofatfs version.Damien George2019-03-05
|
* lib/oofatfs: Update oofatfs library to R0.13c working branch.Damien George2019-03-05
| | | | | | | | From https://github.com/micropython/oofatfs, branch work-R0.13c, commit cb05c9486d3b48ffd6bd7542d8dbbab4b1caf790. Large code pages (932, 936, 949, 950) have been removed from ffunicode.c because they were not included in previous versions here.
* lib/netutils: Add function to print tracing info for Ethernet frames.Damien George2019-02-26
|
* all: Change PYB message prefix to MPY.Mike Causer2019-02-12
| | | | | | | | Replaces "PYB: soft reboot" with "MPY: soft reboot", etc. Having a consistent prefix across ports reduces the difference between ports, which is a general goal. And this change won't break pyboard.py because that tool only looks for "soft reboot".
* lib/utils/gchelper: Add gchelper.h header file for assembler functions.Damien George2019-02-12
|
* lib/utils/gchelper_m3: Add gc_helper_get_sp() function.Damien George2019-02-12
|
* lib/utils/gchelper_m3: Add license header and clean up code.Damien George2019-02-12
| | | | | This file generates the same code with the cortex-m3 and cortex-m4 assembler directive, so use cortex-m3 to support more CPUs.
* stm32: Move gchelper assembler code to lib/utils for use by other ports.Damien George2019-02-12
|
* lib/utils/printf: Exclude __GI_vsnprintf alias for gcc 9 and above.Damien George2019-02-06
| | | | See issue #4457.
* lib/nrfx: Upgrade to nrfx v1.3.1.Damien George2019-01-31
|
* lib/utils/pyexec: Implement paste mode with event driven REPL.Damien George2019-01-28
|
* lib/stm32lib: Update library to get F413 BOR defs and fix gcc 8 warning.Damien George2019-01-24
|
* lib/utils: Add generic MicroPython IRQ helper functions.Tobias Badertscher2018-12-29
| | | | Initial implementation of this is taken from the cc3200 port.
* lib/utils/pyexec: Forcefully unlock the heap if locked and REPL active.Damien George2018-10-13
| | | | | | | Otherwise there is really nothing that can be done, it can't be unlocked by the user because there is no way to allocate memory to execute the unlock. See issue #4205 and #4209.
* lib/libm/math: Add implementation of __signbitf, if needed by a port.Damien George2018-09-27
|
* lib/libm/math: Fix int type in float union, uint64_t should be uint32_t.Damien George2018-09-27
| | | | A float is 32-bits wide.
* lib/stm32lib: Update library to fix issue with filling USB TX FIFO.Damien George2018-09-26
|
* lib/libm_dbl: Add implementation of copysign() for DEBUG builds.Andrew Leech2018-09-20
| | | | | This provides a double variant of the float copysignf from libm/math.c which is required for DEBUG=1 builds when MICROPY_FLOAT_IMPL=double
* lib/libm/wf_tgamma: Fix tgammaf handling of -inf, should return nan.Damien George2018-09-04
|
* lib/libm/math: Make tanhf more efficient and handle large numbers.Damien George2018-09-04
| | | | Prior to this patch tanhf(large number) would return nan due to inf/inf.
* lib/libm_dbl/tanh: Make tanh more efficient and handle large numbers.Damien George2018-09-04
| | | | Prior to this patch tanh(large number) would return nan due to inf/inf.
* py/mpconfig.h: Introduce MICROPY_DEBUG_PRINTER for debugging output.Damien George2018-08-02
| | | | | | | | | | | This patch in effect renames MICROPY_DEBUG_PRINTER_DEST to MICROPY_DEBUG_PRINTER, moving its default definition from lib/utils/printf.c to py/mpconfig.h to make it official and documented, and makes this macro a pointer rather than the actual mp_print_t struct. This is done to get consistency with MICROPY_ERROR_PRINTER, and provide this macro for use outside just lib/utils/printf.c. Ports are updated to use the new macro name.