Merge pull request #867 from dhalbert/fix_pirkey_apa102
3.0 pirkey build including appropriate frozen modules
This commit is contained in:
commit
754c36bb37
|
@ -61,3 +61,9 @@
|
|||
[submodule "ports/atmel-samd/Adafruit_CircuitPython_seesaw"]
|
||||
path = frozen/Adafruit_CircuitPython_seesaw
|
||||
url = https://github.com/adafruit/Adafruit_CircuitPython_seesaw.git
|
||||
[submodule "frozen/Adafruit_CircuitPython_IRRemote"]
|
||||
path = frozen/Adafruit_CircuitPython_IRRemote
|
||||
url = https://github.com/adafruit/Adafruit_CircuitPython_IRRemote.git
|
||||
[submodule "frozen/Adafruit_CircuitPython_DotStar"]
|
||||
path = frozen/Adafruit_CircuitPython_DotStar
|
||||
url = https://github.com/adafruit/Adafruit_CircuitPython_DotStar.git
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit a669915237545638c64f89400f368a91c408cd5d
|
||||
Subproject commit d0022de9d5e9b4c3d4998a5d708e59ee147f0a21
|
|
@ -0,0 +1 @@
|
|||
Subproject commit af25424ee7dbebea3e5d77390c017018ffa52d36
|
|
@ -0,0 +1 @@
|
|||
Subproject commit c29e10b590efbdf06163897b49cd0c2bea82ad6e
|
|
@ -1 +1 @@
|
|||
Subproject commit 71f3947ff94ca070eb01c5f872b0400031be8086
|
||||
Subproject commit 498f59bf926477b3a8fb8eb157ca05eb12c3e298
|
|
@ -1,8 +1,8 @@
|
|||
#define MICROPY_HW_BOARD_NAME "Adafruit pIRKey M0"
|
||||
#define MICROPY_HW_MCU_NAME "samd21e18"
|
||||
|
||||
// #define MICROPY_HW_APA102_MOSI (&pin_PA00)
|
||||
// #define MICROPY_HW_APA102_SCK (&pin_PA01)
|
||||
#define MICROPY_HW_APA102_MOSI (&pin_PA00)
|
||||
#define MICROPY_HW_APA102_SCK (&pin_PA01)
|
||||
|
||||
// #define CIRCUITPY_BITBANG_APA102
|
||||
|
||||
|
@ -12,6 +12,58 @@
|
|||
|
||||
#define CIRCUITPY_INTERNAL_NVM_SIZE 0
|
||||
|
||||
// A number of modules are removed for pIRKey to make room for frozen libraries.
|
||||
#define PIRKEY_M0 (1)
|
||||
|
||||
#include "internal_flash.h"
|
||||
|
||||
#define BOARD_FLASH_SIZE (0x00040000 - 0x2000 - 0x010000)
|
||||
|
||||
#define IGNORE_PIN_PA02 1
|
||||
#define IGNORE_PIN_PA03 1
|
||||
#define IGNORE_PIN_PA04 1
|
||||
#define IGNORE_PIN_PA05 1
|
||||
#define IGNORE_PIN_PA06 1
|
||||
#define IGNORE_PIN_PA07 1
|
||||
#define IGNORE_PIN_PA08 1
|
||||
#define IGNORE_PIN_PA09 1
|
||||
#define IGNORE_PIN_PA10 1
|
||||
#define IGNORE_PIN_PA11 1
|
||||
#define IGNORE_PIN_PA12 1
|
||||
#define IGNORE_PIN_PA13 1
|
||||
#define IGNORE_PIN_PA14 1
|
||||
#define IGNORE_PIN_PA15 1
|
||||
#define IGNORE_PIN_PA16 1
|
||||
#define IGNORE_PIN_PA17 1
|
||||
#define IGNORE_PIN_PA18 1
|
||||
#define IGNORE_PIN_PA19 1
|
||||
#define IGNORE_PIN_PA20 1
|
||||
#define IGNORE_PIN_PA21 1
|
||||
#define IGNORE_PIN_PA22 1
|
||||
#define IGNORE_PIN_PA24 1
|
||||
#define IGNORE_PIN_PA25 1
|
||||
#define IGNORE_PIN_PA27 1
|
||||
#define IGNORE_PIN_PA30 1
|
||||
#define IGNORE_PIN_PA31 1
|
||||
#define IGNORE_PIN_PB00 1
|
||||
#define IGNORE_PIN_PB01 1
|
||||
#define IGNORE_PIN_PB02 1
|
||||
#define IGNORE_PIN_PB03 1
|
||||
#define IGNORE_PIN_PB04 1
|
||||
#define IGNORE_PIN_PB05 1
|
||||
#define IGNORE_PIN_PB06 1
|
||||
#define IGNORE_PIN_PB07 1
|
||||
#define IGNORE_PIN_PB08 1
|
||||
#define IGNORE_PIN_PB09 1
|
||||
#define IGNORE_PIN_PB10 1
|
||||
#define IGNORE_PIN_PB11 1
|
||||
#define IGNORE_PIN_PB12 1
|
||||
#define IGNORE_PIN_PB13 1
|
||||
#define IGNORE_PIN_PB14 1
|
||||
#define IGNORE_PIN_PB15 1
|
||||
#define IGNORE_PIN_PB16 1
|
||||
#define IGNORE_PIN_PB17 1
|
||||
#define IGNORE_PIN_PB22 1
|
||||
#define IGNORE_PIN_PB23 1
|
||||
#define IGNORE_PIN_PB30 1
|
||||
#define IGNORE_PIN_PB31 1
|
||||
|
|
|
@ -9,3 +9,8 @@ LONGINT_IMPL = NONE
|
|||
|
||||
CHIP_VARIANT = SAMD21E18A
|
||||
CHIP_FAMILY = samd21
|
||||
|
||||
# Include these Python libraries in firmware.
|
||||
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_DotStar
|
||||
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_HID
|
||||
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_IRRemote
|
||||
|
|
|
@ -247,6 +247,23 @@ extern const struct _mp_obj_module_t usb_hid_module;
|
|||
#define TOUCHIO_MODULE
|
||||
#endif
|
||||
|
||||
// A pIRKey has minimal I/O needs. Remove unneeded modules to make room
|
||||
// for frozen modules. math is very large and is also removed.
|
||||
#ifdef PIRKEY_M0
|
||||
#define MICROPY_PORT_BUILTIN_MODULES \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_board), (mp_obj_t)&board_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_busio), (mp_obj_t)&busio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_digitalio), (mp_obj_t)&digitalio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_microcontroller), (mp_obj_t)µcontroller_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_os), (mp_obj_t)&os_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_pulseio), (mp_obj_t)&pulseio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_random), (mp_obj_t)&random_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_storage), (mp_obj_t)&storage_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_struct), (mp_obj_t)&struct_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_supervisor), (mp_obj_t)&supervisor_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_time), (mp_obj_t)&time_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_usb_hid),(mp_obj_t)&usb_hid_module },
|
||||
#else
|
||||
#define MICROPY_PORT_BUILTIN_MODULES \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_analogio), (mp_obj_t)&analogio_module }, \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_board), (mp_obj_t)&board_module }, \
|
||||
|
@ -267,6 +284,7 @@ extern const struct _mp_obj_module_t usb_hid_module;
|
|||
{ MP_OBJ_NEW_QSTR(MP_QSTR_usb_hid),(mp_obj_t)&usb_hid_module }, \
|
||||
TOUCHIO_MODULE \
|
||||
EXTRA_BUILTIN_MODULES
|
||||
#endif
|
||||
|
||||
#define MICROPY_PORT_BUILTIN_DEBUG_MODULES \
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_uheap),(mp_obj_t)&uheap_module }, \
|
||||
|
|
|
@ -190,7 +190,10 @@ safe_mode_t port_init(void) {
|
|||
|
||||
// Configure millisecond timer initialization.
|
||||
tick_init();
|
||||
|
||||
#ifndef PIRKEY_M0
|
||||
rtc_init();
|
||||
#endif
|
||||
|
||||
init_shared_dma();
|
||||
#ifdef CIRCUITPY_CANARY_WORD
|
||||
|
@ -243,18 +246,19 @@ void reset_port(void) {
|
|||
pulsein_reset();
|
||||
pulseout_reset();
|
||||
pwmout_reset();
|
||||
|
||||
#ifndef PIRKEY_M0
|
||||
analogin_reset();
|
||||
analogout_reset();
|
||||
rtc_reset();
|
||||
#endif
|
||||
|
||||
reset_gclks();
|
||||
|
||||
analogin_reset();
|
||||
|
||||
#ifdef CIRCUITPY_GAMEPAD_TICKS
|
||||
gamepad_reset();
|
||||
#endif
|
||||
|
||||
analogout_reset();
|
||||
|
||||
reset_event_system();
|
||||
|
||||
reset_all_pins();
|
||||
|
|
Loading…
Reference in New Issue