Commit Graph

6967 Commits

Author SHA1 Message Date
Scott Shawcroft 710bf34fbd Add atmel-samd boards to travis build. 2016-10-24 11:59:50 -07:00
Paul Sokolovsky b78144c64d tools/pip-micropython: Remove deprecated wrapper tool.
Deprecated for long time, pip-micropython now can't install packages
optimized for low-heap ports (like whole of micropython-lib).
2016-10-24 16:52:15 +03:00
Paul Sokolovsky e6af94d13b esp8266/modesp: Add flash_user_start() function.
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-24 16:52:15 +03:00
Damien George 266e4acdc2 docs/library/machine.SPI: Remove spurious "of". 2016-10-24 14:41:21 +11:00
Damien George 25c6fc731b tests/basics: Add test for builtin "delattr". 2016-10-24 13:50:39 +11:00
Damien George 5076e5c339 py: Add "delattr" builtin, conditional on MICROPY_CPYTHON_COMPAT. 2016-10-24 13:50:03 +11:00
Damien George bc5b896f24 tests/basics/builtin_slice: Add test for "slice" builtin name. 2016-10-24 13:35:39 +11:00
Damien George bdb0d2d0bc py/modbuiltins: Add builtin "slice", pointing to existing slice type. 2016-10-24 13:35:39 +11:00
Damien George 5694201930 extmod/vfs_fat_file: Make file.close() a no-op if file already closed.
As per CPython semantics.  In particular, file.__del__() should not raise
an exception if the file is already closed.
2016-10-24 12:59:20 +11:00
Alex March 06e7032906 qemu-arm: Exclude extmod/vfs_fat_fileio.py test. 2016-10-24 12:49:19 +11:00
Alex March cb20d999bc tests/extmod/vfs_fat: Improve VFS test coverage.
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-24 12:49:19 +11:00
Paul Sokolovsky b6c22c42ab esp8266/etshal.h: Add few more ESP8266 vendor lib prototypes. 2016-10-23 16:43:07 +03:00
Paul Sokolovsky a4dbb4230a minimal/Makefile: Split rule for firmware.bin generation. 2016-10-22 22:01:44 +03:00
Paul Sokolovsky 197a5724d8 tools: Upgrade upip to 1.1.4.
Fix error on unix when installing to non-existing absolute path.
2016-10-22 21:14:58 +03:00
Daniel Thompson 479b961d39 zephyr: Implement utime module.
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-22 20:15:26 +03:00
Paul Sokolovsky 1b76614d41 esp8266/Makefile: deploy: Remove deprecated line. 2016-10-22 18:56:43 +03:00
Fabricio Biazzotto 979e9a45d8 ACKNOWLEDGEMENTS: Change backer 905 info, replace city with name. 2016-10-22 14:45:35 +11:00
Scott Shawcroft f5ca66805b atmel-samd: Tweak DAC logic for clarity. Thanks @bcr for the suggestion. 2016-10-21 17:08:14 -07:00
Scott Shawcroft 30dc24191f Merge pull request #31 from tannewt/external_flash
Add support for external flash chips and improve mass storage.
2016-10-21 16:38:57 -07:00
Scott Shawcroft b2834c30a6 atmel-samd: Support reading from the flash cache. 2016-10-21 16:04:18 -07:00
Scott Shawcroft 98c8f2f6a3 atmel-samd: Update the FatFs sector cache on USB mass storage write
to the same sector.

This fixes #20, the issue where a listdir or import won't work
without a reset when it was run before the file was copied.
2016-10-21 15:44:10 -07:00
Scott Shawcroft b8ef783052 extmod: Fix getting sector size when the max and min sizes are the
same.

Also switch the max size back to 512 for atmel-samd to save ram.
2016-10-21 15:44:10 -07:00
Scott Shawcroft 9eb86e8015 Add support for USB writeable, MicroPython read-only volumes.
This prevents file system corruption due to two systems mutating
it at once.
2016-10-21 15:44:09 -07:00
Scott Shawcroft eb62d03e33 atmel-samd: Add flash write activity LED. 2016-10-21 15:44:09 -07:00
Scott Shawcroft 8b1526e95e atmel-samd: Add a heap based cache for writing to flash.
The code will fallback to the flash scratch space when the GC
cannot allocate us enough memory.
2016-10-21 15:44:09 -07:00
Scott Shawcroft bb1822faea atmel-samd: Support external flash on the Metro M0 w/Flash.
This uses a scratch flash sector to save data before writing a full sector.
2016-10-21 15:44:09 -07:00
Scott Shawcroft 46f6f9f899 atmel-samd: Start USB at the end so storage is initialized. 2016-10-21 15:44:09 -07:00
Scott Shawcroft aacb1adcd1 atmel-samd: Add linker file for bootloaderless board with external flash. 2016-10-21 15:44:08 -07:00
Scott Shawcroft 853e5fc652 atmel-samd: Ensure at least 2k is left for the stack. 2016-10-21 15:43:24 -07:00
Scott Shawcroft 306c921ed1 atmel-samd: Rework mass storage interaction with underlying block
storage to use micropython's VFS interface.

This makes mass storage work with any VFS implementation rather
than a single one.
2016-10-21 15:36:59 -07:00
Paul Sokolovsky 3730090d8f py/{modbuiltins,obj}: Use MP_PYTHON_PRINTER where possible. 2016-10-22 01:07:07 +03:00
Erik Moqvist f64e806f50 lib/utils/pyhelp.c: Use mp_printf() instead of printf()
This patch introduces MP_PYTHON_PRINTER for general use.
2016-10-21 18:30:58 +11:00
Damien George 571e6f26db py: Specialise builtin funcs to use separate type for fixed arg count.
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-21 16:26:01 +11:00
Damien George 4ebdb1f2b2 py: Be more specific with MP_DECLARE_CONST_FUN_OBJ macros.
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-21 16:26:01 +11:00
Paul Sokolovsky 5d0735b93a README: "MicroPython board" is much more commonly known as PyBoard. 2016-10-21 04:40:10 +03:00
Scott Shawcroft 6fe8c7b32c Merge pull request #26 from adafruit/ssd1306_hardware_i2c
Support SSD1306 with hardware I2C interface. Closes #15
2016-10-20 16:17:02 -07:00
Tony DiCola a23cc5aa14 drivers: Remove SSD1306 driver, it lives in separate micropython-adafruit-ssd1306 repo now. 2016-10-20 23:13:22 +00:00
Tony DiCola f539312af3 atmel-samd: Enable framebuffer for SSD1306 and other displays. 2016-10-20 23:10:28 +00:00
Tony DiCola 00a44fa36c Merge remote-tracking branch 'micropython/master'
Conflicts:
	README.md - Kept Adafruit README.md intact.
	py/emitglue.c - Added xtensa architecture as an OR of the define.
	zephyr/README.md - Fixed spelling mistake.
2016-10-20 23:01:13 +00:00
Paul Sokolovsky 3967ca7390 stmhal/Makefile: Use standard rules for frozen module generation.
As defined in py/py.mk.
2016-10-21 01:27:17 +03:00
Paul Sokolovsky b440307b4a py/py.mk: Automatically add frozen.c to source list if FROZEN_DIR is defined.
Now frozen modules generation handled fully by py.mk and available for reuse
by any port.
2016-10-21 01:08:43 +03:00
Scott Shawcroft 1f13f870b8 Merge pull request #25 from adafruit/drivers-more
Update drivers.rst
2016-10-20 10:16:59 -07:00
Radomir Dopieralski 0901c145ba Update drivers.rst 2016-10-20 18:58:46 +02:00
Scott Shawcroft 2cc1b25eef Merge pull request #24 from adafruit/urandom
atmel-samd: Enable full urandom module from extmod. Closes #17.
2016-10-20 09:20:18 -07:00
Paul Sokolovsky 3f251efb9b esp8266/modules/webrepl: Enforce only one concurrent WebREPL connection.
Concurrent WebREPL connections were never supported, now actually check
for this.
2016-10-20 16:50:38 +03:00
Tony DiCola 5333f5f987 atmel-samd: Enable full urandom module from extmod. 2016-10-20 06:41:21 +00:00
Scott Shawcroft 0cb0bd0f25 atmel-samd: More updates to the docs including the in-code docs. 2016-10-19 16:49:35 -07:00
Scott Shawcroft 7ebc9a4511 Switch away from sphinx.parsers which isn't available in sphinx 1.3.5 on Read The Docs. 2016-10-19 10:53:37 -07:00
Scott Shawcroft 4c9fcd6d21 Support markdown. 2016-10-19 10:53:37 -07:00
Scott Shawcroft d28b456b31 Add title to contributing doc. 2016-10-19 10:53:37 -07:00