summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-10-28docs/library/network: Typo fixes, consistent acronym capitalization.Paul Sokolovsky
2016-10-28docs/library/network: Reword intro paragraph.Paul Sokolovsky
2016-10-27tests/basics/gc1: Garbage collector threshold() coverage.Alex March
2016-10-27py/stream: Typo fix in comment.Paul Sokolovsky
2016-10-27qemu-arm: Exclude new vfs_fat tests.Alex March
2016-10-27tests/extmod/vfs_fat_oldproto: Test old block device protocol.Alex March
2016-10-27tests/extmod/vfs_fat_fsusermount: Improve fsusermount test coverage.Alex March
2016-10-27zephyr: Initial implementation of machine.Pin.Daniel Thompson
The integration with Zephyr is fairly clean but as MicroPython Hardware API requires pin ID to be a single value, but Zephyr operates GPIO in terms of ports and pins, not just pins, a "hierarchical" ID is required, using tuple of (port, pin). Port is a string, effectively a device name of a GPIO port, per Zephyr conventions these are "GPIO_0", "GPIO_1", etc.; pin is integer number of pin with the port (supposed to be in range 0-31). Example of pin initialization: pin = Pin(("GPIO_1", 21), Pin.OUT) (an LED on FRDM-K64F's Port B, Pin 21). There is support for in/out pins and pull up/pull down but currently there is no interrupt support. Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org> Signed-off-by: Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2016-10-26zephyr: Use board/SoC values for startup banner based on Zephyr config.Vincenzo Frascino
This patch modifies the HW macro definition in order to let micropython report correctly the BOARD and the SOC on which it is working on.
2016-10-26zephyr: Fix mp_hal_set_interrupt_char() declaration to be compatible.Paul Sokolovsky
With other ports. Other ports declare it in mphalport.h, it can be inline or macro.
2016-10-26lib/utils/pyexec: Fix compilation warning of type vs format mismatch.Paul Sokolovsky
This happens with some compilers on some architectures, which don't define size_t as unsigned int. MicroPython's printf() dooesn't support obscure format specifiers for size_t, so the obvious choice is to explicitly cast to unsigned, to match %u used in printf().
2016-10-26lib/utils/pyexec: Add mp_hal_set_interrupt_char() prototype.Vincenzo Frascino
This patch removes a compilation warning in pyexec. Signed-off-by: Vincenzo Frascino <vincenzo.frascino@linaro.org>
2016-10-26examples/http_server_simplistic: Add "not suitable for real use" note.Paul Sokolovsky
2016-10-26extmod/moduos_dupterm: Renamed to uos_dupterm.Paul Sokolovsky
As part of file naming clean up (moduos_dupterm doesn't implement a full module, so should skip "mod" prefix, similar to other files in extmod/).
2016-10-25docs/machine.SPI.rst: Fix typos and formatting, clarify.Paul Sokolovsky
Clarify the class implements master side of the protocol, also put adhoc WiPy paramter after the generic, described in the current Hardware API version.
2016-10-25unix/Makefile: Remove references to deprecated pip-micropython.Paul Sokolovsky
2016-10-25.travis.yml: minimal: Use CROSS=1, for binary size check.Paul Sokolovsky
x86 has bloated alignements, etc. Use ARM binary to catch any code size increases promptly.
2016-10-25.travis.yml: Integrate tools/check_code_size.sh.Paul Sokolovsky
2016-10-25tools/check_code_size.sh: Code size validation script for CI.Paul Sokolovsky
2016-10-25esp8266/scripts: Make neopixel/apa102 handle 4bpp LEDs with common code.Radomir Dopieralski
The NeoPixel class now handles 4 bytes-per-pixel LEDs (extra byte is intensity) and arbitrary byte ordering. APA102 class is now derived from NeoPixel to reduce code size and support fill() operation.
2016-10-25docs/library/builtins: Add docs for delattr and slice.Damien George
2016-10-25esp8266: Add support for building firmware version for 512K modules.Paul Sokolovsky
To build, "make 512k". Disabled are FatFs support (no space for filesystem), Python functionality related to files, btree module, and recently enabled features. With all this, there's only one free FlashROM page.
2016-10-24tools/pip-micropython: Remove deprecated wrapper tool.Paul Sokolovsky
Deprecated for long time, pip-micropython now can't install packages optimized for low-heap ports (like whole of micropython-lib).
2016-10-24esp8266/modesp: Add flash_user_start() function.Paul Sokolovsky
As we're looking towards adding OTA support, calculation of a FlashROM area which can be used for filesystem (etc.) may become complex, so introduce C function for that. So far it just hardcodes current value, 0x90000. In the future the function may be extended (and renamed) to return the size of area too.
2016-10-24docs/library/machine.SPI: Remove spurious "of".Damien George
2016-10-24tests/basics: Add test for builtin "delattr".Damien George
2016-10-24py: Add "delattr" builtin, conditional on MICROPY_CPYTHON_COMPAT.Damien George
2016-10-24tests/basics/builtin_slice: Add test for "slice" builtin name.Damien George
2016-10-24py/modbuiltins: Add builtin "slice", pointing to existing slice type.Damien George
2016-10-24extmod/vfs_fat_file: Make file.close() a no-op if file already closed.Damien George
As per CPython semantics. In particular, file.__del__() should not raise an exception if the file is already closed.
2016-10-24qemu-arm: Exclude extmod/vfs_fat_fileio.py test.Alex March
2016-10-24tests/extmod/vfs_fat: Improve VFS test coverage.Alex March
Covered case: - Stat cases - Invalid read/write/flush/close - Invalid mkdir/rmdir/remove/getcwd - File seek/tell, modes a/x/+, t/b - Writing to a full disk - Full path rename, slash trim - Rename cases - Bytestring listdir - File object printing
2016-10-23esp8266/etshal.h: Add few more ESP8266 vendor lib prototypes.Paul Sokolovsky
2016-10-22minimal/Makefile: Split rule for firmware.bin generation.Paul Sokolovsky
2016-10-22tools: Upgrade upip to 1.1.4.Paul Sokolovsky
Fix error on unix when installing to non-existing absolute path.
2016-10-22zephyr: Implement utime module.Daniel Thompson
This provides time and sleep together with the usual ticks_us/_ms/_diff and sleep_us/ms family. We also provide access to Zephyr's high precision timer as ticks_cpu(). Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
2016-10-22esp8266/Makefile: deploy: Remove deprecated line.Paul Sokolovsky
2016-10-22ACKNOWLEDGEMENTS: Change backer 905 info, replace city with name.Fabricio Biazzotto
2016-10-22py/{modbuiltins,obj}: Use MP_PYTHON_PRINTER where possible.Paul Sokolovsky
2016-10-21lib/utils/pyhelp.c: Use mp_printf() instead of printf()Erik Moqvist
This patch introduces MP_PYTHON_PRINTER for general use.
2016-10-21py: Specialise builtin funcs to use separate type for fixed arg count.Damien George
Builtin functions with a fixed number of arguments (0, 1, 2 or 3) are quite common. Before this patch the wrapper for such a function cost 3 machine words. After this patch it only takes 2, which can reduce the code size by quite a bit (and pays off even more, the more functions are added). It also makes function dispatch slightly more efficient in CPU usage, and furthermore reduces stack usage for these cases. On x86 and Thumb archs the dispatch functions are now tail-call optimised by the compiler. The bare-arm port has its code size increase by 76 bytes, but stmhal drops by 904 bytes. Stack usage by these builtin functions is decreased by 48 bytes on Thumb2 archs.
2016-10-21py: Be more specific with MP_DECLARE_CONST_FUN_OBJ macros.Damien George
In order to have more fine-grained control over how builtin functions are constructed, the MP_DECLARE_CONST_FUN_OBJ macros are made more specific, with suffix of _0, _1, _2, _3, _VAR, _VAR_BETEEN or _KW. These names now match the MP_DEFINE_CONST_FUN_OBJ macros.
2016-10-21README: "MicroPython board" is much more commonly known as PyBoard.Paul Sokolovsky
2016-10-21stmhal/Makefile: Use standard rules for frozen module generation.Paul Sokolovsky
As defined in py/py.mk.
2016-10-21py/py.mk: Automatically add frozen.c to source list if FROZEN_DIR is defined.Paul Sokolovsky
Now frozen modules generation handled fully by py.mk and available for reuse by any port.
2016-10-20esp8266/modules/webrepl: Enforce only one concurrent WebREPL connection.Paul Sokolovsky
Concurrent WebREPL connections were never supported, now actually check for this.
2016-10-19extmod/vfs_fat_file: Check fatfs f_sync() and f_close() returns for errors.Alex March
2016-10-19cc3200: Fix thread mutex's so threading works with interrupts.Damien George
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.
2016-10-19esp8266/main: Mark nlr_jump_fail() as MP_FASTCODE.Paul Sokolovsky
It's probably not strictly needed so far, but serves as an example of MP_FASTCODE use and may be helpful in the future.
2016-10-19esp8266: Add MP_FASTCODE modifier to put a function to iRAM.Paul Sokolovsky
It can be used in the following manner: void MP_FASTCODE(foo)(int arg) { ... }