- 18 Apr, 2017 4 commits
-
-
Damien George authored
-
Damien George authored
This is a user-facing change to the cc3200's API, to make it conform to the new machine hardware API. The changes are: - change I2C constructor to: I2C(id=0, *, freq=100000, scl=None, sda=None) - change I2C init to: init(*, freq, scl, sda) - removal of machine.I2C.MASTER constant - I2C str/repr no longer prints I2C.MASTER To update existing code it should be enough to just remove the I2C.MASTER constant from contructor/init for I2C.
-
Damien George authored
stmhal doesn't have a machine.UART class so this section is not needed.
-
Damien George authored
-
- 16 Apr, 2017 7 commits
-
-
Paul Sokolovsky authored
If we got a CRASH result, return early, similar to SKIP. This is important because previous refactor changed branching logic a bit, so CRASH now gets post-processed into CRASH\n, which broke remote hardware tests.
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
Don't give a guarantee of HW RNG, only a possibility of its usage.
-
Paul Sokolovsky authored
-
- 15 Apr, 2017 1 commit
-
-
Damien George authored
A shorter name takes less code size, less room in scripts and is faster to type at the REPL. Tests and HW-API examples are updated to reflect the change.
-
- 14 Apr, 2017 2 commits
-
-
Paul Sokolovsky authored
As Zephyr currently doesn't handle MTU itself (ZEP-1998), limit amount of data we send on our side. Also, if we get unsuccessful result from net_nbuf_append(), calculate how much data it has added still. This works around ZEP-1984.
-
Paul Sokolovsky authored
If run-tests script is run from another dir, we still want to look up feature checks in run-tests' dir.
-
- 13 Apr, 2017 5 commits
-
-
Paul Sokolovsky authored
Give a clearly dissuading tone on end users trying 512KB version - it has to many end-usery features lacking.
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
Instead of complicating recv() implementation.
-
Damien George authored
-
- 12 Apr, 2017 6 commits
-
-
Damien George authored
If a finaliser raises an exception then it must not propagate through the GC sweep function. This patch protects against such a thing by running finaliser code via the mp_call_function_1_protected call. This patch also adds scheduler lock/unlock calls around the finaliser execution to further protect against any possible reentrancy issues: the memory manager is already locked when doing a collection, but we also don't want to allow any scheduled code to run, KeyboardInterrupts to interupt the code, nor threads to switch.
-
Damien George authored
Also optimise the function so it only needs to call the MP_STATE_THREAD macro once (following how other nlr code is written).
-
Damien George authored
-
Damien George authored
Disabled by default.
-
Damien George authored
The common cases for inheritance are 0 or 1 parent types, for both built-in types (eg built-in exceptions) as well as user defined types. So it makes sense to optimise the case of 1 parent type by storing just the type and not a tuple of 1 value (that value being the single parent type). This patch makes such an optimisation. Even though there is a bit more code to handle the two cases (either a single type or a tuple with 2 or more values) it helps reduce overall code size because it eliminates the need to create a static tuple to hold single parents (eg for the built-in exceptions). It also helps reduce RAM usage for user defined types that only derive from a single parent. Changes in code size (in bytes) due to this patch: bare-arm: -16 minimal (x86): -176 unix (x86-64): -320 unix nanbox: -384 stmhal: -64 cc3200: -32 esp8266: -108
-
Damien George authored
-
- 11 Apr, 2017 5 commits
-
-
Paul Sokolovsky authored
-
Damien George authored
Otherwise the edge case of the most negative integer value will not convert correctly.
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
- 10 Apr, 2017 3 commits
-
-
Paul Sokolovsky authored
This implements the orginal idea is that Signal is a subclass of Pin, and thus can accept all the same argument as Pin, and additionally, "inverted" param. On the practical side, it allows to avoid many enclosed parenses for a typical declararion, e.g. for Zephyr: Signal(Pin(("GPIO_0", 1))). Of course, passing a Pin to Signal constructor is still supported and is the most generic form (e.g. Unix port will only support such form, as it doesn't have "builtin" Pins), what's introduces here is just practical readability optimization. "value" kwarg is treated as applying to a Signal (i.e. accounts for possible inversion).
-
Damien George authored
-
Damien George authored
This buffer is used to allocate objects temporarily, and such objects require that their underlying memory be correctly aligned for their data type. Aligning for mp_obj_t should be sufficient for emergency exceptions, but in general the memory buffer should aligned to the maximum alignment of the machine (eg on a 32-bit machine with mp_obj_t being 4 bytes, a double may not be correctly aligned). This patch fixes a bug for certain nan-boxing builds, where mp_obj_t is 8 bytes and must be aligned to 8 bytes (even though the machine is 32 bit).
-
- 08 Apr, 2017 7 commits
-
-
Paul Sokolovsky authored
Notes on WiPy incompatibilities with the standard module API are moved under "Known issues" to its documentation.
-
Paul Sokolovsky authored
Notes on WiPy incompatibilities with the standard socket module API are moved under "Known issues" to its documentation.
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
parity=0 means even parity, parity=1 - odd.
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-