summaryrefslogtreecommitdiff
path: root/cc3200
AgeCommit message (Collapse)Author
2017-01-30extmod/vfs_fat: Remove MICROPY_FATFS_OO config option.Damien George
Everyone should now be using the new ooFatFs library. The old one is no longer supported and will be removed.
2017-01-30cc3200: Convert to use new VFS sub-system and new ooFatFs library.Damien George
2017-01-29cc3200/modusocket: Remove deprecated socket.error.Paul Sokolovsky
socket.error is deprecated even in upstream: https://docs.python.org/3/library/socket.html#socket.error, and never was a part of MicroPython socket API.
2017-01-27cc3200: Add implementations of mp_import_stat and builtin_open.Damien George
They disappeared when stmhal changed to use new MICROPY_VFS code.
2017-01-27extmod: Rename vfs_fat_file.h to vfs_fat.h.Damien George
And move declaration of mp_fat_vfs_type to this file.
2017-01-22cc3200: Convert to use builtin help function.Damien George
2017-01-07cc3200/modwlan: Add network.WLAN.print_ver() diagnostic function.Paul Sokolovsky
Prints NWP/MAC/PHY version, as affected by servicepack installed.
2017-01-04all: Consistently update signatures of .make_new and .call methods.Paul Sokolovsky
Otherwise, they serve reoccurring source of copy-paste mistakes and breaking nanbox build.
2016-12-29cc3200/README: Reorganize and update to the current state of affairs.Paul Sokolovsky
Try to put sections in more logical order, and information about cc3200tool to be the default flashing method.
2016-12-29cc3200: Add targets to erase flash, deploy firmware using cc3200tool.Paul Sokolovsky
cc3200tool, https://github.com/ALLTERCO/cc3200tool is a (mostly, some binary blobs present) open-source, Linux-friendly tool to flash a cc3200 devices. It's an alternative to fully proprietary, Windows-only Uniflash from TI. The provided make targets are for erasing flash, flashing the uPy bootloader and firmware, and flashing vendor's WiFi firmware "servicepacks" (the latter needs to be downloaded from vendor side, a link is present inside Makefile).
2016-12-29cc3200: make: Rename "deploy" target to "deploy-ota".Paul Sokolovsky
There should be target to deploy uPy over wired (UART) connection, and wired and OTA targets should be named differently.
2016-12-28cc3200/README: (Re)add information about accessing REPL on serial.Paul Sokolovsky
2016-12-28cc3200: Enable UART REPL by default.Paul Sokolovsky
To allow access and testing without complex access methods like WiFi. Enabled for both WiPy and TI LaunchXL.
2016-12-27cc3200: Re-add support for UART REPL (MICROPY_STDIO_UART setting).Paul Sokolovsky
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.
2016-12-02extmod/moduselect: Use configurable EVENT_POLL_HOOK instead of WFI.Damien George
To make moduselect be usable by any port.
2016-12-02py/stream: Move ad-hoc ioctl constants to stream.h and rename them.Damien George
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.
2016-11-21cc3200: Update for moduselect moved to extmod/.Paul Sokolovsky
2016-11-16py/lexer: Provide generic mp_lexer_new_from_file based on mp_reader.Damien George
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.
2016-11-16py: Factor out persistent-code reader into separate files.Damien George
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.
2016-11-15cc3200/mods/pybspi: Remove SPI.MASTER constant, it's no longer needed.Damien George
2016-11-15cc3200/pybspi: Remove static mode=SPI.MASTER parameter for latest HW API.Paul Sokolovsky
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".
2016-11-14cc3200/tools/smoke.py: Change readall() to read().Damien George
2016-11-14all: Remove readall() method, which is equivalent to read() w/o args.Paul Sokolovsky
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.
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-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-18cc3200: Enable loading of precompiled .mpy files.Damien George
Adds 1072 bytes to the code size.
2016-10-18cc3200/mods/pybspi: Allow "write" arg of read/readinto to be positional.Damien George
To conform with Hardware API.
2016-10-18cc3200: Use mp_raise_XXX helper functions to reduce code size.Damien George
Reduces code size by 632 bytes.
2016-10-01cc3200: Add ssl_version argument to ssl.wrap_socket().daniel
This resolves issue #2343.
2016-09-22all: Remove 'name' member from mp_obj_module_t struct.Damien George
One can instead lookup __name__ in the modules dict to get the value.
2016-09-08stmhal,cc3200,esp8266: Consistently use PWRON_RESET constant.Damien George
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.
2016-09-05py: Add MICROPY_USE_INTERNAL_PRINTF option, defaults to enabled.Delio Brignoli
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.
2016-08-15ports: Remove typedef of machine_ptr_t, it's no longer needed.Damien George
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.
2016-08-02cc3200, teensy: Remove broken malloc/free/realloc macro helpers.Damien George
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).
2016-06-28cc3200: Remove obsolete singleton heart-beat object.Damien George
2016-06-28cc3200: Allow to compile bootloader with threading enabled.Damien George
Threading is not used in the bootloader but the config optios are still enabled so we must exclude including FreeRTOS.h.
2016-06-28cc3200: Shrink the FreeRTOS heap and place TCB+stack in freed location.Damien George
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).
2016-06-28cc3200: Start the simplelink spawn task using the static task creator.Damien George
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).
2016-06-28cc3200: Remove .boot section attribute from osi_TaskCreate function.Damien George
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.
2016-06-28cc3200: In FreeRTOSConfig.h, comment on configSUPPORT_STATIC_ALLOCATION.Damien George
This config variable is now needed regardless of whether threading is enabled or not.
2016-06-28cc3200: Enable the GIL.Damien George
2016-06-28cc3200/mpthreadport: Move mem alloc outside the thread_mutex lock.Damien George
Otherwise there could be a deadlock, with the GC's mutex and thread_mutex.
2016-06-28cc3200/mpthreadport: Scan more root pointers from thread data.Damien George
2016-06-28cc3200/gccollect: Use MP_STATE_THREAD(stack_top) to get top of stack.Damien George
2016-06-28cc3200/mpthreadport: Properly initialise the main thread's data.Damien George
2016-06-28cc3200/mpthreadport: Make mutex statically allocated.Damien George
Reduced the need for the FreeRTOS heap to allocate the mutex.
2016-06-28cc3200: Use xTaskCreateStatic instead of osi_TaskCreate.Damien George
This allows to statically allocate the TCB (thread control block) and thread stack in the BSS segment, reducing the need for dynamic memory allocation.
2016-06-28cc3200: Fix call to new exception to be _msg instead of _arg1.Damien George
2016-06-28py/modthread: Allow to properly set the stack limit of a thread.Damien George
We rely on the port setting and adjusting the stack size so there is enough room to recover from hitting the stack limit.
2016-06-28cc3200: Add basic threading capabilities.Damien George
Can create a new thread and run it. Does not use the GIL at this point.