-
-
Notifications
You must be signed in to change notification settings - Fork 212
/
Copy path0075-RP2040-add-Raspberry-Pico-target.patch
124 lines (121 loc) · 3.03 KB
/
0075-RP2040-add-Raspberry-Pico-target.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
From ca867cc5cd356fd9d50e49ac8bf6bcefd171299f Mon Sep 17 00:00:00 2001
From: Martino Facchin <m.facchin@arduino.cc>
Date: Mon, 15 Mar 2021 15:28:08 +0100
Subject: [PATCH 09/16] RP2040: add Raspberry Pico target
---
.../TARGET_RASPBERRY_PI_PICO/PinNames.h | 70 +++++++++++++++++++
.../TARGET_RASPBERRY_PI_PICO/board.c | 3 +
targets/targets.json | 11 +++
3 files changed, 84 insertions(+)
create mode 100644 targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/PinNames.h
create mode 100644 targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/board.c
diff --git a/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/PinNames.h b/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/PinNames.h
new file mode 100644
index 0000000000..6a47df933a
--- /dev/null
+++ b/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/PinNames.h
@@ -0,0 +1,70 @@
+#ifndef MBED_PINNAMES_H
+#define MBED_PINNAMES_H
+
+#include "PeripheralNames.h"
+#include "boards/pico.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ p0 = 0,
+ p1 = 1,
+ p2 = 2,
+ p3 = 3,
+ p4 = 4,
+ p5 = 5,
+ p6 = 6,
+ p7 = 7,
+ p8 = 8,
+ p9 = 9,
+ p10 = 10,
+ p11 = 11,
+ p12 = 12,
+ p13 = 13,
+ p14 = 14,
+ p15 = 15,
+ p16 = 16,
+ p17 = 17,
+ p18 = 18,
+ p19 = 19,
+ p20 = 20,
+ p21 = 21,
+ p22 = 22,
+ p23 = 23,
+ p24 = 24,
+ p25 = 25,
+ p26 = 26,
+ p27 = 27,
+ p28 = 28,
+ p29 = 29,
+
+ // ADC internal channels
+ ADC_TEMP = 0xF0,
+ ADC_VREF = 0xF1,
+
+#ifndef ARDUINO_ARCH_MBED
+ A0 = 26,
+ A1 = 27,
+ A2 = 28,
+ A3 = 29,
+#endif
+
+ USBTX = p0,
+ USBRX = p1,
+
+ LED1 = p25,
+ LED2 = p25,
+ LED3 = p25,
+ LED4 = p25,
+
+ // Not connected
+ NC = (int)0xFFFFFFFF
+} PinName;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/board.c b/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/board.c
new file mode 100644
index 0000000000..1f775638f9
--- /dev/null
+++ b/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO/board.c
@@ -0,0 +1,3 @@
+#include "PinNames.h"
+
+uint32_t SystemCoreClock = 120000000;
\ No newline at end of file
diff --git a/targets/targets.json b/targets/targets.json
index dc2846579d..6d1134f92e 100644
--- a/targets/targets.json
+++ b/targets/targets.json
@@ -7927,6 +7927,17 @@
"PICO_UART_ENABLE_CRLF_SUPPORT=0"
]
},
+ "RASPBERRY_PI_PICO": {
+ "inherits": ["RP2040"],
+ "macros_add": [
+ "PICO_RP2040_USB_DEVICE_ENUMERATION_FIX=1",
+ "PICO_NO_BINARY_INFO=1",
+ "MBED_MPU_CUSTOM",
+ "PICO_TIME_DEFAULT_ALARM_POOL_DISABLED",
+ "PICO_ON_DEVICE=1",
+ "PICO_UART_ENABLE_CRLF_SUPPORT=0"
+ ]
+ },
"__build_tools_metadata__": {
"version": "1",
"public": false
--
2.30.2