From d02f089058b9623ea976fbeead9b8acbf4d44bc6 Mon Sep 17 00:00:00 2001
From: iabdalkader <i.abdalkader@gmail.com>
Date: Tue, 25 Oct 2022 22:42:56 +0200
Subject: [PATCH] rp2/boards: Add pin CSV files to board definitions.

Pin defines are:
- For Pico define board pins and the default LED pin (WL_GPIO25).
- For Pico-W define board pins, external pins and the default
  LED pin (WL_GPIO0).
- For the Nano-RP2040, define board pins, external pins and
  the default LED pin (GPIO25)
- For all other boards, the pins.csv defines the LED pin (if any)
  for backwards compatibility with code that assumes there's always
  an LED pin.
---
 .../boards/ADAFRUIT_FEATHER_RP2040/pins.csv   |  1 +
 .../boards/ADAFRUIT_ITSYBITSY_RP2040/pins.csv |  1 +
 .../ARDUINO_NANO_RP2040_CONNECT/pins.csv      | 26 ++++++++++++++++
 .../GARATRONIC_PYBSTICK26_RP2040/pins.csv     |  1 +
 ports/rp2/boards/PICO/pins.csv                | 28 +++++++++++++++++
 ports/rp2/boards/PICO_W/mpconfigboard.h       |  5 ----
 ports/rp2/boards/PICO_W/pins.csv              | 30 +++++++++++++++++++
 .../boards/PIMORONI_PICOLIPO_16MB/pins.csv    |  1 +
 .../rp2/boards/PIMORONI_PICOLIPO_4MB/pins.csv |  1 +
 ports/rp2/boards/PIMORONI_TINY2040/pins.csv   |  1 +
 ports/rp2/boards/SPARKFUN_THINGPLUS/pins.csv  |  1 +
 ports/rp2/boards/W5100S_EVB_PICO/pins.csv     |  1 +
 ports/rp2/boards/W5500_EVB_PICO/pins.csv      |  1 +
 ports/rp2/boards/WEACTSTUDIO/pins.csv         |  1 +
 14 files changed, 94 insertions(+), 5 deletions(-)
 create mode 100644 ports/rp2/boards/ADAFRUIT_FEATHER_RP2040/pins.csv
 create mode 100644 ports/rp2/boards/ADAFRUIT_ITSYBITSY_RP2040/pins.csv
 create mode 100644 ports/rp2/boards/ARDUINO_NANO_RP2040_CONNECT/pins.csv
 create mode 100644 ports/rp2/boards/GARATRONIC_PYBSTICK26_RP2040/pins.csv
 create mode 100644 ports/rp2/boards/PICO/pins.csv
 create mode 100644 ports/rp2/boards/PICO_W/pins.csv
 create mode 100644 ports/rp2/boards/PIMORONI_PICOLIPO_16MB/pins.csv
 create mode 100644 ports/rp2/boards/PIMORONI_PICOLIPO_4MB/pins.csv
 create mode 100644 ports/rp2/boards/PIMORONI_TINY2040/pins.csv
 create mode 100644 ports/rp2/boards/SPARKFUN_THINGPLUS/pins.csv
 create mode 100644 ports/rp2/boards/W5100S_EVB_PICO/pins.csv
 create mode 100644 ports/rp2/boards/W5500_EVB_PICO/pins.csv
 create mode 100644 ports/rp2/boards/WEACTSTUDIO/pins.csv

diff --git a/ports/rp2/boards/ADAFRUIT_FEATHER_RP2040/pins.csv b/ports/rp2/boards/ADAFRUIT_FEATHER_RP2040/pins.csv
new file mode 100644
index 0000000000..ee6fd99fee
--- /dev/null
+++ b/ports/rp2/boards/ADAFRUIT_FEATHER_RP2040/pins.csv
@@ -0,0 +1 @@
+LED,GPIO13
diff --git a/ports/rp2/boards/ADAFRUIT_ITSYBITSY_RP2040/pins.csv b/ports/rp2/boards/ADAFRUIT_ITSYBITSY_RP2040/pins.csv
new file mode 100644
index 0000000000..1b7e7c3c73
--- /dev/null
+++ b/ports/rp2/boards/ADAFRUIT_ITSYBITSY_RP2040/pins.csv
@@ -0,0 +1 @@
+LED,GPIO11
diff --git a/ports/rp2/boards/ARDUINO_NANO_RP2040_CONNECT/pins.csv b/ports/rp2/boards/ARDUINO_NANO_RP2040_CONNECT/pins.csv
new file mode 100644
index 0000000000..b398c8ec94
--- /dev/null
+++ b/ports/rp2/boards/ARDUINO_NANO_RP2040_CONNECT/pins.csv
@@ -0,0 +1,26 @@
+TX,GPIO0
+RX,GPIO1
+D2,GPIO25
+D3,GPIO15
+D4,GPIO16
+D5,GPIO17
+D6,GPIO18
+D7,GPIO19
+D8,GPIO20
+D9,GPIO21
+D10,GPIO5
+D11,GPIO7
+D12,GPIO4
+D13,GPIO6
+LED,GPIO6
+A0,GPIO26
+A1,GPIO27
+A2,GPIO28
+A3,GPIO29
+A4,GPIO12
+A5,GPIO13
+LEDR,EXT_GPIO0
+LEDG,EXT_GPIO1
+LEDB,EXT_GPIO2
+A6,EXT_GPIO3
+A7,EXT_GPIO4
diff --git a/ports/rp2/boards/GARATRONIC_PYBSTICK26_RP2040/pins.csv b/ports/rp2/boards/GARATRONIC_PYBSTICK26_RP2040/pins.csv
new file mode 100644
index 0000000000..6b3bedc0e1
--- /dev/null
+++ b/ports/rp2/boards/GARATRONIC_PYBSTICK26_RP2040/pins.csv
@@ -0,0 +1 @@
+LED,GPIO23
diff --git a/ports/rp2/boards/PICO/pins.csv b/ports/rp2/boards/PICO/pins.csv
new file mode 100644
index 0000000000..16e3340264
--- /dev/null
+++ b/ports/rp2/boards/PICO/pins.csv
@@ -0,0 +1,28 @@
+GP0,GPIO0
+GP1,GPIO1
+GP2,GPIO2
+GP3,GPIO3
+GP4,GPIO4
+GP5,GPIO5
+GP6,GPIO6
+GP7,GPIO7
+GP8,GPIO8
+GP9,GPIO9
+GP10,GPIO10
+GP11,GPIO11
+GP12,GPIO12
+GP13,GPIO13
+GP14,GPIO14
+GP15,GPIO15
+GP16,GPIO16
+GP17,GPIO17
+GP18,GPIO18
+GP19,GPIO19
+GP20,GPIO20
+GP21,GPIO21
+GP22,GPIO22
+GP25,GPIO25
+GP26,GPIO26
+GP27,GPIO27
+GP28,GPIO28
+LED,GPIO25
diff --git a/ports/rp2/boards/PICO_W/mpconfigboard.h b/ports/rp2/boards/PICO_W/mpconfigboard.h
index b3653aaeb0..227e7e3ff4 100644
--- a/ports/rp2/boards/PICO_W/mpconfigboard.h
+++ b/ports/rp2/boards/PICO_W/mpconfigboard.h
@@ -17,11 +17,6 @@
 // Debug level (0-4) 1=warning, 2=info, 3=debug, 4=verbose
 // #define MODUSSL_MBEDTLS_DEBUG_LEVEL 1
 
-#define MICROPY_HW_PIN_EXT_PREFIX   "WL_GPIO"
 #define MICROPY_HW_PIN_EXT_COUNT    CYW43_WL_GPIO_COUNT
 
-#ifdef CYW43_WL_GPIO_LED_PIN
-#define MICROPY_HW_PIN_EXT_LED_PIN_NUM CYW43_WL_GPIO_LED_PIN
-#endif
-
 #define MICROPY_HW_PIN_RESERVED(i) ((i) == CYW43_PIN_WL_HOST_WAKE || (i) == CYW43_PIN_WL_REG_ON)
diff --git a/ports/rp2/boards/PICO_W/pins.csv b/ports/rp2/boards/PICO_W/pins.csv
new file mode 100644
index 0000000000..8debb6326e
--- /dev/null
+++ b/ports/rp2/boards/PICO_W/pins.csv
@@ -0,0 +1,30 @@
+GP0,GPIO0
+GP1,GPIO1
+GP2,GPIO2
+GP3,GPIO3
+GP4,GPIO4
+GP5,GPIO5
+GP6,GPIO6
+GP7,GPIO7
+GP8,GPIO8
+GP9,GPIO9
+GP10,GPIO10
+GP11,GPIO11
+GP12,GPIO12
+GP13,GPIO13
+GP14,GPIO14
+GP15,GPIO15
+GP16,GPIO16
+GP17,GPIO17
+GP18,GPIO18
+GP19,GPIO19
+GP20,GPIO20
+GP21,GPIO21
+GP22,GPIO22
+GP26,GPIO26
+GP27,GPIO27
+GP28,GPIO28
+WL_GPIO0,EXT_GPIO0
+WL_GPIO1,EXT_GPIO1
+WL_GPIO2,EXT_GPIO2
+LED,EXT_GPIO0
diff --git a/ports/rp2/boards/PIMORONI_PICOLIPO_16MB/pins.csv b/ports/rp2/boards/PIMORONI_PICOLIPO_16MB/pins.csv
new file mode 100644
index 0000000000..e75354485d
--- /dev/null
+++ b/ports/rp2/boards/PIMORONI_PICOLIPO_16MB/pins.csv
@@ -0,0 +1 @@
+LED,GPIO25
diff --git a/ports/rp2/boards/PIMORONI_PICOLIPO_4MB/pins.csv b/ports/rp2/boards/PIMORONI_PICOLIPO_4MB/pins.csv
new file mode 100644
index 0000000000..e75354485d
--- /dev/null
+++ b/ports/rp2/boards/PIMORONI_PICOLIPO_4MB/pins.csv
@@ -0,0 +1 @@
+LED,GPIO25
diff --git a/ports/rp2/boards/PIMORONI_TINY2040/pins.csv b/ports/rp2/boards/PIMORONI_TINY2040/pins.csv
new file mode 100644
index 0000000000..e4add1b0be
--- /dev/null
+++ b/ports/rp2/boards/PIMORONI_TINY2040/pins.csv
@@ -0,0 +1 @@
+LED,GPIO19
diff --git a/ports/rp2/boards/SPARKFUN_THINGPLUS/pins.csv b/ports/rp2/boards/SPARKFUN_THINGPLUS/pins.csv
new file mode 100644
index 0000000000..e75354485d
--- /dev/null
+++ b/ports/rp2/boards/SPARKFUN_THINGPLUS/pins.csv
@@ -0,0 +1 @@
+LED,GPIO25
diff --git a/ports/rp2/boards/W5100S_EVB_PICO/pins.csv b/ports/rp2/boards/W5100S_EVB_PICO/pins.csv
new file mode 100644
index 0000000000..e75354485d
--- /dev/null
+++ b/ports/rp2/boards/W5100S_EVB_PICO/pins.csv
@@ -0,0 +1 @@
+LED,GPIO25
diff --git a/ports/rp2/boards/W5500_EVB_PICO/pins.csv b/ports/rp2/boards/W5500_EVB_PICO/pins.csv
new file mode 100644
index 0000000000..e75354485d
--- /dev/null
+++ b/ports/rp2/boards/W5500_EVB_PICO/pins.csv
@@ -0,0 +1 @@
+LED,GPIO25
diff --git a/ports/rp2/boards/WEACTSTUDIO/pins.csv b/ports/rp2/boards/WEACTSTUDIO/pins.csv
new file mode 100644
index 0000000000..e75354485d
--- /dev/null
+++ b/ports/rp2/boards/WEACTSTUDIO/pins.csv
@@ -0,0 +1 @@
+LED,GPIO25
-- 
GitLab