summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* cc3200: Fix thread mutex's so threading works with interrupts.Damien George2016-10-19
| | | | | | | | | | | | | | | | Running Python code on a hard interrupt is incompatible with having a GIL, because most of the time the GIL will be held by the user thread when the interrupt arrives. Hard interrupts mean that we should process them right away and hence can't wait until the GIL is released. The problem with the current code is that a hard interrupt will try to exit/enter the GIL while it is still held by the user thread, hence leading to a deadlock. This patch works around such a problem by just making GIL exit/enter a no-op when in an interrupt context, or when interrupts are disabled. See issue #2406.
* esp8266/main: Mark nlr_jump_fail() as MP_FASTCODE.Paul Sokolovsky2016-10-19
| | | | | It's probably not strictly needed so far, but serves as an example of MP_FASTCODE use and may be helpful in the future.
* esp8266: Add MP_FASTCODE modifier to put a function to iRAM.Paul Sokolovsky2016-10-19
| | | | | | It can be used in the following manner: void MP_FASTCODE(foo)(int arg) { ... }
* esp8266/esp8266.ld: Move main.o to iROM.Paul Sokolovsky2016-10-19
|
* esp8266/esp8266.ld: Move modmachine.o to iROM.Paul Sokolovsky2016-10-19
|
* esp8266/esp8266.ld: Move help.o to iROM.Paul Sokolovsky2016-10-19
|
* esp8266/esp_init_data: Auto-initialize system params with vendor SDK 2.0.0.Paul Sokolovsky2016-10-18
| | | | | | | SDK 2.0.0 goes into boot loop if a firmware is programmed over erased flash, causing problems with user experience. This change implements behavior similar to older SDKs': if clean flash is detected, default system parameters are used.
* teensy: Update to provide new mp_hal_pin_XXX functions following stmhal.Damien George2016-10-18
|
* stmhal/led: Refactor LED to use mp_hal_pin_output() init function.Damien George2016-10-18
| | | | | As part of this patch the MICROPY_HW_LED_OTYPE setting is removed because it is now unused (all boards anyway had this as OUTPUT_PP).
* stmhal: Refactor pin usage to use mp_hal_pin API.Damien George2016-10-18
|
* stmhal/modutime: Refactor to use extmod's version of ticks_cpu.Damien George2016-10-18
|
* cc3200: Enable loading of precompiled .mpy files.Damien George2016-10-18
| | | | Adds 1072 bytes to the code size.
* cc3200/mods/pybspi: Allow "write" arg of read/readinto to be positional.Damien George2016-10-18
| | | | To conform with Hardware API.
* docs/machine.SPI: Improve descriptions of xfer methods.Damien George2016-10-18
| | | | | In particular remove the "*" because not all ports support keyword arguments.
* cc3200: Use mp_raise_XXX helper functions to reduce code size.Damien George2016-10-18
| | | | Reduces code size by 632 bytes.
* esp8266/Makefile: Use latest esptool.py flash size auto-detection.Paul Sokolovsky2016-10-18
|
* docs/machine.SPI: Bring up to date with Hardware API, make vendor-neutral.Paul Sokolovsky2016-10-17
|
* docs: Bump version to 1.8.5.v1.8.5Damien George2016-10-17
|
* tests/run-tests: Enable extmod/machine1.py on pyboard.Damien George2016-10-17
| | | | It now works.
* stmhal: Enable str.center(), str.[r]partition() and builtin compile().Damien George2016-10-17
| | | | | Also adds "machine" to the list of modules that the parser can search for constants.
* stmhal: Implement machine.soft_reset().Damien George2016-10-17
|
* lib/utils/pyexec: Allow behaviour of SystemExit to be configurable.Damien George2016-10-17
| | | | | Setting the pyexec_system_exit variable to PYEXEC_FORCED_EXT allows SystemExit exceptions to terminate the pyexec functions.
* py: Use mp_raise_msg helper function where appropriate.Damien George2016-10-17
| | | | | Saves the following number of bytes of code space: 176 for bare-arm, 352 for minimal, 272 for unix x86-64, 140 for stmhal, 120 for esp8266.
* tests: Add test to print full KeyError exc from failed dict lookup.Damien George2016-10-17
|
* py/objdict: Actually provide the key that failed in KeyError exception.Damien George2016-10-17
| | | | The failed key is available as exc.args[0], as per CPython.
* py/objdict: Fix optimisation for allocating result in fromkeys.Damien George2016-10-17
| | | | | Iterables don't respond to __len__, so call __len__ on the original argument.
* tests: Improve coverage of array, range, dict, slice, exc, unicode.Damien George2016-10-17
|
* tests/cmdline: Improve coverage test for printing bytecode.Damien George2016-10-17
|
* esp8266, stmhal, unix: MAKE_FROZEN is consistently defined in mkenv.mk.Paul Sokolovsky2016-10-16
|
* extmod/modussl_mbedtls: Add dummy setblocking() method.Paul Sokolovsky2016-10-15
| | | | Accepts only value of True.
* extmod/utime_mphal: sleep_us/ms(): Don't wait on negative argument.Paul Sokolovsky2016-10-14
|
* stmhal/modutime: Refactor to use extmod/utime_mphal.c.Paul Sokolovsky2016-10-14
| | | | | This includes making sure that utime_mphal's sleep_ms() and sleep_us() don't sleep on negative arguments.
* extmod/utime_mphal: Factor out implementations in terms of mp_hal_* for reuse.Paul Sokolovsky2016-10-14
| | | | | | As long as a port implement mp_hal_sleep_ms(), mp_hal_ticks_ms(), etc. functions, it can just use standard implementations of utime.sleel_ms(), utime.ticks_ms(), etc. Python-level functions.
* py/vstr: Combine vstr_new_size with vstr_new since they are rarely used.Damien George2016-10-14
| | | | | | | Now there is just one function to allocate a new vstr, namely vstr_new (in addition to vstr_init etc). The caller of this function should know what initial size to allocate for the buffer, or at least have some policy or config option, instead of leaving it to a default (as it was before).
* esp8266: Enable micropython.alloc_emergency_exception_buf().Damien George2016-10-14
|
* tests/micropython: Add tests for heap_lock, and emergency exceptions.Damien George2016-10-14
|
* qemu-arm: Remove SRC_TEST_C from SRC_QSTR list, it's not needed.Damien George2016-10-14
| | | | And it gives problems with header dependencies for auto-qstr generation.
* qemu-arm: Enable lots of extmods and enable tests for them.Damien George2016-10-14
| | | | | The qemu-arm port is used for testing of ARM Thumb architecture on a desktop so should have many features enabled.
* stmhal/pybstdio: Use size_t instead of mp_uint_t.Damien George2016-10-14
|
* tests/extmod/vfs_fat: Replace asserts with prints and expected outputs.Alex March2016-10-13
|
* extmod/modujson: Fix nanbox build.Damien George2016-10-13
|
* tests/extmod: Add test for ujson.load().Damien George2016-10-13
|
* extmod/modujson: Implement ujson.load() to load JSON from a stream.Damien George2016-10-13
| | | | | | | This refactors ujson.loads(s) to behave as ujson.load(StringIO(s)). Increase in code size is: 366 bytes for unix x86-64, 180 bytes for stmhal, 84 bytes for esp8266.
* zephyr: Add copyright blurbs.Paul Sokolovsky2016-10-12
|
* zephyr/mpconfigport.h: Fix rebasing artifacts.Paul Sokolovsky2016-10-12
|
* zephyr: Implement the help() function.Daniel Thompson2016-10-12
| | | | | | | | The boot issue text mentions a help() function and encourages the user to run it. It is very disconcerting to find that the function does not exist... Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
* zephyr/Makefile: Be sure to extra qstr's from port sources.Paul Sokolovsky2016-10-12
|
* README: Mention _thread module availability in select ports.Paul Sokolovsky2016-10-12
|
* tools: Upgrade upip to 1.1.3.Paul Sokolovsky2016-10-12
| | | | | Initial support for running on a baremetal, low-heap systems (like esp8266), using Python module interface.
* lib/utils/pyexec: Don't treat SystemExit as "forced exit".Paul Sokolovsky2016-10-12
| | | | | | "Forced exit" is treated as soft-reboot (Ctrl+D). But expected effect of calling sys.exit() is termination of the current script, not any further and more serious actions like mentioned soft reboot.