Skip to content

Commit d7bc2c2

Browse files
committed
Disabled DemuxKeyMatrix in all atmel-samd boards. Some boards do not have enuogh flash space
1 parent d05b509 commit d7bc2c2

File tree

4 files changed

+11
-14
lines changed

4 files changed

+11
-14
lines changed

ports/atmel-samd/mpconfigport.mk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ CIRCUITPY_ROTARYIO_SOFTENCODER = 1
1111
CIRCUITPY_OPTIMIZE_PROPERTY_FLASH_SIZE ?= 1
1212
CIRCUITPY_LTO = 1
1313

14+
CIRCUITPY_KEYPAD_DEMUXKEYMATRIX ?= 0
15+
1416
######################################################################
1517
# Put samd21-only choices here.
1618

@@ -33,7 +35,6 @@ CIRCUITPY_BUILTINS_POW3 ?= 0
3335
CIRCUITPY_BUSDEVICE ?= 0
3436
CIRCUITPY_COMPUTED_GOTO_SAVE_SPACE ?= 1
3537
CIRCUITPY_COUNTIO ?= 0
36-
CIRCUITPY_KEYPAD_DEMUXKEYMATRIX ?= 0
3738
# Not enough RAM for framebuffers
3839
CIRCUITPY_FRAMEBUFFERIO ?= 0
3940
CIRCUITPY_FREQUENCYIO ?= 0

py/circuitpy_defns.mk

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -659,7 +659,6 @@ SRC_SHARED_MODULE_ALL = \
659659
keypad/Event.c \
660660
keypad/EventQueue.c \
661661
keypad/KeyMatrix.c \
662-
keypad/DemuxKeyMatrix.c \
663662
keypad/ShiftRegisterKeys.c \
664663
keypad/Keys.c \
665664
memorymonitor/__init__.c \
@@ -740,6 +739,11 @@ SRC_SHARED_MODULE_ALL += \
740739
ssl/SSLSocket.c
741740
endif
742741

742+
ifeq ($(CIRCUITPY_KEYPAD_DEMUXKEYMATRIX),1)
743+
SRC_SHARED_MODULE_ALL += \
744+
keypad/DemuxKeyMatrix.c
745+
endif
746+
743747
# If supporting _bleio via HCI, make devices/ble_hci/common-hal/_bleio be includable,
744748
# and use C source files in devices/ble_hci/common-hal.
745749
ifeq ($(CIRCUITPY_BLEIO_HCI),1)

shared-bindings/keypad/DemuxKeyMatrix.c

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@
8181
//| ...
8282

8383
STATIC mp_obj_t keypad_demuxkeymatrix_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args) {
84-
#if CIRCUITPY_KEYPAD_DEMUXKEYMATRIX
8584
keypad_demuxkeymatrix_obj_t *self = mp_obj_malloc(keypad_demuxkeymatrix_obj_t, &keypad_demuxkeymatrix_type);
8685
enum { ARG_row_addr_pins, ARG_column_pins, ARG_interval, ARG_max_events };
8786
static const mp_arg_t allowed_args[] = {
@@ -123,13 +122,8 @@ STATIC mp_obj_t keypad_demuxkeymatrix_make_new(const mp_obj_type_t *type, size_t
123122

124123
common_hal_keypad_demuxkeymatrix_construct(self, num_row_addr_pins, row_addr_pins_array, num_column_pins, column_pins_array, interval, max_events);
125124
return MP_OBJ_FROM_PTR(self);
126-
#else
127-
mp_raise_NotImplementedError_varg(MP_ERROR_TEXT("%q"), MP_QSTR_DemuxKeyMatrix);
128-
129-
#endif
130125
}
131126

132-
#if CIRCUITPY_KEYPAD_DEMUXKEYMATRIX
133127
//| def deinit(self) -> None:
134128
//| """Stop scanning and release the pins."""
135129
//| ...
@@ -242,14 +236,10 @@ STATIC const mp_rom_map_elem_t keypad_demuxkeymatrix_locals_dict_table[] = {
242236

243237
STATIC MP_DEFINE_CONST_DICT(keypad_demuxkeymatrix_locals_dict, keypad_demuxkeymatrix_locals_dict_table);
244238

245-
#endif
246-
247239
MP_DEFINE_CONST_OBJ_TYPE(
248240
keypad_demuxkeymatrix_type,
249241
MP_QSTR_KeyMatrix,
250242
MP_TYPE_FLAG_HAS_SPECIAL_ACCESSORS,
251-
make_new, keypad_demuxkeymatrix_make_new
252-
#if CIRCUITPY_KEYPAD_DEMUXKEYMATRIX
253-
, locals_dict, &keypad_demuxkeymatrix_locals_dict
254-
#endif
243+
make_new, keypad_demuxkeymatrix_make_new,
244+
locals_dict, &keypad_demuxkeymatrix_locals_dict
255245
);

shared-bindings/keypad/__init__.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,9 @@ STATIC mp_rom_map_elem_t keypad_module_globals_table[] = {
101101
{ MP_ROM_QSTR(MP_QSTR_KeyMatrix), MP_OBJ_FROM_PTR(&keypad_keymatrix_type) },
102102
{ MP_ROM_QSTR(MP_QSTR_Keys), MP_OBJ_FROM_PTR(&keypad_keys_type) },
103103
{ MP_ROM_QSTR(MP_QSTR_ShiftRegisterKeys), MP_OBJ_FROM_PTR(&keypad_shiftregisterkeys_type) },
104+
#if CIRCUITPY_KEYPAD_DEMUXKEYMATRIX
104105
{ MP_ROM_QSTR(MP_QSTR_DemuxKeyMatrix), MP_OBJ_FROM_PTR(&keypad_demuxkeymatrix_type) },
106+
#endif
105107
};
106108

107109
STATIC MP_DEFINE_CONST_DICT(keypad_module_globals, keypad_module_globals_table);

0 commit comments

Comments
 (0)