Damien George
6ff0ecfffc
ports: Convert from using stmhal's input() to core provided version.
2017-06-01 16:02:49 +10:00
Damien George
4c307bfba1
all: Move BYTES_PER_WORD definition from ports to py/mpconfig.h
...
It can still be overwritten by a port in mpconfigport.h but for almost
all cases one can use the provided default.
2017-04-01 11:39:38 +11:00
Damien George
047af9b10b
cc3200: Remove socket.timeout class, use OSError(ETIMEDOUT) instead.
...
socket.timeout is a subclass of OSError, and using the latter is more
efficient than having a dedicated class. The argument of OSError is
ETIMEDOUT so the error can be distinguished from other kinds of
OSErrors. This follows how the esp8266 port does it.
2017-02-22 15:08:32 +11:00
Damien George
e859ddf3e1
cc3200: Enable uerrno module with short, custom list of error codes.
...
Since we recently replaced the OSError string messages with simple error
codes, having the uerrno module gets back some user friendly error
messages. The total code size (after removing strings, replacing with
uerrno module) is decreased.
2017-02-22 12:58:11 +11:00
Damien George
8bb8e97dfe
cc3200: Convert to using uPy internal errno numbers.
2017-02-22 12:58:11 +11:00
Damien George
b7d27e31e8
cc3200: Refactor "ticks" functions to use common extmod implementation.
...
The port now uses the common mp_utime_ticks_{ms,us,cpu,add,diff} functions
from extmod/utime_mphal.c.
The mp_utime_sleep_XXX functions are still cc3200-specific because they
handle the GIL differently to the ones in extmod.
The files misc/mpsystick.[ch] have been removed because they contain 2
unused functions, and the other remaining function is renamed to
mp_hal_ticks_us and moved to hal/cc3200_hal.c.
2017-02-06 11:14:16 +11:00
Damien George
0bd61d23b9
extmod/vfs_fat: Remove MICROPY_FATFS_OO config option.
...
Everyone should now be using the new ooFatFs library. The old one is no
longer supported and will be removed.
2017-01-30 12:26:07 +11:00
Damien George
56506fd64a
cc3200: Convert to use new VFS sub-system and new ooFatFs library.
2017-01-30 12:26:07 +11:00
Damien George
4d7fba83a6
cc3200: Convert to use builtin help function.
2017-01-22 11:56:16 +11:00
Damien George
2d329c4a56
extmod/moduselect: Use configurable EVENT_POLL_HOOK instead of WFI.
...
To make moduselect be usable by any port.
2016-12-02 16:40:39 +11:00
Paul Sokolovsky
f14e9187ac
cc3200: Update for moduselect moved to extmod/.
2016-11-21 01:08:15 +03:00
Damien George
6b239c271c
py: Factor out persistent-code reader into separate files.
...
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-16 18:13:50 +11:00
Damien George
5c93d0b916
cc3200: Enable loading of precompiled .mpy files.
...
Adds 1072 bytes to the code size.
2016-10-18 10:17:54 +11:00
Damien George
675d1c9c60
ports: Remove typedef of machine_ptr_t, it's no longer needed.
...
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-15 11:02:59 +10:00
Damien George
8766bc02dc
cc3200, teensy: Remove broken malloc/free/realloc macro helpers.
...
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-08-02 01:12:45 +10:00
Damien George
53562213c8
cc3200: Enable the GIL.
2016-06-28 11:28:52 +01:00
Damien George
eef4f13a33
cc3200: Add basic threading capabilities.
...
Can create a new thread and run it. Does not use the GIL at this point.
2016-06-28 11:28:51 +01:00
Paul Sokolovsky
9b0714b24c
py: Declare help, input, open builtins in core.
...
These are *defined* per-port, but why redeclare them again and again.
2016-04-15 00:07:56 +03:00
Damien George
6eb17c31a9
ports: Disable async/await on bare-arm, minimal, pic16bit, cc3200.
...
It costs 1188 bytes of code on Thumb 2 archs.
2016-04-13 15:31:30 +01:00
Paul Sokolovsky
4cd45f48b1
cc3200: Fix breakage after VfsFat refactor.
2016-02-15 10:39:56 +02:00
Paul Sokolovsky
0e1b5faad5
stmhal, cc3200: Actually implement machine -> umachine module weak link.
2015-12-18 22:22:43 +02:00
Paul Sokolovsky
2eb844e0b4
ports: Rename "machine" module to "umachine".
...
To let unix port implement "machine" functionality on Python level, and
keep consistent naming in other ports (baremetal ports will use magic
module "symlinking" to still load it on "import machine").
Fixes #1701 .
2015-12-18 02:39:52 +02:00
Alex March
c27e5c4b0b
cc3200: FatFS configuration moved to the library folder.
...
Port specific settinigs defined in mpconfigport. FreeRTOS and semphr
headers added to define SemaphoreHandle_t for the SYNC_T.
2015-11-08 22:21:17 +00:00
Damien George
731f359292
all: Add py/mphal.h and use it in all ports.
...
py/mphal.h contains declarations for generic mp_hal_XXX functions, such
as stdio and delay/ticks, which ports should provide definitions for. A
port will also provide mphalport.h with further HAL declarations.
2015-10-31 19:14:30 +03:00
danicampora
be2879ce89
cc3200: Enable "all special methods" configuration option.
2015-10-21 15:30:57 +02:00
danicampora
9a507c67ad
cc3200: Enable REPL autoindent.
2015-10-21 15:30:56 +02:00
danicampora
d8137178bb
cc3200: Create wipy module, remove HeartBeat class.
...
The heartbeat is now controllable via a single function within the
wipy module.
2015-10-19 21:17:15 +02:00
Daniel Campora
eb9a3ec654
cc3200: Disable uheapq and uhashlib.
...
Those two are rarely used features and better to have the extra heap.
2015-09-27 18:04:11 +02:00
Daniel Campora
c92e6a45eb
cc3200: Rename pyb module to machine.
2015-09-27 16:50:27 +02:00
Daniel Campora
ef369249cb
cc3200: Implement support for os.dupterm().
2015-09-27 11:27:24 +02:00
Daniel Campora
57fa14b5be
cc3200: New WLAN API including test.
2015-09-27 01:50:52 +02:00
Daniel Campora
dbdcb58d64
cc3200: New irq API, affects all classes that provide the irq method.
2015-09-27 01:48:20 +02:00
Daniel Campora
dffa9f6da6
cc3200: New SD and RTC API plus os and time modules' extensions.
2015-09-21 22:30:32 +02:00
Daniel Campora
7c87747db0
cc3200: Disable some uPy features in debug mode to help code fit.
2015-09-10 08:00:47 +02:00
Daniel Campora
f91f212d9f
cc3200: New UART API plus related test.
2015-09-10 07:59:47 +02:00
Daniel Campora
fb3f9cff33
cc3200: Switch to 1 byte hash for QSTRs.
2015-07-30 00:43:13 +02:00
Daniel Campora
fa47bebfbc
cc3200: Add struct weak link for ustruct.
2015-07-10 11:37:46 +02:00
Daniel Campora
9a65fa304c
cc3200: Add modussl, ssl sockets subclassed from normal sockets.
...
Stream methods were added to normal sockets as in the unix port.
2015-07-02 16:30:00 +02:00
Daniel Campora
f522849a4d
cc3200: Add socket.timeout and socket.error exceptions.
2015-07-02 11:53:15 +02:00
Daniel Campora
778413168b
cc3200: Enable more features to improve compatibility with stmhal.
2015-06-28 14:14:20 +02:00
Daniel Campora
ed56b0baba
cc3200: Finally unlock the full wake on WLAN feature set.
2015-05-22 19:53:33 +02:00
Daniel Campora
18030bd85d
cc3200: Add own ubinascii module.
...
The reason to have our owm ubinascii module is so that later we
can add crc32 support using the hardware engine.
2015-05-22 09:56:11 +02:00
Daniel Campora
e800db562f
cc3200: Add uhashlib. Supports SHA1 and SHA256.
2015-05-20 11:44:24 +02:00
Daniel Campora
514ba15d6a
cc3200: Disable UCTYPES and enable ARRAY_SLICE_ASSIGN.
2015-05-20 11:44:19 +02:00
Daniel Campora
cd3f2523f1
cc3200: Disable WLAN.urn() by default.
...
Can be enabled by defining MICROPY_PORT_WLAN_URN=1 in mpconfigport.h.
2015-05-17 14:20:24 +02:00
Daniel Campora
8e611e8414
cc3200: Add Timer module. Supports free running, PWM and capture modes.
2015-05-17 12:34:49 +02:00
Daniel Campora
2bdefea9d6
cc3200: Enable MICROPY_MODULE_WEAK_LINKS.
2015-05-07 12:19:31 +02:00
Daniel Campora
e04aa96b4d
cc3200: Define MICROPY_CPYTHON_COMPAT=0.
...
This only disables some corner case functionality to keep C Python
compatibility, and saves ~600 bytes.
2015-05-05 11:23:06 +02:00
Daniel Campora
8c8d7f3c60
cc3200: Clean up pyb.Pin
...
Remove unused and unneeded functions, also create Pin.get_config() that
returns the whole configuration of the pin.
This reduces code size by ~500 bytes.
2015-05-03 11:26:56 +02:00
Daniel Campora
f81684141e
cc3200: Implement os.uname() to get details of the OS and hardware.
2015-04-29 00:03:56 +02:00