Skip to content

Commit 1750617

Browse files
authored
Merge pull request #136 from facchinm/improve_fast_pin_io
Avoid fast pins IO on RTOS based boards
2 parents 9eda3f4 + c99c856 commit 1750617

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

Adafruit_SPIDevice.h

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,11 @@ typedef BitOrder BusIOBitOrder;
5858
// typedef uint32_t BusIO_PortMask;
5959
//#define BUSIO_USE_FAST_PINIO
6060

61+
#elif defined(__MBED__) || defined(__ZEPHYR__)
62+
// Boards based on RTOS cores like mbed or Zephyr are not going to expose the
63+
// low level registers needed for fast pin manipulation
64+
#undef BUSIO_USE_FAST_PINIO
65+
6166
#elif defined(ARDUINO_ARCH_XMC)
6267
#undef BUSIO_USE_FAST_PINIO
6368

@@ -73,9 +78,8 @@ typedef uint32_t BusIO_PortMask;
7378
#define BUSIO_USE_FAST_PINIO
7479

7580
#elif (defined(__arm__) || defined(ARDUINO_FEATHER52)) && \
76-
!defined(ARDUINO_ARCH_MBED) && !defined(ARDUINO_ARCH_RP2040) && \
77-
!defined(ARDUINO_SILABS) && !defined(ARDUINO_UNOR4_MINIMA) && \
78-
!defined(ARDUINO_UNOR4_WIFI)
81+
!defined(ARDUINO_ARCH_RP2040) && !defined(ARDUINO_SILABS) && \
82+
!defined(ARDUINO_UNOR4_MINIMA) && !defined(ARDUINO_UNOR4_WIFI)
7983
typedef volatile uint32_t BusIO_PortReg;
8084
typedef uint32_t BusIO_PortMask;
8185
#if !defined(__ASR6501__) && !defined(__ASR6502__)

0 commit comments

Comments
 (0)