- 28 Dec, 2016 2 commits
-
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
To allow access and testing without complex access methods like WiFi. Enabled for both WiPy and TI LaunchXL.
-
- 26 Dec, 2016 1 commit
-
-
Paul Sokolovsky authored
UART REPL support was lost in os.dupterm() refactorings, etc. As os.dupterm() is there, implement UART REPL support at the high level - if MICROPY_STDIO_UART is set, make default boot.py contain os.dupterm() call for a UART. This means that changing MICROPY_STDIO_UART value will also require erasing flash on a module to force boot.py re-creation.
-
- 02 Dec, 2016 2 commits
-
-
Damien George authored
To make moduselect be usable by any port.
-
Damien George authored
The constants MP_IOCTL_POLL_xxx, which were stmhal-specific, are moved from stmhal/pybioctl.h (now deleted) to py/stream.h. And they are renamed to MP_STREAM_POLL_xxx to be consistent with other such constants. All uses of these constants have been updated.
-
- 20 Nov, 2016 1 commit
-
-
Paul Sokolovsky authored
-
- 16 Nov, 2016 2 commits
-
-
Damien George authored
If a port defines MICROPY_READER_POSIX or MICROPY_READER_FATFS then lexer.c now provides an implementation of mp_lexer_new_from_file using the mp_reader_new_file function.
-
Damien George authored
Implementations of persistent-code reader are provided for POSIX systems and systems using FatFS. Macros to use these are MICROPY_READER_POSIX and MICROPY_READER_FATFS respectively. If an alternative implementation is needed then a port can define the function mp_reader_new_file.
-
- 15 Nov, 2016 2 commits
-
-
Damien George authored
-
Paul Sokolovsky authored
Per the latest HW API, "SPI" class implements only master side of the protocol, so mode=SPI.MASTER (which was static for WiPy anyway) is not required (or allowed). This change is required to correspond to updated documentation of machine.SPI class which no longer lists "mode".
-
- 14 Nov, 2016 1 commit
-
-
Damien George authored
-
- 13 Nov, 2016 1 commit
-
-
Paul Sokolovsky authored
Its addition was due to an early exploration on how to add CPython-like stream interface. It's clear that it's not needed and just takes up bytes in all ports.
-
- 21 Oct, 2016 1 commit
-
-
Damien George authored
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.
-
- 19 Oct, 2016 1 commit
-
-
Damien George authored
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.
-
- 17 Oct, 2016 3 commits
-
-
Damien George authored
Adds 1072 bytes to the code size.
-
Damien George authored
To conform with Hardware API.
-
Damien George authored
Reduces code size by 632 bytes.
-
- 01 Oct, 2016 1 commit
-
-
daniel authored
This resolves issue #2343.
-
- 21 Sep, 2016 1 commit
-
-
Damien George authored
One can instead lookup __name__ in the modules dict to get the value.
-
- 08 Sep, 2016 1 commit
-
-
Damien George authored
machine.POWER_ON is renamed to machine.PWRON_RESET to match other reset-cause constants that all end in _RESET. The cc3200 port keeps a legacy definition of POWER_ON for backwards compatibility.
-
- 05 Sep, 2016 1 commit
-
-
Delio Brignoli authored
This new config option allows to control whether MicroPython uses its own internal printf or not (if not, an external one should be linked in). Accompanying this new option is the inclusion of lib/utils/printf.c in the core list of source files, so that ports no longer need to include it themselves.
-
- 15 Aug, 2016 1 commit
-
-
Damien George authored
This type was used only for the typedef of mp_obj_t, which is now defined by the object representation. So we can now remove this unused typedef, to simplify the mpconfigport.h file.
-
- 01 Aug, 2016 1 commit
-
-
Damien George authored
These macros are broken and are anyway unused on these two ports. If they are ever needed in the future then their implementation can be taken from either stmhal (working macros in mpconfigport.h) or esp8266 (functions).
-
- 28 Jun, 2016 17 commits
-
-
Damien George authored
-
Damien George authored
Threading is not used in the bootloader but the config optios are still enabled so we must exclude including FreeRTOS.h.
-
Damien George authored
The 16k FreeRTOS heap originally had all TCBs and stacks dynamically allocated within it (plus semaphores and some other things). Now that xTaskCreateStatic is used instead of xTaskCreate, the TCBs and stacks are allocated statically and no longer use any of the FreeRTOS heap. Therefore, the FreeRTOS stack can be shrunk by the amount that has been made static. Furthermore, the TCBs and stack that are now static should be placed in the .rtos_heaps section of RAM because this RAM is treated specially by the bootloader (the bootloader executes from the first 16k of RAM and loads the firmware into the section starting after the 16k). After this patch the FreeRTOS heap (ucHeap) is 7200 bytes. The memory available for the MicroPython heap is 54936 bytes (including GC overhead).
-
Damien George authored
In VStartSimpleLinkSpawnTask we change xTaskCreate to xTaskCreateStatic so that the task is created using statically allocated memory for the TCB and stack. This means that xTaskCreate function is no longer needed (the static version is now used exclusively).
-
Damien George authored
This function is no longer used. Having the .boot section attribute meant that it was included in the firmware regargless of use. Without this attribute the linker can remove the function.
-
Damien George authored
This config variable is now needed regardless of whether threading is enabled or not.
-
Damien George authored
-
Damien George authored
Otherwise there could be a deadlock, with the GC's mutex and thread_mutex.
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
Damien George authored
Reduced the need for the FreeRTOS heap to allocate the mutex.
-
Damien George authored
This allows to statically allocate the TCB (thread control block) and thread stack in the BSS segment, reducing the need for dynamic memory allocation.
-
Damien George authored
-
Damien George authored
We rely on the port setting and adjusting the stack size so there is enough room to recover from hitting the stack limit.
-
Damien George authored
Can create a new thread and run it. Does not use the GIL at this point.
-
Damien George authored
-