summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-20tests/basics: Improve test coverage for generators.Rami Ali
2016-12-20tests/run-tests: For REPL tests make sure the REPL is exited at the end.Damien George
2016-12-20tests/basics/set_pop: Improve coverage of set functions.Damien George
2016-12-20tests/basics: Add test for builtin locals().Damien George
2016-12-20tests/basics/builtin_dir: Add test for dir() of a type.Damien George
2016-12-20tests/float/builtin_float_round: Test round() with second arg.Damien George
2016-12-20py/modbuiltins: Remove unreachable code.Damien George
2016-12-20esp8266: When doing GC be sure to trace the memory holding native code.Damien George
Native code can hold pointers to objects on the heap, eg constant objects like big integers.
2016-12-20tests/basics: Improve mpz test coverage.Rami Ali
2016-12-19tests/struct*: Make skippable.Paul Sokolovsky
2016-12-19py/compile: Add an extra pass for Xtensa inline assembler.Damien George
It needs an extra pass to compute the size of the constant table for the l32r instructions.
2016-12-18zephyr: Enable slice subscription.Paul Sokolovsky
Required for the testsuite.
2016-12-17zephyr/uart_core: Access console UART directly instead of printk() hack.Paul Sokolovsky
This is required to avoid extra level of output "cooking" ("\r\r\n") and make test infrastructure work. On the other hand, this breaks somewhat Zephyr console abstraction.
2016-12-16zephyr: Use core-provided keyboard exception object.Paul Sokolovsky
2016-12-16zephyr/main: Initialize sys.path and sys.argv.Paul Sokolovsky
2016-12-15esp8266: Add "erase" target to Makefile, to erase entire flash.Mike Causer
2016-12-15esp8266: Use core-provided keyboard exception object.Damien George
2016-12-15stmhal: Use core-provided keyboard exception object.Damien George
2016-12-15lib/utils/interrupt_char: Use core-provided mp_kbd_exception if enabled.Damien George
Ultimately all ports that use lib/utils/interrupt_char would enable MICROPY_KBD_EXCEPTION, so this is an interim solution.
2016-12-15py: Add MICROPY_KBD_EXCEPTION config option to provide mp_kbd_exception.Damien George
Defining and initialising mp_kbd_exception is boiler-plate code and so the core runtime can provide it, instead of each port needing to do it themselves. The exception object is placed in the VM state rather than on the heap.
2016-12-15stmhal/usb: Always use the mp_kbd_exception object for VCP interrupt.Damien George
There's no need to store a separate pointer to this object.
2016-12-15stmhal: Rename mp_const_vcp_interrupt to mp_kbd_exception.Damien George
mp_kbd_exception is now considered the standard variable name to hold the singleton KeyboardInterrupt exception. This patch also moves the creation of this object from pyb_usb_init() to main().
2016-12-15tools/pyboard.py: Refactor so target is not reset between scripts/cmd.Damien George
Previous to this patch pyboard.py would open a new serial connection to the target for each script that was run, and for any command that was run. Apart from being inefficient, this meant that the board was soft-reset between scripts/commands, which precludes scripts from accessing variables set in a previous one. This patch changes the behaviour of pyboard.py so that the connection to the target is created only once, and it's not reset between scripts or any command that is sent with the -c option.
2016-12-15stmhal/mpconfigport: Add weak-module links for io, collections, random.Damien George
2016-12-15tests/micropython: Get heapalloc_traceback test running on baremetal.Damien George
When printing exceptions from files sent to a target by pyboard.py the filename in the exception is <stdin>, which differs to when running the script on the PC. So we strip out the filename to make the outputs the same on all targets (see also misc/print_exception.py test).
2016-12-15docs/library/pyb.UART: Moved writechar doc to sit with other writes.Lorenz Schmid
2016-12-15docs/library/pyb.UART: Added clarification about timeouts.Lorenz Schmid
2016-12-15zephyr: Implement soft reset feature.Paul Sokolovsky
2016-12-15zephyr: Support raw REPL.Paul Sokolovsky
2016-12-14py/mpconfig.h: Enable MICROPY_PY_SYS_EXIT by default.Paul Sokolovsky
sys.exit() is an important function to terminate a program. In particular, the testsuite relies on it to skip tests (i.e. any other functionality may be disabled, but sys.exit() is required to at least report that properly).
2016-12-14esp8266: Add "ota" target to produce firmware binary for use with yaota8266.Paul Sokolovsky
https://github.com/pfalcon/yaota8266 is a (WIP) OTA-enabled bootloader which doesn't require reserving space 2x size of a firmware.
2016-12-14py/runtime: Zero out fs_user_mount array in mp_init.Damien George
There's no need to force ports to copy-and-paste this initialisation code. If FSUSERMOUNT is enabled then this zeroing out must be done.
2016-12-14py/mpz: Remove unreachable code in mpn_or_neg functions.Damien George
2016-12-13tests/extmod: Improve modframebuf test coverage.Rami Ali
2016-12-13stmhal: Move PY_SYS_PLATFORM config from board to general config file.Damien George
It can be overridden by a board if needed.
2016-12-13stmhal: Add STM32F769DISC board files.Rami Ali
With minor changes to adc.c and storage.c to support the F769.
2016-12-13stmhal/cmsis: Add CMSIS file stm32f769xx.h, V1.1.2.Rami Ali
2016-12-13stmhal: Add NUCLEO_F767ZI board, with openocd config for stm32f7.Rami Ali
2016-12-13stmhal/cmsis: Add CMSIS file stm32f767xx.h, V1.1.2.Rami Ali
2016-12-13py/builtinimport: Support importing packages from compiled .mpy files.Damien George
This patch ensures that __init__.mpy files are imported if their containing directory is imported as a package.
2016-12-12tests/extmod: Improve moductypes test coverage.Rami Ali
2016-12-12py/binary: Do zero extension when storing a value larger than word size.Damien George
2016-12-09tests: Update for required byteorder arg for int.from_bytes()/to_bytes().Paul Sokolovsky
2016-12-09py/objint: from_bytes, to_bytes: Require byteorder arg, require "little".Paul Sokolovsky
CPython requires byteorder arg, make uPy compatible. As we support only "little", error out on anything else.
2016-12-09py/asm: Fix x86 and ARM assemblers due to recent code refactoring.Damien George
2016-12-09py/asm: Remove need for dummy_data when doing initial assembler passes.Damien George
For all but the last pass the assembler only needs to count how much space is needed for the machine code, it doesn't actually need to emit anything. The dummy_data just uses unnecessary RAM and without it the code is not any more complex (and code size does not increase for Thumb and Xtensa archs).
2016-12-09py/emitinline: Move common code for end of final pass to compiler.Damien George
This patch moves some common code from the individual inline assemblers to the compiler, the code that calls the emit-glue to assign the machine code to the functions scope.
2016-12-09py/emitinline: Move inline-asm align and data methods to compiler.Damien George
These are generic methods that don't depend on the architecture and so can be handled directly by the compiler.
2016-12-09py/emitinline: Embed entire asm struct instead of a pointer to it.Damien George
This reduces fragmentation, and memory use by 1 word. But more importantly it means the emit_inline_asm_t struct now "derives" from mp_asm_base.
2016-12-09esp8266: Enable inline Xtensa assembler.Damien George
With this patch, @micropython.asm_xtensa can be used on the esp8266 port.