Glenn Ruben Bakke
4e1b9aca79
nrf5/modules/machine: Adding __WFE() on machine.sleep()
2017-03-06 23:35:32 +01:00
Glenn Ruben Bakke
4afa41ac36
nrf5/modules/machine: Adding enable_irq() and disable_irq() method to the machine module. No implementation yet for the case where bluetooth stack is used.
2017-03-06 23:30:56 +01:00
Glenn Ruben Bakke
5acba015ef
nrf5/modules/rtc: Adding support for stopping and restarting rtc (if periodic) for all the instances of RTC.
2017-03-06 23:05:03 +01:00
Glenn Ruben Bakke
7c50cd26a2
nrf5/modules: Updating RTC kwarg from type to mode to set ONESHOT or PERIODIC mode.
2017-03-06 22:59:43 +01:00
Paul Sokolovsky
320099aab9
tools/tinytest-codegen: Update for recent test renaming ("intbig" suffix).
2017-03-06 22:40:04 +01:00
Glenn Ruben Bakke
3debb43e83
nrf5/modules: Adding support for periodic RTC callback.
2017-03-06 21:33:29 +01:00
Glenn Ruben Bakke
c301cca2a4
nrf5/hal: hal_rtc update. Adding current counter value to period value before setting it in the compare register.
2017-03-06 20:52:09 +01:00
Glenn Ruben Bakke
f50a56dbb5
nrf5/modules: Updating rtc module with non-const machine object list in order to allow setting callback function in constructor.
2017-03-06 20:09:04 +01:00
Glenn Ruben Bakke
87e1616488
nrf5/hal: Adding initialization of LFCLK if not already enabled in hal_rtc.
2017-03-06 20:06:47 +01:00
Paul Sokolovsky
4b03941f5e
tests/float2int*: Suffix with _intbig, don't run on any other int type.
...
I.e. they don't run successfully with MICROPY_LONGINT_IMPL_NONE
and MICROPY_LONGINT_IMPL_LONGLONG (the problem is that they generate
different output than CPython, TODO to fix that).
2017-03-06 16:30:12 +01:00
Paul Sokolovsky
121fb88988
float/float2int*: Make actually be parsable for MICROPY_LONGINT_IMPL_NONE.
...
The use of large literal numbers is a big no-no when it comes to writing
programs which work with different int representations. Also, some checks
are pretty adhoc (e.g using struct module to check for 64-bitness). This
change bases entire detection on sys.maxsize and integer operarions, and
thus more correct, even if longer.
Note that this change doesn't mean that any of these tests can pass with
anything but MPZ - even despite checking for various int representations,
the tests aren't written to be portable among them.
2017-03-06 16:23:09 +01:00
Paul Sokolovsky
325c4473a5
tests/float/complex1: Split out intbig test.
2017-03-06 15:46:01 +01:00
Paul Sokolovsky
96aa3a3102
py/modsys: Use MP_SMALL_INT_MAX for sys.maxsize in case of LONGINT_IMPL_NONE.
...
INT_MAX used previosly is indeed max value for int, whereas on LP64
platforms, long is used for mp_int_t. Using MP_SMALL_INT_MAX is the
correct way to do it anyway.
2017-03-06 12:15:25 +01:00
Damien George
914648ce0e
py/py.mk: Force nlr files to be compiled with -Os.
2017-03-06 17:13:43 +11:00
Damien George
f0dddb688d
py/nlrx86: Convert from assembler to C file with inline asm.
2017-03-06 17:13:43 +11:00
Damien George
321848470c
py/nlrx64: Convert from assembler to C file with inline asm.
2017-03-06 17:13:35 +11:00
Damien George
a85755aa22
py/nlrxtensa: Convert from assembler to C file with inline asm.
...
nlr_jump is a little bit inefficient because it now saves a register to
the stack.
2017-03-06 17:13:16 +11:00
Damien George
be3d7f91e5
py/nlr.h: Mark nlr_jump_fail as NORETURN.
2017-03-06 17:13:16 +11:00
Damien George
05fe66f68a
py: Move locals/globals dicts to the thread-specific state.
...
Each threads needs to have its own private references to its current
locals/globals dicts, otherwise functions running within different
contexts (eg imported from different files) can behave very strangely.
2017-03-06 17:01:56 +11:00
Glenn Ruben Bakke
7000e0a2a0
nrf5/modules: Moving irq priority settings in RTC object to rtc_init0 when initializing the hardware instances. Also modifying comments a bit. Adding simple example in comment above make_new function on how the object is intended to work.
2017-03-06 01:13:19 +01:00
Glenn Ruben Bakke
49b1607bed
nrf5: Updating main.c to initialize the rtc module if enabled.
2017-03-06 00:57:33 +01:00
Glenn Ruben Bakke
1ef7c732e8
nrf5/modules: Added RTC into the machine module globals dict.
2017-03-06 00:56:58 +01:00
Glenn Ruben Bakke
7144696e17
nrf5/modules: Updating rtc module. Not working yet. Updated to align with new hal_rtc interface. Added start and stop methods. Allowing callback function set from init. This should be moved to start function, not set in main.
2017-03-06 00:56:18 +01:00
Glenn Ruben Bakke
ff7541599a
nrf5/hal: Updating hal RTC implementation.
2017-03-06 00:53:21 +01:00
Glenn Ruben Bakke
852aaba58b
nrf5/hal: Adding hal_irq.h which defines a set of static inline functions to do nvic irq operations.
2017-03-06 00:50:00 +01:00
Glenn Ruben Bakke
9ddd62e73e
nrf5/modules: Updating machine uart module to use new hal uart interface name.
2017-03-05 22:37:52 +01:00
Glenn Ruben Bakke
0489153094
nrf5/hal: Renaming uart hal function to use hal_uart prefix.
2017-03-05 22:37:07 +01:00
Paul Sokolovsky
fe866d996f
unix/moduselect: Properly implement ipoll object iteration.
...
TODO: There's another issue to care about: poll set being modified during
iteration.
2017-03-05 13:51:22 +01:00
Glenn Ruben Bakke
ee5884bfe9
nrf5/modules: Updating readfrom function in machine i2c module to use the new hal function which has been implemented.
2017-03-04 21:44:23 +01:00
Glenn Ruben Bakke
2c61b7f596
nrf5/hal: Adding untested implementation of twi read. Lacking sensors to test with :)
2017-03-04 21:42:36 +01:00
Glenn Ruben Bakke
4a631a0d47
nrf5/boards: Renaming linker script for all nrf51 and nrf52 into more logical names. Updating all boards with new names.
2017-03-04 19:13:59 +01:00
Glenn Ruben Bakke
ab0d9756f1
nrf5/bluetooth: Updating header guard in bluetooth_conf.h to reflect new filename.
2017-03-04 18:05:51 +01:00
Glenn Ruben Bakke
56d106507a
nrf5/bluetooth: Updating old references to 'sdk' to use the new folder name 'bluetooth' in makefiles.
2017-03-04 17:58:31 +01:00
Glenn Ruben Bakke
9e36242259
nrf5: Renaming sdk folder to bluetooth.
2017-03-04 17:54:15 +01:00
Glenn Ruben Bakke
5e89a27ba1
nrf5: Merging sdk makefiles into bluetooth_common.mk. s1xx_iot is still left out of this refactoring.
2017-03-04 17:52:20 +01:00
Glenn Ruben Bakke
ec35861938
nrf5: Renaming nrf5_sdk_conf.h to bluetooth_conf.h
2017-03-04 17:19:29 +01:00
Glenn Ruben Bakke
309ae12346
nrf5: Starting process of renaming files in sdk folder to facilitate renaming of the folder and make it more logical. Transition will be from sdk to bluetooth.
2017-03-04 15:06:08 +01:00
Glenn Ruben Bakke
80c9c2e3c0
nrf5/boards: Adding support for SPI, I2C, ADC, and Temp in machine modules in micro:bit target. Also activating hal drivers for the peripherals.
2017-03-04 02:14:50 +01:00
Glenn Ruben Bakke
f2a7e198d2
nrf5/sdk: Updating low frequency clock calibration from 4 seconds to 250 ms for stack enable when BLUETOOTH_LFCLK_RC is enabled.
2017-03-04 01:36:06 +01:00
Glenn Ruben Bakke
ef6d583ec3
nrf5/boards: Updating nrf51822_aa_s110.ld to be more generic, leaving all RAM not used for stack, .bss and .data to the heap.
2017-03-04 01:29:05 +01:00
Glenn Ruben Bakke
1aeb74a426
nrf51: Removing stack section from startup file as it got added to the final hex file. Thanks dhylands for helping out.
2017-03-04 01:24:10 +01:00
Glenn Ruben Bakke
2af06bd3fa
nrf5/boards: Adding BLUETOOTH_LFCLK_RC to CFLAGS in microbit s110 makefile.
2017-03-03 23:21:47 +01:00
Glenn Ruben Bakke
e95ec1a285
nrf5/sdk: Adding support for initializing the bluetooth stack using RC oscillator instead of crystal. If BLUETOOTH_LFCLK_RC is set in CFLAGS, this variant of softdevice enable will be activated.
2017-03-03 23:20:38 +01:00
Paul Sokolovsky
3ab6aa3a6d
tests/basic: Split tests into working with small ints and not working.
...
Tests which don't work with small ints are suffixed with _intbig.py. Some
of these may still work with long long ints and need to be reclassified
later.
2017-03-04 00:13:27 +03:00
Paul Sokolovsky
89e570a5b4
tests/run-tests: Check for big int availability and skip related tests.
...
Big aka arbitrary-precision integers (implemented by MPZ module) are used
in tests starting with "int_big_" or ending with "_intbig".
2017-03-03 20:16:59 +03:00
Damien George
5e83a75c78
unix: Remove remaining, obsolete traces of GNU readline support.
2017-03-03 17:55:40 +11:00
Damien George
3d91c12d33
tests/basics: Add further tests for OrderedDict.
2017-03-03 11:23:54 +11:00
Damien George
9275c18270
py/map: Fix bugs with deletion of elements from OrderedDict.
...
There were 2 bugs, now fixed by this patch:
- after deleting an element the len of the dict did not decrease by 1
- after deleting an element searching through the dict could lead to
a seg fault due to there being an MP_OBJ_SENTINEL in the ordered array
2017-03-03 11:21:19 +11:00
Glenn Ruben Bakke
c300e3f196
nrf5: Initialize repl_display_debugging_info in pyexec.c for cortex-m0 targets.
2017-03-03 00:40:44 +01:00
Glenn Ruben Bakke
159202ad00
lib/utils: Expose pyb_set_repl_info function public
...
The patch enables the possibility to disable or initialize the repl
info from outside of the module. Can also be used to initialize the
repl_display_debugging_info in pyexec.c if not startup file is clearing
.bss segment.
2017-03-03 00:36:25 +01:00