circuitpython/ports/atmel-samd/common-hal/busio
Jeff Epler 7f744a2369 Supervisor: move most of systick to the supervisor
This code is shared by most parts, except where not all the #ifdefs
inside the tick function were present in all ports.  This mostly would
have broken gamepad tick support on non-samd ports.

The "ms32" and "ms64" variants of the tick functions are introduced
because there is no 64-bit atomic read.  Disabling interrupts avoids
a low probability bug where milliseconds could be off by ~49.5 days
once every ~49.5 days (2^32 ms).

Avoiding disabling interrupts when only the low 32 bits are needed is a minor
optimization.

Testing performed: on metro m4 express, USB still works and
time.monotonic_ns() still counts up
2019-11-18 11:01:23 -06:00
..
__init__.c Merge commit 'f869d6b2e339c04469c6c9ea3fb2fabd7bbb2d8c' into nrf2_merge 2017-10-24 22:31:16 -07:00
I2C.c Check for no pullups on I2C on nrf; give arduino nano 33 ble two I2C devices 2019-11-02 22:47:03 -04:00
I2C.h add pin claiming to devices 2018-08-31 18:38:05 -04:00
OneWire.h Merge commit 'f869d6b2e339c04469c6c9ea3fb2fabd7bbb2d8c' into nrf2_merge 2017-10-24 22:31:16 -07:00
SPI.c Disable bitbangio on Itsy M0 2019-08-27 15:21:47 -07:00
SPI.h Add support for grayscale displays that are < 8 bit depth. 2019-07-19 16:06:11 -07:00
UART.c Supervisor: move most of systick to the supervisor 2019-11-18 11:01:23 -06:00
UART.h UART fixes and enhancements; default board object fix 2018-09-12 17:19:43 -04:00