summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* esp8266,minimal,pic16bit: Use size_t for mp_builtin_open argument.Alexander Steffen2017-06-28
| | | | | py/builtin.h declares mp_builtin_open with the first argument of type size_t. Make all implementations conform to this declaration.
* py/frozenmod.h: Add missing header guardsAlexander Steffen2017-06-28
|
* docs/{micropython,sys,uos}: Use markup adhering to the latest docs conventions.Paul Sokolovsky2017-06-28
|
* stmhal/sdcard: Allow a board to customise the SDIO pins.Benjamin Weps2017-06-27
|
* docs/{esp,pyb,ubinascii}: Use markup adhering to the latest docs conventions.Paul Sokolovsky2017-06-27
|
* docs: Move all ports docs to the single ToC.Paul Sokolovsky2017-06-27
| | | | | | | | | | | | | | Previously, only "selected chapters" were shown in left-pane ToC (of Read The Docs theme). These chapters were selected out of order. The rest of chapters were hidden beyond "Documentation Contents" pseudo- chapter. This arguably led only to confusion, as many people probably never tried to open that pseudo-chapter, and those who did, were confused. Such organization is even worse for PDF output, causing chapters go in mix-mashed order. So, instead move to single clean ToC. This will allow readers of HTML to have access to any doc content at their fingertips (and straight before their eyes), and will allow to finally have clean PDF docs.
* drivers/onewire: Enable pull-up when init'ing the 1-wire pin.Damien George2017-06-26
| | | | | | A previous version of the 1-wire driver (which was recently replaced by the current one) had this behaviour and it allows to create a 1-wire bus without any external pull-up resistors.
* stmhal/boards/stm32f405.ld: Increase FLASH_TEXT to end of 1MiB flash.Damien George2017-06-26
| | | | | | | And and FLASH_FS, and use "K" values instead of hex numbers for lengths. The increase of FLASH_TEXT is to allow more frozen bytecode for a particular user's project. It's not used for anything else.
* README: Improve description of precompiled bytecode; mention mpy-cross.Damien George2017-06-26
|
* docs/library/gc: Fix grammar and improve readability of gc.threshold().Damien George2017-06-26
|
* docs/esp8266/tutorial/intro: Fix some grammatical typos.Damien George2017-06-26
|
* esp8266/machine_rtc: Use correct arithmetic for aligning RTC mem len.Damien George2017-06-26
|
* tests: Auto detect floating point capabilites of the target.Damien George2017-06-26
| | | | | The floating-point precision of the target is detected (0, 30, 32 or 64) and only those tests which can run on the target will be run.
* py/mpconfig.h: Remove spaces in "Micro Python" and remove blank line.Damien George2017-06-26
|
* docs/ref/speed_python: Update and make more hardware-neutral.Paul Sokolovsky2017-06-26
| | | | | | | | Move hardware-specific optimizations to the very end of document, and add visible note that it gives an example for Pyboard. Remove references to specific hardware technologies, so the doc can be more naturally used across ports. Various markup updates to adhere to the latest docs conventions.
* docs/network: Use markup adhering to the latest docs conventions.Paul Sokolovsky2017-06-26
|
* docs/machine*: Use markup adhering to the latest docs conventions.Paul Sokolovsky2017-06-25
|
* docs/lcd160cr: Group related constants together. Use full sentences.Paul Sokolovsky2017-06-25
| | | | Per the latest docs conventions.
* docs/conf.py: Set default_role = 'any'.Paul Sokolovsky2017-06-25
| | | | | | | | | | | | | | | | This causes `symbol` syntax to be equivalent to :any:`symbol`, which is in turn the easiest way to cross-reference an arbitrary symbol in the docs: http://www.sphinx-doc.org/en/stable/markup/inline.html#role-any :any: requires at least Sphinx 1.3 (for reference, Ubuntu 16.03 ships with 1.3.6, the latest 1.6.3). Any many of our docs, `symbol` is misused to specify arguments to functions, etc. Refactoring that is in progress. (CODECONVENTIONS already specify proper syntax for both arguments and xrefs, based on CPython conventions).
* docs/utime: Use markup adhering to the latest conventions.Paul Sokolovsky2017-06-25
|
* docs/lcd160cr: Use markup adhering to the latest conventions.Paul Sokolovsky2017-06-25
|
* CODECONVENTIONS: docs: Markup for None/True/False.Paul Sokolovsky2017-06-25
| | | | | Based on what CPython uses. However, Read The Docs theme styles this markup in very stand-out way, so we may think what to do about it.
* docs/btree: Use markup adhering to the latest conventions.Paul Sokolovsky2017-06-25
|
* CODECONVENTIONS: Start to describe docs conventions.Paul Sokolovsky2017-06-25
|
* docs/builtins: List builtin exceptions.Paul Sokolovsky2017-06-24
| | | | If for nothing else, then at least to cross-reference them.
* esp8266/README: Make "Documentation" a top-level section.Paul Sokolovsky2017-06-24
|
* README: Mention support for bytecode and frozen bytecode.Paul Sokolovsky2017-06-24
|
* extmod/moduzlib: decompress: Remove stale "(void)n_args".Paul Sokolovsky2017-06-24
| | | | n_args is now actually used in this function.
* docs/gc: Document gc.threshold() function.Paul Sokolovsky2017-06-24
|
* docs/gc: Mark mem_alloc()/mem_free() as uPy-specific.Paul Sokolovsky2017-06-24
|
* docs/conf.py: Include 3 levels of ToC in latexpdf output.Paul Sokolovsky2017-06-24
| | | | | Instead of default 2. 3 are required to access description of individual library modules.
* docs/esp8266/tutorial/intro: Sphinx requires blank lines around literal blocks.Paul Sokolovsky2017-06-23
| | | | At least, Sphinx 1.3.6.
* docs/esp8266/tutorial/intro: Discourage use of 512kb firmwares.Paul Sokolovsky2017-06-23
| | | | This follows similar warnings in other parts of docs.
* docs/license: Update copyright year.Paul Sokolovsky2017-06-23
|
* tests/connect_nonblock: Refactor towards real net_hosted test.Paul Sokolovsky2017-06-23
| | | | | In the future, a special runner for such tests will import each test and call test() function with an address of test server to use.
* tests/net_inet: Move tests which don't require full Internet to net_hosted.Paul Sokolovsky2017-06-23
| | | | | | | | | | The idea is that these tests can be run with just a test server running on a test host, with device under test connecting to it, instead of requiring Internet connection for testing. Such setup is however WIP, and some tests in net_hosted/ are so far written to connect to Internet, as there're not test server written yet. This is expected to evolve over time.
* esp8266: Enable MICROPY_ENABLE_FINALISER.Paul Sokolovsky2017-06-23
| | | | | | GC finalization should be enabled for modlwip, or it may lead to GC problems with socket objects. This decreases usable heap size from 36288 to 35968 (-320) bytes.
* esp8266: Move mp_hal_pin_open_drain from esp_mphal.c to machine_pin.c.Damien George2017-06-22
| | | | | | | It belongs with the other pin config functions in machine_pin.c. Also, esp_mphal.c is put in iRAM so this change saves about 300 bytes of iRAM (and mp_hal_pin_open_drain is not a time critical function so doesn't need to be in iRAM).
* stmhal/modules: Provide sym-link to onewire.py driver.Damien George2017-06-22
|
* esp8266: Reinstate 1-wire scripts by sym-linking to drivers/onewire/.Damien George2017-06-22
| | | | No changes have been made to the code, the files just moved.
* drivers/onewire: Move onewire.py, ds18x20.py from esp8266 to drivers.Damien George2017-06-22
| | | | | | | | | | | | | | | These drivers can now be used by any port (so long as that port has the _onewire driver from extmod/modonewire.c). These drivers replace the existing 1-wire and DS18X20 drivers in the drivers/onewire directory. The existing ones were pyboard-specific and not very efficient nor minimal (although the 1-wire driver was written in pure Python it only worked at large enough CPU frequency). This commit brings backwards incompatible API changes to the existing 1-wire drivers. User code should be converted to use the new drivers, or check out the old version of the code and keep a local copy (it should continue to work unchanged).
* stmhal: Make available the _onewire module, for low-level bus control.Damien George2017-06-22
|
* stmhal: Add "quiet timing" enter/exit functions.Damien George2017-06-22
| | | | | They disable all interrupts except for SysTick and are useful for doing certain low-level timing operations.
* extmmod/modonewire: Rename public module to mp_module_onewire.Damien George2017-06-22
| | | | This follows naming scheme of other modules in extmod.
* extmod: Move modonewire.c from esp8266 to extmod directory.Damien George2017-06-22
| | | | It's now generic enough to be used by any port.
* esp8266/modonewire: Make timings static and remove onewire.timings func.Damien George2017-06-22
| | | | | | The 1-wire bus is defined with fixed timings so there should be no need to change them dynamically at runtime. Making the timings fixed saves about 270 bytes of code and 20 bytes of RAM.
* esp8266/modonewire: Move low-level 1-wire bus code to modonewire.c.Damien George2017-06-22
| | | | | | | | | | | | | | | | | The reason it was separated is so that the low-level code could be put in iRAM, for timing reasons. But: 1. Tests show that it's not necessary to have this code in iRAM for it to function correctly, and taking it out of iRAM reclaims some of that precious resource. Furthermore, even though these functions were in iRAM there were some functions that it called (eg pin get/set functions) which were not in iRAM, so partially defeated the purpose of putting the 1-wire code in iRAM. 2. It's easier to reuse this 1-wire code in other ports if it's in a single file. 3. If it turns out that certain code does need to be in iRAM then one can use the MP_FASTCODE macro to do that.
* py/compile: Optimise emitter label indices to save a word of heap.Damien George2017-06-22
| | | | | | | Previous to this patch, a label with value "0" was used to indicate an invalid label, but that meant a wasted word (at slot 0) in the array of label offsets. This patch adjusts the label indices so the first one starts at 0, and the maximum value indicates an invalid label.
* tests/basics: Add tests for for-else statement.Damien George2017-06-22
|
* py/compile: Fix bug with break/continue in else of optimised for-range.Damien George2017-06-22
| | | | | | | | | | | | | | | | | This patch fixes a bug whereby the Python stack was not correctly reset if there was a break/continue statement in the else black of an optimised for-range loop. For example, in the following code the "j" variable from the inner for loop was not being popped off the Python stack: for i in range(4): for j in range(4): pass else: continue This is now fixed with this patch.