summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrobert-hh <robert@hammelrath.com>2025-02-11 10:07:07 +0100
committerDamien George <damien@micropython.org>2025-03-03 10:59:26 +1100
commitb9b4f1b40b9f97a5b8893afe9cb139a09fb76fd9 (patch)
tree18c7a5fddb4c098bd002556819828c7c4256f773
parent4cbaab17669b54ddfe8c509eb0f7653706120211 (diff)
samd/boards: Provide default IDs for UART, I2C and SPI.
In combination with the defautl Pins the default device can now be instantiated e.g. as: uart = UART(). Similar for I2C and SPI. Signed-off-by: robert-hh <robert@hammelrath.com>
-rw-r--r--ports/samd/boards/ADAFRUIT_FEATHER_M0_EXPRESS/mpconfigboard.h4
-rw-r--r--ports/samd/boards/ADAFRUIT_FEATHER_M4_EXPRESS/mpconfigboard.h4
-rw-r--r--ports/samd/boards/ADAFRUIT_ITSYBITSY_M0_EXPRESS/mpconfigboard.h4
-rw-r--r--ports/samd/boards/ADAFRUIT_ITSYBITSY_M4_EXPRESS/mpconfigboard.h4
-rw-r--r--ports/samd/boards/ADAFRUIT_METRO_M4_EXPRESS/mpconfigboard.h4
-rw-r--r--ports/samd/boards/ADAFRUIT_QTPY_SAMD21/mpconfigboard.h4
-rw-r--r--ports/samd/boards/ADAFRUIT_TRINKET_M0/mpconfigboard.h4
-rw-r--r--ports/samd/boards/MINISAM_M4/mpconfigboard.h4
-rw-r--r--ports/samd/boards/SEEED_WIO_TERMINAL/mpconfigboard.h4
-rw-r--r--ports/samd/boards/SEEED_XIAO_SAMD21/mpconfigboard.h4
-rw-r--r--ports/samd/boards/SPARKFUN_SAMD51_THING_PLUS/mpconfigboard.h4
-rw-r--r--ports/samd/mpconfigport.h9
12 files changed, 53 insertions, 0 deletions
diff --git a/ports/samd/boards/ADAFRUIT_FEATHER_M0_EXPRESS/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_FEATHER_M0_EXPRESS/mpconfigboard.h
index 880df8d20..a2df63376 100644
--- a/ports/samd/boards/ADAFRUIT_FEATHER_M0_EXPRESS/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_FEATHER_M0_EXPRESS/mpconfigboard.h
@@ -3,5 +3,9 @@
#define MICROPY_HW_XOSC32K (1)
+#define MICROPY_HW_DEFAULT_UART_ID (2)
+#define MICROPY_HW_DEFAULT_I2C_ID (3)
+#define MICROPY_HW_DEFAULT_SPI_ID (4)
+
#define MICROPY_HW_SPIFLASH (1)
#define MICROPY_HW_SPIFLASH_ID (2)
diff --git a/ports/samd/boards/ADAFRUIT_FEATHER_M4_EXPRESS/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_FEATHER_M4_EXPRESS/mpconfigboard.h
index a9f7d518e..f68a26303 100644
--- a/ports/samd/boards/ADAFRUIT_FEATHER_M4_EXPRESS/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_FEATHER_M4_EXPRESS/mpconfigboard.h
@@ -4,4 +4,8 @@
#define MICROPY_HW_XOSC32K (1)
#define MICROPY_HW_MCU_OSC32KULP (1)
+#define MICROPY_HW_DEFAULT_UART_ID (5)
+#define MICROPY_HW_DEFAULT_I2C_ID (2)
+#define MICROPY_HW_DEFAULT_SPI_ID (1)
+
#define MICROPY_HW_QSPIFLASH GD25Q16C
diff --git a/ports/samd/boards/ADAFRUIT_ITSYBITSY_M0_EXPRESS/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_ITSYBITSY_M0_EXPRESS/mpconfigboard.h
index 16018fdc5..84b75414f 100644
--- a/ports/samd/boards/ADAFRUIT_ITSYBITSY_M0_EXPRESS/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_ITSYBITSY_M0_EXPRESS/mpconfigboard.h
@@ -3,5 +3,9 @@
#define MICROPY_HW_DFLL_USB_SYNC (1)
+#define MICROPY_HW_DEFAULT_SPI_ID (4)
+#define MICROPY_HW_DEFAULT_I2C_ID (3)
+#define MICROPY_HW_DEFAULT_UART_ID (0)
+
#define MICROPY_HW_SPIFLASH (1)
#define MICROPY_HW_SPIFLASH_ID (5)
diff --git a/ports/samd/boards/ADAFRUIT_ITSYBITSY_M4_EXPRESS/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_ITSYBITSY_M4_EXPRESS/mpconfigboard.h
index 2f246c60b..47eabbd87 100644
--- a/ports/samd/boards/ADAFRUIT_ITSYBITSY_M4_EXPRESS/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_ITSYBITSY_M4_EXPRESS/mpconfigboard.h
@@ -3,4 +3,8 @@
#define MICROPY_HW_DFLL_USB_SYNC (1)
+#define MICROPY_HW_DEFAULT_SPI_ID (1)
+#define MICROPY_HW_DEFAULT_I2C_ID (2)
+#define MICROPY_HW_DEFAULT_UART_ID (3)
+
#define MICROPY_HW_QSPIFLASH GD25Q16C
diff --git a/ports/samd/boards/ADAFRUIT_METRO_M4_EXPRESS/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_METRO_M4_EXPRESS/mpconfigboard.h
index 7893cd706..0a2a1c2de 100644
--- a/ports/samd/boards/ADAFRUIT_METRO_M4_EXPRESS/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_METRO_M4_EXPRESS/mpconfigboard.h
@@ -4,6 +4,10 @@
#define MICROPY_HW_XOSC32K (1)
#define MICROPY_HW_QSPIFLASH GD25Q16C
+#define MICROPY_HW_DEFAULT_UART_ID (3)
+#define MICROPY_HW_DEFAULT_I2C_ID (5)
+#define MICROPY_HW_DEFAULT_SPI_ID (2)
+
// defines for WLAN
#define MICROPY_HW_WIFI_SPI_ID (2)
#define MICROPY_HW_WIFI_SPI_BAUDRATE (8000000)
diff --git a/ports/samd/boards/ADAFRUIT_QTPY_SAMD21/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_QTPY_SAMD21/mpconfigboard.h
index 0acf28afb..78b03ce7f 100644
--- a/ports/samd/boards/ADAFRUIT_QTPY_SAMD21/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_QTPY_SAMD21/mpconfigboard.h
@@ -3,4 +3,8 @@
#define MICROPY_HW_DFLL_USB_SYNC (1)
+#define MICROPY_HW_DEFAULT_UART_ID (0)
+#define MICROPY_HW_DEFAULT_I2C_ID (1)
+#define MICROPY_HW_DEFAULT_SPI_ID (0)
+
#define MICROPY_HW_SPIFLASH_ID (3)
diff --git a/ports/samd/boards/ADAFRUIT_TRINKET_M0/mpconfigboard.h b/ports/samd/boards/ADAFRUIT_TRINKET_M0/mpconfigboard.h
index 5732a20e3..1edff0098 100644
--- a/ports/samd/boards/ADAFRUIT_TRINKET_M0/mpconfigboard.h
+++ b/ports/samd/boards/ADAFRUIT_TRINKET_M0/mpconfigboard.h
@@ -2,3 +2,7 @@
#define MICROPY_HW_MCU_NAME "SAMD21E18A"
#define MICROPY_HW_DFLL_USB_SYNC (1)
+
+#define MICROPY_HW_DEFAULT_UART_ID (0)
+#define MICROPY_HW_DEFAULT_I2C_ID (2)
+#define MICROPY_HW_DEFAULT_SPI_ID (0)
diff --git a/ports/samd/boards/MINISAM_M4/mpconfigboard.h b/ports/samd/boards/MINISAM_M4/mpconfigboard.h
index 87acf301e..6d908bdcb 100644
--- a/ports/samd/boards/MINISAM_M4/mpconfigboard.h
+++ b/ports/samd/boards/MINISAM_M4/mpconfigboard.h
@@ -3,4 +3,8 @@
#define MICROPY_HW_DFLL_USB_SYNC (1)
+#define MICROPY_HW_DEFAULT_UART_ID (3)
+#define MICROPY_HW_DEFAULT_I2C_ID (2)
+#define MICROPY_HW_DEFAULT_SPI_ID (1)
+
#define MICROPY_HW_QSPIFLASH GD25Q16C
diff --git a/ports/samd/boards/SEEED_WIO_TERMINAL/mpconfigboard.h b/ports/samd/boards/SEEED_WIO_TERMINAL/mpconfigboard.h
index 062f69ae4..7f6d42345 100644
--- a/ports/samd/boards/SEEED_WIO_TERMINAL/mpconfigboard.h
+++ b/ports/samd/boards/SEEED_WIO_TERMINAL/mpconfigboard.h
@@ -3,4 +3,8 @@
#define MICROPY_HW_XOSC32K (1)
+#define MICROPY_HW_DEFAULT_UART_ID (2)
+#define MICROPY_HW_DEFAULT_I2C_ID (4)
+#define MICROPY_HW_DEFAULT_SPI_ID (5)
+
#define MICROPY_HW_QSPIFLASH W25Q32JV_IQ
diff --git a/ports/samd/boards/SEEED_XIAO_SAMD21/mpconfigboard.h b/ports/samd/boards/SEEED_XIAO_SAMD21/mpconfigboard.h
index 7447c5c3a..f0213a88e 100644
--- a/ports/samd/boards/SEEED_XIAO_SAMD21/mpconfigboard.h
+++ b/ports/samd/boards/SEEED_XIAO_SAMD21/mpconfigboard.h
@@ -3,3 +3,7 @@
#define MICROPY_HW_XOSC32K (1)
#define MICROPY_HW_ADC_VREF (2)
+
+#define MICROPY_HW_DEFAULT_UART_ID (4)
+#define MICROPY_HW_DEFAULT_I2C_ID (2)
+#define MICROPY_HW_DEFAULT_SPI_ID (0)
diff --git a/ports/samd/boards/SPARKFUN_SAMD51_THING_PLUS/mpconfigboard.h b/ports/samd/boards/SPARKFUN_SAMD51_THING_PLUS/mpconfigboard.h
index 706fc3c64..fe2226a59 100644
--- a/ports/samd/boards/SPARKFUN_SAMD51_THING_PLUS/mpconfigboard.h
+++ b/ports/samd/boards/SPARKFUN_SAMD51_THING_PLUS/mpconfigboard.h
@@ -3,6 +3,10 @@
#define MICROPY_HW_XOSC32K (1)
+#define MICROPY_HW_DEFAULT_UART_ID (2)
+#define MICROPY_HW_DEFAULT_I2C_ID (3)
+#define MICROPY_HW_DEFAULT_SPI_ID (4)
+
// There seems to be an inconsistency in the SAMD51 Thing bootloader in that
// the bootloader magic address is at the end of a 192k RAM area, instead of
// 256k. Since the SAMD51x20A has 256k RAM, the loader symbol is at that address
diff --git a/ports/samd/mpconfigport.h b/ports/samd/mpconfigport.h
index 0b47500bf..514f38394 100644
--- a/ports/samd/mpconfigport.h
+++ b/ports/samd/mpconfigport.h
@@ -138,6 +138,15 @@
#ifndef MICROPY_HW_USB_PID
#define MICROPY_HW_USB_PID (0x9802)
#endif
+#ifndef MICROPY_HW_DEFAULT_UART_ID
+#define MICROPY_HW_DEFAULT_UART_ID (-1)
+#endif
+#ifndef MICROPY_HW_DEFAULT_I2C_ID
+#define MICROPY_HW_DEFAULT_I2C_ID (-1)
+#endif
+#ifndef MICROPY_HW_DEFAULT_SPI_ID
+#define MICROPY_HW_DEFAULT_SPI_ID (-1)
+#endif
// Additional entries for use with pendsv_schedule_dispatch.
#ifndef MICROPY_BOARD_PENDSV_ENTRIES