@@ -7,77 +7,86 @@ INTERNAL_LIBM = 1
7
7
# Longints can be implemented as mpz, as longlong, or not
8
8
LONGINT_IMPL = MPZ
9
9
10
- # These modules are implemented in ports/<port>/common-hal:
10
+ # Enable more features
11
11
CIRCUITPY_FULL_BUILD ?= 1
12
+
13
+ # These modules are implemented in ports/<port>/common-hal:
12
14
CIRCUITPY_ALARM ?= 1
13
- CIRCUITPY_AUDIOCORE ?= 1
14
- CIRCUITPY_AUDIOMP3 ?= 0
15
15
CIRCUITPY_AUDIOBUSIO ?= 1
16
- CIRCUITPY_AUDIOBUSIO_PDMIN ?= 0
17
16
CIRCUITPY_AUDIOBUSIO_I2SOUT ?= 1
17
+ CIRCUITPY_AUDIOBUSIO_PDMIN ?= 0
18
+ CIRCUITPY_AUDIOCORE ?= 1
18
19
CIRCUITPY_AUDIOIO ?= 0
19
20
CIRCUITPY_AUDIOMIXER ?= 1
21
+ CIRCUITPY_AUDIOMP3 ?= 0
22
+ CIRCUITPY_BLEIO ?= 1
23
+ CIRCUITPY_BLEIO_HCI = 0
20
24
CIRCUITPY_CANIO ?= 1
21
- CIRCUITPY_COUNTIO ?= 1
22
25
CIRCUITPY_COPROC ?= 1
26
+ CIRCUITPY_COUNTIO ?= 1
23
27
CIRCUITPY_DUALBANK ?= 1
28
+ CIRCUITPY_ESPIDF ?= 1
24
29
CIRCUITPY_FRAMEBUFFERIO ?= 1
25
30
CIRCUITPY_FREQUENCYIO ?= 1
26
31
CIRCUITPY_HASHLIB ?= 1
27
- CIRCUITPY_IMAGECAPTURE ?= 0
28
32
CIRCUITPY_I2CTARGET ?= 1
29
- CIRCUITPY_RGBMATRIX ?= 1
30
- CIRCUITPY_ROTARYIO ?= 1
33
+ CIRCUITPY_IMAGECAPTURE = 0
31
34
CIRCUITPY_NVM ?= 1
32
35
CIRCUITPY_PS2IO ?= 1
36
+ CIRCUITPY_RGBMATRIX ?= 1
37
+ CIRCUITPY_ROTARYIO ?= 1
33
38
CIRCUITPY_TOUCHIO_USE_NATIVE ?= 1
34
- CIRCUITPY_WIFI ?= 1
35
39
CIRCUITPY_WATCHDOG ?= 1
40
+ CIRCUITPY_WIFI ?= 1
36
41
37
- CIRCUITPY_ESPIDF ?= 1
38
-
42
+ # Conditionally turn off modules/features
39
43
ifeq ($(IDF_TARGET ) ,esp32)
44
+ # Modules
40
45
CIRCUITPY_BLEIO = 0
41
- CIRCUITPY_BLEIO_HCI = 0
42
46
CIRCUITPY_COPROC = 0
43
47
CIRCUITPY_PARALLELDISPLAY = 0
44
- # Protomatter needs to support ESP32.
45
48
CIRCUITPY_RGBMATRIX = 0
49
+ # Features
46
50
CIRCUITPY_USB = 0
47
- CIRCUITPY_BUILD_EXTENSIONS ?= bin
48
- CIRCUITPY_ESP32_CAMERA ?= 1
49
51
50
52
else ifeq ($(IDF_TARGET),esp32c3)
51
- CIRCUITPY_AESIO = 0
53
+ # Modules
52
54
CIRCUITPY_ALARM = 0
53
55
CIRCUITPY_AUDIOBUSIO = 0
54
- CIRCUITPY_BLEIO = 1
55
- CIRCUITPY_BLEIO_HCI = 0
56
- CIRCUITPY_COUNTIO = 0
57
56
CIRCUITPY_COPROC = 0
58
- CIRCUITPY_DUALBANK = 0
57
+ CIRCUITPY_COUNTIO = 0
58
+ CIRCUITPY_ESP32_CAMERA = 0
59
59
CIRCUITPY_FREQUENCYIO = 0
60
60
CIRCUITPY_PARALLELDISPLAY = 0
61
- CIRCUITPY_PS2IO = 0
62
61
CIRCUITPY_ROTARYIO = 0
63
62
CIRCUITPY_TOUCHIO ?= 1
64
63
CIRCUITPY_TOUCHIO_USE_NATIVE = 0
64
+ # Features
65
65
CIRCUITPY_USB = 0
66
- CIRCUITPY_BUILD_EXTENSIONS ?= bin
66
+
67
+ else ifeq ($(IDF_TARGET),esp32s2)
68
+ # Modules
69
+ CIRCUITPY_BLEIO = 0
67
70
68
71
else ifeq ($(IDF_TARGET),esp32s3)
69
- CIRCUITPY_BLEIO = 1
70
- CIRCUITPY_BLEIO_HCI = 0
72
+ # Modules
71
73
CIRCUITPY_PARALLELDISPLAY = 0
72
- CIRCUITPY_BUILD_EXTENSIONS ?= bin,uf2
73
- CIRCUITPY_ESP32_CAMERA ?= 1
74
+ endif
74
75
75
- else ifeq ($(IDF_TARGET),esp32s2)
76
- # No BLE on S2
77
- CIRCUITPY_BLEIO = 0
78
- CIRCUITPY_BLEIO_HCI = 0
76
+ # No room for dualbank on boards with 2MB flash
77
+ ifeq ($(CIRCUITPY_ESP_FLASH_SIZE ) ,2MB)
78
+ CIRCUITPY_DUALBANK = 0
79
+ endif
80
+
81
+ # Modules dependent on other modules
82
+ CIRCUITPY_GIFIO ?= $(CIRCUITPY_ESP32_CAMERA )
83
+ CIRCUITPY_QRIO ?= $(CIRCUITPY_ESP32_CAMERA )
84
+
85
+ # Features dependent on other features
86
+ ifneq ($(CIRCUITPY_USB ) ,0)
79
87
CIRCUITPY_BUILD_EXTENSIONS ?= bin,uf2
80
- CIRCUITPY_ESP32_CAMERA ?= 1
88
+ else
89
+ CIRCUITPY_BUILD_EXTENSIONS ?= bin
81
90
endif
82
91
83
92
# From ESP32-S2/S3 Technical Reference Manual:
91
100
# only if something else is turned off, such as HID.
92
101
USB_NUM_ENDPOINT_PAIRS = 7
93
102
USB_NUM_IN_ENDPOINTS = 5
94
-
95
- CIRCUITPY_ESP32_CAMERA ?= 0
96
- CIRCUITPY_GIFIO ?= $(CIRCUITPY_ESP32_CAMERA )
97
- CIRCUITPY_QRIO ?= $(CIRCUITPY_ESP32_CAMERA )
0 commit comments