summaryrefslogtreecommitdiff
path: root/ports
diff options
context:
space:
mode:
authorJim Mussared <jim.mussared@gmail.com>2021-07-14 14:38:38 +1000
committerDamien George <damien@micropython.org>2022-09-19 19:06:01 +1000
commit662b9761b37b054f08fe2f7c00d0fce3a418d0b0 (patch)
tree3ab168faeb26685d511bf47caa21d2eabdd86c69 /ports
parentcdb880789f61ee037cc7905ad75a7a9201d12ba5 (diff)
all: Make all mp_obj_type_t defs use MP_DEFINE_CONST_OBJ_TYPE.
In preparation for upcoming rework of mp_obj_type_t layout. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
Diffstat (limited to 'ports')
-rw-r--r--ports/cc3200/misc/mpirq.c14
-rw-r--r--ports/cc3200/mods/modnetwork.c13
-rw-r--r--ports/cc3200/mods/moduhashlib.c28
-rw-r--r--ports/cc3200/mods/modusocket.c15
-rw-r--r--ports/cc3200/mods/modussl.c18
-rw-r--r--ports/cc3200/mods/modwlan.c15
-rw-r--r--ports/cc3200/mods/pybadc.c31
-rw-r--r--ports/cc3200/mods/pybflash.c13
-rw-r--r--ports/cc3200/mods/pybi2c.c15
-rw-r--r--ports/cc3200/mods/pybpin.c31
-rw-r--r--ports/cc3200/mods/pybrtc.c13
-rw-r--r--ports/cc3200/mods/pybsd.c13
-rw-r--r--ports/cc3200/mods/pybsleep.c10
-rw-r--r--ports/cc3200/mods/pybspi.c15
-rw-r--r--ports/cc3200/mods/pybtimer.c29
-rw-r--r--ports/cc3200/mods/pybuart.c21
-rw-r--r--ports/cc3200/mods/pybwdt.c13
-rw-r--r--ports/esp32/esp32_nvs.c15
-rw-r--r--ports/esp32/esp32_partition.c15
-rw-r--r--ports/esp32/esp32_rmt.c15
-rw-r--r--ports/esp32/esp32_ulp.c13
-rw-r--r--ports/esp32/machine_adc.c15
-rw-r--r--ports/esp32/machine_adcblock.c15
-rw-r--r--ports/esp32/machine_dac.c15
-rw-r--r--ports/esp32/machine_hw_spi.c17
-rw-r--r--ports/esp32/machine_i2c.c17
-rw-r--r--ports/esp32/machine_i2s.c21
-rw-r--r--ports/esp32/machine_pin.c33
-rw-r--r--ports/esp32/machine_rtc.c13
-rw-r--r--ports/esp32/machine_sdcard.c13
-rw-r--r--ports/esp32/machine_timer.c15
-rw-r--r--ports/esp32/machine_touchpad.c13
-rw-r--r--ports/esp32/machine_uart.c21
-rw-r--r--ports/esp32/machine_wdt.c13
-rw-r--r--ports/esp32/modsocket.c15
-rw-r--r--ports/esp32/network_lan.c12
-rw-r--r--ports/esp32/network_ppp.c12
-rw-r--r--ports/esp32/network_wlan.c20
-rw-r--r--ports/esp8266/machine_adc.c15
-rw-r--r--ports/esp8266/machine_hspi.c17
-rw-r--r--ports/esp8266/machine_pin.c33
-rw-r--r--ports/esp8266/machine_rtc.c13
-rw-r--r--ports/esp8266/machine_uart.c21
-rw-r--r--ports/esp8266/machine_wdt.c13
-rw-r--r--ports/esp8266/modmachine.c15
-rw-r--r--ports/esp8266/modnetwork.c12
-rw-r--r--ports/mimxrt/machine_adc.c15
-rw-r--r--ports/mimxrt/machine_i2c.c17
-rw-r--r--ports/mimxrt/machine_i2s.c21
-rw-r--r--ports/mimxrt/machine_led.c15
-rw-r--r--ports/mimxrt/machine_pin.c61
-rw-r--r--ports/mimxrt/machine_rtc.c13
-rw-r--r--ports/mimxrt/machine_sdcard.c13
-rw-r--r--ports/mimxrt/machine_spi.c17
-rw-r--r--ports/mimxrt/machine_timer.c15
-rw-r--r--ports/mimxrt/machine_uart.c21
-rw-r--r--ports/mimxrt/machine_wdt.c13
-rw-r--r--ports/mimxrt/mimxrt_flash.c13
-rw-r--r--ports/mimxrt/network_lan.c16
-rw-r--r--ports/nrf/boards/microbit/modules/iters.c14
-rw-r--r--ports/nrf/boards/microbit/modules/microbitdisplay.c12
-rw-r--r--ports/nrf/boards/microbit/modules/microbitimage.c73
-rw-r--r--ports/nrf/modules/board/led.c15
-rw-r--r--ports/nrf/modules/machine/adc.c15
-rw-r--r--ports/nrf/modules/machine/i2c.c17
-rw-r--r--ports/nrf/modules/machine/pin.c31
-rw-r--r--ports/nrf/modules/machine/pwm.c15
-rw-r--r--ports/nrf/modules/machine/rtcounter.c15
-rw-r--r--ports/nrf/modules/machine/spi.c17
-rw-r--r--ports/nrf/modules/machine/temp.c15
-rw-r--r--ports/nrf/modules/machine/timer.c15
-rw-r--r--ports/nrf/modules/machine/uart.c21
-rw-r--r--ports/nrf/modules/nrf/flashbdev.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_characteristic.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_constants.c24
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_delegate.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_descriptor.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_peripheral.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_scan_entry.c14
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_scanner.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_service.c15
-rw-r--r--ports/nrf/modules/ubluepy/ubluepy_uuid.c15
-rw-r--r--ports/nrf/modules/uos/microbitfs.c28
-rw-r--r--ports/nrf/pin_named_pins.c28
-rw-r--r--ports/pic16bit/modpybled.c15
-rw-r--r--ports/pic16bit/modpybswitch.c17
-rw-r--r--ports/renesas-ra/extint.c15
-rw-r--r--ports/renesas-ra/led.c15
-rw-r--r--ports/renesas-ra/machine_adc.c15
-rw-r--r--ports/renesas-ra/machine_i2c.c17
-rw-r--r--ports/renesas-ra/machine_pin.c45
-rw-r--r--ports/renesas-ra/machine_rtc.c13
-rw-r--r--ports/renesas-ra/machine_spi.c17
-rw-r--r--ports/renesas-ra/machine_timer.c15
-rw-r--r--ports/renesas-ra/machine_uart.c21
-rw-r--r--ports/renesas-ra/storage.c15
-rw-r--r--ports/renesas-ra/timer.c29
-rw-r--r--ports/renesas-ra/usrsw.c17
-rw-r--r--ports/rp2/machine_adc.c15
-rw-r--r--ports/rp2/machine_i2c.c17
-rw-r--r--ports/rp2/machine_i2s.c21
-rw-r--r--ports/rp2/machine_pin.c19
-rw-r--r--ports/rp2/machine_rtc.c13
-rw-r--r--ports/rp2/machine_spi.c17
-rw-r--r--ports/rp2/machine_timer.c15
-rw-r--r--ports/rp2/machine_uart.c21
-rw-r--r--ports/rp2/machine_wdt.c13
-rw-r--r--ports/rp2/rp2_flash.c13
-rw-r--r--ports/rp2/rp2_pio.c30
-rw-r--r--ports/samd/machine_led.c17
-rw-r--r--ports/samd/machine_pin.c19
-rw-r--r--ports/samd/samd_flash.c13
-rw-r--r--ports/stm32/accel.c13
-rw-r--r--ports/stm32/adc.c28
-rw-r--r--ports/stm32/dac.c15
-rw-r--r--ports/stm32/extint.c15
-rw-r--r--ports/stm32/lcd.c13
-rw-r--r--ports/stm32/led.c15
-rw-r--r--ports/stm32/machine_adc.c15
-rw-r--r--ports/stm32/machine_i2c.c17
-rw-r--r--ports/stm32/machine_i2s.c21
-rw-r--r--ports/stm32/machine_spi.c17
-rw-r--r--ports/stm32/machine_timer.c15
-rw-r--r--ports/stm32/machine_uart.c21
-rw-r--r--ports/stm32/network_lan.c15
-rw-r--r--ports/stm32/pin.c33
-rw-r--r--ports/stm32/pin_named_pins.c24
-rw-r--r--ports/stm32/pyb_can.c17
-rw-r--r--ports/stm32/pyb_i2c.c15
-rw-r--r--ports/stm32/pyb_spi.c17
-rw-r--r--ports/stm32/rtc.c13
-rw-r--r--ports/stm32/sdcard.c26
-rw-r--r--ports/stm32/servo.c15
-rw-r--r--ports/stm32/storage.c15
-rw-r--r--ports/stm32/timer.c29
-rw-r--r--ports/stm32/usb.c36
-rw-r--r--ports/stm32/usrsw.c17
-rw-r--r--ports/stm32/wdt.c13
-rw-r--r--ports/teensy/led.c15
-rw-r--r--ports/teensy/timer.c29
-rw-r--r--ports/teensy/uart.c15
-rw-r--r--ports/unix/coverage.c26
-rw-r--r--ports/unix/modffi.c69
-rw-r--r--ports/unix/modjni.c58
-rw-r--r--ports/unix/moduselect.c16
-rw-r--r--ports/unix/modusocket.c21
-rw-r--r--ports/zephyr/machine_i2c.c17
-rw-r--r--ports/zephyr/machine_pin.c19
-rw-r--r--ports/zephyr/machine_spi.c17
-rw-r--r--ports/zephyr/machine_uart.c21
-rw-r--r--ports/zephyr/modusocket.c17
-rw-r--r--ports/zephyr/modzsensor.c13
-rw-r--r--ports/zephyr/zephyr_storage.c30
153 files changed, 1573 insertions, 1332 deletions
diff --git a/ports/cc3200/misc/mpirq.c b/ports/cc3200/misc/mpirq.c
index eb93e5eef..e9cae92a3 100644
--- a/ports/cc3200/misc/mpirq.c
+++ b/ports/cc3200/misc/mpirq.c
@@ -190,11 +190,13 @@ STATIC const mp_rom_map_elem_t mp_irq_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(mp_irq_locals_dict, mp_irq_locals_dict_table);
-const mp_obj_type_t mp_irq_type = {
- { &mp_type_type },
- .name = MP_QSTR_irq,
- .call = mp_irq_call,
- .locals_dict = (mp_obj_t)&mp_irq_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ mp_irq_type,
+ MP_QSTR_irq,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ call, mp_irq_call,
+ locals_dict, (mp_obj_t)&mp_irq_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_list_t mp_irq_obj_list);
diff --git a/ports/cc3200/mods/modnetwork.c b/ports/cc3200/mods/modnetwork.c
index d6ccc7c6a..a74189300 100644
--- a/ports/cc3200/mods/modnetwork.c
+++ b/ports/cc3200/mods/modnetwork.c
@@ -171,10 +171,11 @@ STATIC const mp_rom_map_elem_t network_server_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(network_server_locals_dict, network_server_locals_dict_table);
-STATIC const mp_obj_type_t network_server_type = {
- { &mp_type_type },
- .name = MP_QSTR_Server,
- .make_new = network_server_make_new,
- .locals_dict = (mp_obj_t)&network_server_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ network_server_type,
+ MP_QSTR_Server,
+ MP_TYPE_FLAG_NONE,
+ network_server_make_new,
+ locals_dict, (mp_obj_t)&network_server_locals_dict
+ );
#endif
diff --git a/ports/cc3200/mods/moduhashlib.c b/ports/cc3200/mods/moduhashlib.c
index fc11569b7..5437cfb26 100644
--- a/ports/cc3200/mods/moduhashlib.c
+++ b/ports/cc3200/mods/moduhashlib.c
@@ -177,19 +177,21 @@ STATIC MP_DEFINE_CONST_DICT(hash_locals_dict, hash_locals_dict_table);
// .locals_dict = (mp_obj_t)&hash_locals_dict,
//};
-STATIC const mp_obj_type_t sha1_type = {
- { &mp_type_type },
- .name = MP_QSTR_sha1,
- .make_new = hash_make_new,
- .locals_dict = (mp_obj_t)&hash_locals_dict,
-};
-
-STATIC const mp_obj_type_t sha256_type = {
- { &mp_type_type },
- .name = MP_QSTR_sha256,
- .make_new = hash_make_new,
- .locals_dict = (mp_obj_t)&hash_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ sha1_type,
+ MP_QSTR_sha1,
+ MP_TYPE_FLAG_NONE,
+ hash_make_new,
+ locals_dict, (mp_obj_t)&hash_locals_dict
+ );
+
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ sha256_type,
+ MP_QSTR_sha256,
+ MP_TYPE_FLAG_NONE,
+ hash_make_new,
+ locals_dict, (mp_obj_t)&hash_locals_dict
+ );
STATIC const mp_rom_map_elem_t mp_module_hashlib_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_uhashlib) },
diff --git a/ports/cc3200/mods/modusocket.c b/ports/cc3200/mods/modusocket.c
index 23982eb96..11199de14 100644
--- a/ports/cc3200/mods/modusocket.c
+++ b/ports/cc3200/mods/modusocket.c
@@ -759,13 +759,14 @@ const mp_stream_p_t socket_stream_p = {
.is_text = false,
};
-STATIC const mp_obj_type_t socket_type = {
- { &mp_type_type },
- .name = MP_QSTR_socket,
- .make_new = socket_make_new,
- .protocol = &socket_stream_p,
- .locals_dict = (mp_obj_t)&socket_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ socket_type,
+ MP_QSTR_socket,
+ MP_TYPE_FLAG_NONE,
+ socket_make_new,
+ protocol, &socket_stream_p,
+ locals_dict, (mp_obj_t)&socket_locals_dict
+ );
/******************************************************************************/
// usocket module
diff --git a/ports/cc3200/mods/modussl.c b/ports/cc3200/mods/modussl.c
index cd2c62dcb..d0909e7c2 100644
--- a/ports/cc3200/mods/modussl.c
+++ b/ports/cc3200/mods/modussl.c
@@ -60,14 +60,16 @@ STATIC const mp_obj_type_t ssl_socket_type;
// ssl sockets inherit from normal socket, so we take its
// locals and stream methods
-STATIC const mp_obj_type_t ssl_socket_type = {
- { &mp_type_type },
- .name = MP_QSTR_ussl,
- .getiter = NULL,
- .iternext = NULL,
- .protocol = &socket_stream_p,
- .locals_dict = (mp_obj_t)&socket_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ ssl_socket_type,
+ MP_QSTR_ussl,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, NULL,
+ iternext, NULL,
+ protocol, &socket_stream_p,
+ locals_dict, (mp_obj_t)&socket_locals_dict
+ );
STATIC mp_obj_t mod_ssl_wrap_socket(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
STATIC const mp_arg_t allowed_args[] = {
diff --git a/ports/cc3200/mods/modwlan.c b/ports/cc3200/mods/modwlan.c
index 3b686932e..24f5d196d 100644
--- a/ports/cc3200/mods/modwlan.c
+++ b/ports/cc3200/mods/modwlan.c
@@ -1285,13 +1285,16 @@ STATIC const mp_rom_map_elem_t wlan_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(wlan_locals_dict, wlan_locals_dict_table);
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ mod_network_nic_type_wlan_base,
+ MP_QSTR_WLAN,
+ MP_TYPE_FLAG_NONE,
+ wlan_make_new,
+ locals_dict, (mp_obj_t)&wlan_locals_dict
+ );
+
const mod_network_nic_type_t mod_network_nic_type_wlan = {
- .base = {
- { &mp_type_type },
- .name = MP_QSTR_WLAN,
- .make_new = wlan_make_new,
- .locals_dict = (mp_obj_t)&wlan_locals_dict,
- },
+ .base = mod_network_nic_type_wlan_base,
};
STATIC const mp_irq_methods_t wlan_irq_methods = {
diff --git a/ports/cc3200/mods/pybadc.c b/ports/cc3200/mods/pybadc.c
index fbdd393cd..a114eeda1 100644
--- a/ports/cc3200/mods/pybadc.c
+++ b/ports/cc3200/mods/pybadc.c
@@ -233,13 +233,14 @@ STATIC const mp_rom_map_elem_t adc_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(adc_locals_dict, adc_locals_dict_table);
-const mp_obj_type_t pyb_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = adc_print,
- .make_new = adc_make_new,
- .locals_dict = (mp_obj_t)&adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ adc_make_new,
+ print, adc_print,
+ locals_dict, (mp_obj_t)&adc_locals_dict
+ );
STATIC void adc_channel_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) {
pyb_adc_channel_obj_t *self = self_in;
@@ -300,10 +301,12 @@ STATIC const mp_rom_map_elem_t adc_channel_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(adc_channel_locals_dict, adc_channel_locals_dict_table);
-STATIC const mp_obj_type_t pyb_adc_channel_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADCChannel,
- .print = adc_channel_print,
- .call = adc_channel_call,
- .locals_dict = (mp_obj_t)&adc_channel_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_adc_channel_type,
+ MP_QSTR_ADCChannel,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, adc_channel_print,
+ call, adc_channel_call,
+ locals_dict, (mp_obj_t)&adc_channel_locals_dict
+ );
diff --git a/ports/cc3200/mods/pybflash.c b/ports/cc3200/mods/pybflash.c
index 9d534608b..4cfafb7ab 100644
--- a/ports/cc3200/mods/pybflash.c
+++ b/ports/cc3200/mods/pybflash.c
@@ -84,12 +84,13 @@ STATIC const mp_rom_map_elem_t pyb_flash_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_flash_locals_dict, pyb_flash_locals_dict_table);
-const mp_obj_type_t pyb_flash_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .make_new = pyb_flash_make_new,
- .locals_dict = (mp_obj_t)&pyb_flash_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_flash_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ pyb_flash_make_new,
+ locals_dict, (mp_obj_t)&pyb_flash_locals_dict
+ );
void pyb_flash_init_vfs(fs_user_mount_t *vfs) {
vfs->base.type = &mp_fat_vfs_type;
diff --git a/ports/cc3200/mods/pybi2c.c b/ports/cc3200/mods/pybi2c.c
index 40b3e2a20..91a0b9b9f 100644
--- a/ports/cc3200/mods/pybi2c.c
+++ b/ports/cc3200/mods/pybi2c.c
@@ -521,10 +521,11 @@ STATIC const mp_rom_map_elem_t pyb_i2c_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_i2c_locals_dict, pyb_i2c_locals_dict_table);
-const mp_obj_type_t pyb_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = pyb_i2c_print,
- .make_new = pyb_i2c_make_new,
- .locals_dict = (mp_obj_t)&pyb_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ pyb_i2c_make_new,
+ print, pyb_i2c_print,
+ locals_dict, (mp_obj_t)&pyb_i2c_locals_dict
+ );
diff --git a/ports/cc3200/mods/pybpin.c b/ports/cc3200/mods/pybpin.c
index fd2f032e8..948cda70d 100644
--- a/ports/cc3200/mods/pybpin.c
+++ b/ports/cc3200/mods/pybpin.c
@@ -931,14 +931,15 @@ STATIC const mp_rom_map_elem_t pin_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pin_locals_dict, pin_locals_dict_table);
-const mp_obj_type_t pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = pin_print,
- .make_new = pin_make_new,
- .call = pin_call,
- .locals_dict = (mp_obj_t)&pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ pin_make_new,
+ print, pin_print,
+ call, pin_call,
+ locals_dict, (mp_obj_t)&pin_locals_dict
+ );
STATIC const mp_irq_methods_t pin_irq_methods = {
.init = pin_irq,
@@ -952,10 +953,12 @@ STATIC void pin_named_pins_obj_print(const mp_print_t *print, mp_obj_t self_in,
mp_printf(print, "<Pin.%q>", self->name);
}
-const mp_obj_type_t pin_board_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_board,
- .print = pin_named_pins_obj_print,
- .locals_dict = (mp_obj_t)&pin_board_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_board_pins_obj_type,
+ MP_QSTR_board,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pin_named_pins_obj_print,
+ locals_dict, (mp_obj_t)&pin_board_pins_locals_dict
+ );
diff --git a/ports/cc3200/mods/pybrtc.c b/ports/cc3200/mods/pybrtc.c
index 6c1918831..2761cb3c6 100644
--- a/ports/cc3200/mods/pybrtc.c
+++ b/ports/cc3200/mods/pybrtc.c
@@ -469,12 +469,13 @@ STATIC const mp_rom_map_elem_t pyb_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_rtc_locals_dict, pyb_rtc_locals_dict_table);
-const mp_obj_type_t pyb_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = pyb_rtc_make_new,
- .locals_dict = (mp_obj_t)&pyb_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ pyb_rtc_make_new,
+ locals_dict, (mp_obj_t)&pyb_rtc_locals_dict
+ );
STATIC const mp_irq_methods_t pyb_rtc_irq_methods = {
.init = pyb_rtc_irq,
diff --git a/ports/cc3200/mods/pybsd.c b/ports/cc3200/mods/pybsd.c
index 817127634..d8834e36f 100644
--- a/ports/cc3200/mods/pybsd.c
+++ b/ports/cc3200/mods/pybsd.c
@@ -212,9 +212,10 @@ STATIC const mp_rom_map_elem_t pyb_sd_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_sd_locals_dict, pyb_sd_locals_dict_table);
-const mp_obj_type_t pyb_sd_type = {
- { &mp_type_type },
- .name = MP_QSTR_SD,
- .make_new = pyb_sd_make_new,
- .locals_dict = (mp_obj_t)&pyb_sd_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_sd_type,
+ MP_QSTR_SD,
+ MP_TYPE_FLAG_NONE,
+ pyb_sd_make_new,
+ locals_dict, (mp_obj_t)&pyb_sd_locals_dict
+ );
diff --git a/ports/cc3200/mods/pybsleep.c b/ports/cc3200/mods/pybsleep.c
index 76fe0849a..423099991 100644
--- a/ports/cc3200/mods/pybsleep.c
+++ b/ports/cc3200/mods/pybsleep.c
@@ -125,10 +125,12 @@ STATIC pybsleep_data_t pybsleep_data = {NULL, NULL, NULL};
volatile arm_cm4_core_regs_t vault_arm_registers;
STATIC pybsleep_reset_cause_t pybsleep_reset_cause = PYB_SLP_PWRON_RESET;
STATIC pybsleep_wake_reason_t pybsleep_wake_reason = PYB_SLP_WAKED_PWRON;
-STATIC const mp_obj_type_t pyb_sleep_type = {
- { &mp_type_type },
- .name = MP_QSTR_sleep,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_sleep_type,
+ MP_QSTR_sleep,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW
+ );
/******************************************************************************
DECLARE PRIVATE FUNCTIONS
diff --git a/ports/cc3200/mods/pybspi.c b/ports/cc3200/mods/pybspi.c
index ed03b0906..50d897633 100644
--- a/ports/cc3200/mods/pybspi.c
+++ b/ports/cc3200/mods/pybspi.c
@@ -377,10 +377,11 @@ STATIC const mp_rom_map_elem_t pyb_spi_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_spi_locals_dict, pyb_spi_locals_dict_table);
-const mp_obj_type_t pyb_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = pyb_spi_print,
- .make_new = pyb_spi_make_new,
- .locals_dict = (mp_obj_t)&pyb_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ pyb_spi_make_new,
+ print, pyb_spi_print,
+ locals_dict, (mp_obj_t)&pyb_spi_locals_dict
+ );
diff --git a/ports/cc3200/mods/pybtimer.c b/ports/cc3200/mods/pybtimer.c
index b2725ae16..a8bc7821e 100644
--- a/ports/cc3200/mods/pybtimer.c
+++ b/ports/cc3200/mods/pybtimer.c
@@ -459,13 +459,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_locals_dict, pyb_timer_locals_dict_table);
-const mp_obj_type_t pyb_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = pyb_timer_print,
- .make_new = pyb_timer_make_new,
- .locals_dict = (mp_obj_t)&pyb_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ pyb_timer_make_new,
+ print, pyb_timer_print,
+ locals_dict, (mp_obj_t)&pyb_timer_locals_dict
+ );
STATIC const mp_irq_methods_t pyb_timer_channel_irq_methods = {
.init = pyb_timer_channel_irq,
@@ -721,11 +722,13 @@ STATIC const mp_rom_map_elem_t pyb_timer_channel_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_channel_locals_dict, pyb_timer_channel_locals_dict_table);
-STATIC const mp_obj_type_t pyb_timer_channel_type = {
- { &mp_type_type },
- .name = MP_QSTR_TimerChannel,
- .print = pyb_timer_channel_print,
- .locals_dict = (mp_obj_t)&pyb_timer_channel_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_channel_type,
+ MP_QSTR_TimerChannel,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pyb_timer_channel_print,
+ locals_dict, (mp_obj_t)&pyb_timer_channel_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_list_t pyb_timer_channel_obj_list);
diff --git a/ports/cc3200/mods/pybuart.c b/ports/cc3200/mods/pybuart.c
index a81954abb..059101f4f 100644
--- a/ports/cc3200/mods/pybuart.c
+++ b/ports/cc3200/mods/pybuart.c
@@ -685,15 +685,16 @@ STATIC const mp_irq_methods_t uart_irq_methods = {
.flags = uart_irq_flags
};
-const mp_obj_type_t pyb_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = pyb_uart_print,
- .make_new = pyb_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_t)&pyb_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ pyb_uart_make_new,
+ print, pyb_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_t)&pyb_uart_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _pyb_uart_obj_t *pyb_uart_objs[2]);
diff --git a/ports/cc3200/mods/pybwdt.c b/ports/cc3200/mods/pybwdt.c
index 8db096d6b..cde1abe59 100644
--- a/ports/cc3200/mods/pybwdt.c
+++ b/ports/cc3200/mods/pybwdt.c
@@ -150,10 +150,11 @@ STATIC const mp_rom_map_elem_t pybwdt_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pybwdt_locals_dict, pybwdt_locals_dict_table);
-const mp_obj_type_t pyb_wdt_type = {
- { &mp_type_type },
- .name = MP_QSTR_WDT,
- .make_new = pyb_wdt_make_new,
- .locals_dict = (mp_obj_t)&pybwdt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_wdt_type,
+ MP_QSTR_WDT,
+ MP_TYPE_FLAG_NONE,
+ pyb_wdt_make_new,
+ locals_dict, (mp_obj_t)&pybwdt_locals_dict
+ );
diff --git a/ports/esp32/esp32_nvs.c b/ports/esp32/esp32_nvs.c
index 42d65be4a..1f96ad129 100644
--- a/ports/esp32/esp32_nvs.c
+++ b/ports/esp32/esp32_nvs.c
@@ -141,10 +141,11 @@ STATIC const mp_rom_map_elem_t esp32_nvs_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(esp32_nvs_locals_dict, esp32_nvs_locals_dict_table);
-const mp_obj_type_t esp32_nvs_type = {
- { &mp_type_type },
- .name = MP_QSTR_NVS,
- .print = esp32_nvs_print,
- .make_new = esp32_nvs_make_new,
- .locals_dict = (mp_obj_dict_t *)&esp32_nvs_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ esp32_nvs_type,
+ MP_QSTR_NVS,
+ MP_TYPE_FLAG_NONE,
+ esp32_nvs_make_new,
+ print, esp32_nvs_print,
+ locals_dict, (mp_obj_dict_t *)&esp32_nvs_locals_dict
+ );
diff --git a/ports/esp32/esp32_partition.c b/ports/esp32/esp32_partition.c
index 47e769486..2e42e7a81 100644
--- a/ports/esp32/esp32_partition.c
+++ b/ports/esp32/esp32_partition.c
@@ -284,10 +284,11 @@ STATIC const mp_rom_map_elem_t esp32_partition_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(esp32_partition_locals_dict, esp32_partition_locals_dict_table);
-const mp_obj_type_t esp32_partition_type = {
- { &mp_type_type },
- .name = MP_QSTR_Partition,
- .print = esp32_partition_print,
- .make_new = esp32_partition_make_new,
- .locals_dict = (mp_obj_dict_t *)&esp32_partition_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ esp32_partition_type,
+ MP_QSTR_Partition,
+ MP_TYPE_FLAG_NONE,
+ esp32_partition_make_new,
+ print, esp32_partition_print,
+ locals_dict, (mp_obj_dict_t *)&esp32_partition_locals_dict
+ );
diff --git a/ports/esp32/esp32_rmt.c b/ports/esp32/esp32_rmt.c
index ac897e333..36f33df3f 100644
--- a/ports/esp32/esp32_rmt.c
+++ b/ports/esp32/esp32_rmt.c
@@ -372,10 +372,11 @@ STATIC const mp_rom_map_elem_t esp32_rmt_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(esp32_rmt_locals_dict, esp32_rmt_locals_dict_table);
-const mp_obj_type_t esp32_rmt_type = {
- { &mp_type_type },
- .name = MP_QSTR_RMT,
- .print = esp32_rmt_print,
- .make_new = esp32_rmt_make_new,
- .locals_dict = (mp_obj_dict_t *)&esp32_rmt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ esp32_rmt_type,
+ MP_QSTR_RMT,
+ MP_TYPE_FLAG_NONE,
+ esp32_rmt_make_new,
+ print, esp32_rmt_print,
+ locals_dict, (mp_obj_dict_t *)&esp32_rmt_locals_dict
+ );
diff --git a/ports/esp32/esp32_ulp.c b/ports/esp32/esp32_ulp.c
index 8e4ce9c5a..5eb0e5591 100644
--- a/ports/esp32/esp32_ulp.c
+++ b/ports/esp32/esp32_ulp.c
@@ -91,11 +91,12 @@ STATIC const mp_rom_map_elem_t esp32_ulp_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(esp32_ulp_locals_dict, esp32_ulp_locals_dict_table);
-const mp_obj_type_t esp32_ulp_type = {
- { &mp_type_type },
- .name = MP_QSTR_ULP,
- .make_new = esp32_ulp_make_new,
- .locals_dict = (mp_obj_t)&esp32_ulp_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ esp32_ulp_type,
+ MP_QSTR_ULP,
+ MP_TYPE_FLAG_NONE,
+ esp32_ulp_make_new,
+ locals_dict, (mp_obj_t)&esp32_ulp_locals_dict
+ );
#endif // CONFIG_IDF_TARGET_ESP32
diff --git a/ports/esp32/machine_adc.c b/ports/esp32/machine_adc.c
index cb45aab33..5cc2d8038 100644
--- a/ports/esp32/machine_adc.c
+++ b/ports/esp32/machine_adc.c
@@ -256,10 +256,11 @@ STATIC const mp_rom_map_elem_t madc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(madc_locals_dict, madc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = madc_print,
- .make_new = madc_make_new,
- .locals_dict = (mp_obj_t)&madc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ madc_make_new,
+ print, madc_print,
+ locals_dict, (mp_obj_t)&madc_locals_dict
+ );
diff --git a/ports/esp32/machine_adcblock.c b/ports/esp32/machine_adcblock.c
index 06c215f8a..770839e93 100644
--- a/ports/esp32/machine_adcblock.c
+++ b/ports/esp32/machine_adcblock.c
@@ -194,10 +194,11 @@ STATIC const mp_rom_map_elem_t madcblock_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(madcblock_locals_dict, madcblock_locals_dict_table);
-const mp_obj_type_t machine_adcblock_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADCBlock,
- .print = madcblock_print,
- .make_new = madcblock_make_new,
- .locals_dict = (mp_obj_t)&madcblock_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adcblock_type,
+ MP_QSTR_ADCBlock,
+ MP_TYPE_FLAG_NONE,
+ madcblock_make_new,
+ print, madcblock_print,
+ locals_dict, (mp_obj_dict_t *)&madcblock_locals_dict
+ );
diff --git a/ports/esp32/machine_dac.c b/ports/esp32/machine_dac.c
index 35826d4a9..c9b9c14e0 100644
--- a/ports/esp32/machine_dac.c
+++ b/ports/esp32/machine_dac.c
@@ -104,12 +104,13 @@ STATIC const mp_rom_map_elem_t mdac_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(mdac_locals_dict, mdac_locals_dict_table);
-const mp_obj_type_t machine_dac_type = {
- { &mp_type_type },
- .name = MP_QSTR_DAC,
- .print = mdac_print,
- .make_new = mdac_make_new,
- .locals_dict = (mp_obj_t)&mdac_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_dac_type,
+ MP_QSTR_DAC,
+ MP_TYPE_FLAG_NONE,
+ mdac_make_new,
+ print, mdac_print,
+ locals_dict, (mp_obj_t)&mdac_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_DAC
diff --git a/ports/esp32/machine_hw_spi.c b/ports/esp32/machine_hw_spi.c
index 3e720adb1..71583ef60 100644
--- a/ports/esp32/machine_hw_spi.c
+++ b/ports/esp32/machine_hw_spi.c
@@ -545,11 +545,12 @@ STATIC const mp_machine_spi_p_t machine_hw_spi_p = {
.transfer = machine_hw_spi_transfer,
};
-const mp_obj_type_t machine_hw_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_hw_spi_print,
- .make_new = machine_hw_spi_make_new,
- .protocol = &machine_hw_spi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hw_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_hw_spi_make_new,
+ print, machine_hw_spi_print,
+ protocol, &machine_hw_spi_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_spi_locals_dict
+ );
diff --git a/ports/esp32/machine_i2c.c b/ports/esp32/machine_i2c.c
index e25cad0b6..9e5be606d 100644
--- a/ports/esp32/machine_i2c.c
+++ b/ports/esp32/machine_i2c.c
@@ -192,11 +192,12 @@ STATIC const mp_machine_i2c_p_t machine_hw_i2c_p = {
.transfer = machine_hw_i2c_transfer,
};
-const mp_obj_type_t machine_hw_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_hw_i2c_print,
- .make_new = machine_hw_i2c_make_new,
- .protocol = &machine_hw_i2c_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hw_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_hw_i2c_make_new,
+ print, machine_hw_i2c_print,
+ protocol, &machine_hw_i2c_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_i2c_locals_dict
+ );
diff --git a/ports/esp32/machine_i2s.c b/ports/esp32/machine_i2s.c
index 933e68684..d30fb5d83 100644
--- a/ports/esp32/machine_i2s.c
+++ b/ports/esp32/machine_i2s.c
@@ -829,16 +829,17 @@ STATIC const mp_stream_p_t i2s_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_i2s_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2S,
- .print = machine_i2s_print,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &i2s_stream_p,
- .make_new = machine_i2s_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_i2s_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_i2s_type,
+ MP_QSTR_I2S,
+ MP_TYPE_FLAG_NONE,
+ machine_i2s_make_new,
+ print, machine_i2s_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &i2s_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_i2s_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _machine_i2s_obj_t *machine_i2s_obj[I2S_NUM_MAX]);
diff --git a/ports/esp32/machine_pin.c b/ports/esp32/machine_pin.c
index b57562633..1a1a3a0f8 100644
--- a/ports/esp32/machine_pin.c
+++ b/ports/esp32/machine_pin.c
@@ -529,15 +529,16 @@ STATIC const mp_pin_p_t pin_pin_p = {
.ioctl = pin_ioctl,
};
-const mp_obj_type_t machine_pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = machine_pin_print,
- .make_new = mp_pin_make_new,
- .call = machine_pin_call,
- .protocol = &pin_pin_p,
- .locals_dict = (mp_obj_t)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, machine_pin_print,
+ call, machine_pin_call,
+ protocol, &pin_pin_p,
+ locals_dict, (mp_obj_t)&machine_pin_locals_dict
+ );
/******************************************************************************/
// Pin IRQ object
@@ -723,11 +724,13 @@ STATIC const mp_rom_map_elem_t machine_pin_irq_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_pin_irq_locals_dict, machine_pin_irq_locals_dict_table);
-STATIC const mp_obj_type_t machine_pin_irq_type = {
- { &mp_type_type },
- .name = MP_QSTR_IRQ,
- .call = machine_pin_irq_call,
- .locals_dict = (mp_obj_dict_t *)&machine_pin_irq_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_irq_type,
+ MP_QSTR_IRQ,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ call, machine_pin_irq_call,
+ locals_dict, (mp_obj_dict_t *)&machine_pin_irq_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_t machine_pin_irq_handler[40]);
diff --git a/ports/esp32/machine_rtc.c b/ports/esp32/machine_rtc.c
index 72d7b5c82..6634bf5b0 100644
--- a/ports/esp32/machine_rtc.c
+++ b/ports/esp32/machine_rtc.c
@@ -173,9 +173,10 @@ STATIC const mp_rom_map_elem_t machine_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_rtc_locals_dict, machine_rtc_locals_dict_table);
-const mp_obj_type_t machine_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = machine_rtc_make_new,
- .locals_dict = (mp_obj_t)&machine_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ machine_rtc_make_new,
+ locals_dict, (mp_obj_t)&machine_rtc_locals_dict
+ );
diff --git a/ports/esp32/machine_sdcard.c b/ports/esp32/machine_sdcard.c
index 3f94356ad..2d5663d47 100644
--- a/ports/esp32/machine_sdcard.c
+++ b/ports/esp32/machine_sdcard.c
@@ -399,11 +399,12 @@ STATIC const mp_rom_map_elem_t machine_sdcard_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(machine_sdcard_locals_dict, machine_sdcard_locals_dict_table);
-const mp_obj_type_t machine_sdcard_type = {
- { &mp_type_type },
- .name = MP_QSTR_SDCard,
- .make_new = machine_sdcard_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_sdcard_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_sdcard_type,
+ MP_QSTR_SDCard,
+ MP_TYPE_FLAG_NONE,
+ machine_sdcard_make_new,
+ locals_dict, (mp_obj_dict_t *)&machine_sdcard_locals_dict
+ );
#endif // MICROPY_HW_ENABLE_SDCARD
diff --git a/ports/esp32/machine_timer.c b/ports/esp32/machine_timer.c
index 66969b3a9..3b1295095 100644
--- a/ports/esp32/machine_timer.c
+++ b/ports/esp32/machine_timer.c
@@ -277,12 +277,13 @@ STATIC const mp_rom_map_elem_t machine_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_timer_locals_dict, machine_timer_locals_dict_table);
-const mp_obj_type_t machine_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = machine_timer_print,
- .make_new = machine_timer_make_new,
- .locals_dict = (mp_obj_t)&machine_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ machine_timer_make_new,
+ print, machine_timer_print,
+ locals_dict, (mp_obj_t)&machine_timer_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _machine_timer_obj_t *machine_timer_obj_head);
diff --git a/ports/esp32/machine_touchpad.c b/ports/esp32/machine_touchpad.c
index 168ac16d0..c5e3483b7 100644
--- a/ports/esp32/machine_touchpad.c
+++ b/ports/esp32/machine_touchpad.c
@@ -134,11 +134,12 @@ STATIC const mp_rom_map_elem_t mtp_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(mtp_locals_dict, mtp_locals_dict_table);
-const mp_obj_type_t machine_touchpad_type = {
- { &mp_type_type },
- .name = MP_QSTR_TouchPad,
- .make_new = mtp_make_new,
- .locals_dict = (mp_obj_t)&mtp_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_touchpad_type,
+ MP_QSTR_TouchPad,
+ MP_TYPE_FLAG_NONE,
+ mtp_make_new,
+ locals_dict, (mp_obj_t)&mtp_locals_dict
+ );
#endif // CONFIG_IDF_TARGET_ESP32
diff --git a/ports/esp32/machine_uart.c b/ports/esp32/machine_uart.c
index 724459128..9df16ae41 100644
--- a/ports/esp32/machine_uart.c
+++ b/ports/esp32/machine_uart.c
@@ -530,13 +530,14 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = machine_uart_print,
- .make_new = machine_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&machine_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ machine_uart_make_new,
+ print, machine_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_uart_locals_dict
+ );
diff --git a/ports/esp32/machine_wdt.c b/ports/esp32/machine_wdt.c
index f0ec6928e..c2898c7fe 100644
--- a/ports/esp32/machine_wdt.c
+++ b/ports/esp32/machine_wdt.c
@@ -83,9 +83,10 @@ STATIC const mp_rom_map_elem_t machine_wdt_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_wdt_locals_dict, machine_wdt_locals_dict_table);
-const mp_obj_type_t machine_wdt_type = {
- { &mp_type_type },
- .name = MP_QSTR_WDT,
- .make_new = machine_wdt_make_new,
- .locals_dict = (mp_obj_t)&machine_wdt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_wdt_type,
+ MP_QSTR_WDT,
+ MP_TYPE_FLAG_NONE,
+ machine_wdt_make_new,
+ locals_dict, (mp_obj_t)&machine_wdt_locals_dict
+ );
diff --git a/ports/esp32/modsocket.c b/ports/esp32/modsocket.c
index a28155824..a2dcb3946 100644
--- a/ports/esp32/modsocket.c
+++ b/ports/esp32/modsocket.c
@@ -785,13 +785,14 @@ STATIC const mp_stream_p_t socket_stream_p = {
.ioctl = socket_stream_ioctl
};
-STATIC const mp_obj_type_t socket_type = {
- { &mp_type_type },
- .name = MP_QSTR_socket,
- .make_new = socket_make_new,
- .protocol = &socket_stream_p,
- .locals_dict = (mp_obj_t)&socket_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ socket_type,
+ MP_QSTR_socket,
+ MP_TYPE_FLAG_NONE,
+ socket_make_new,
+ protocol, &socket_stream_p,
+ locals_dict, (mp_obj_t)&socket_locals_dict
+ );
STATIC mp_obj_t esp_socket_getaddrinfo(size_t n_args, const mp_obj_t *args) {
// TODO support additional args beyond the first two
diff --git a/ports/esp32/network_lan.c b/ports/esp32/network_lan.c
index f302d70fe..fc50e13c4 100644
--- a/ports/esp32/network_lan.c
+++ b/ports/esp32/network_lan.c
@@ -302,10 +302,12 @@ STATIC const mp_rom_map_elem_t lan_if_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(lan_if_locals_dict, lan_if_locals_dict_table);
-const mp_obj_type_t lan_if_type = {
- { &mp_type_type },
- .name = MP_QSTR_LAN,
- .locals_dict = (mp_obj_dict_t *)&lan_if_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ lan_if_type,
+ MP_QSTR_LAN,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t *)&lan_if_locals_dict
+ );
#endif
diff --git a/ports/esp32/network_ppp.c b/ports/esp32/network_ppp.c
index d74283c19..d6368d9f2 100644
--- a/ports/esp32/network_ppp.c
+++ b/ports/esp32/network_ppp.c
@@ -278,8 +278,10 @@ STATIC const mp_rom_map_elem_t ppp_if_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(ppp_if_locals_dict, ppp_if_locals_dict_table);
-const mp_obj_type_t ppp_if_type = {
- { &mp_type_type },
- .name = MP_QSTR_PPP,
- .locals_dict = (mp_obj_dict_t *)&ppp_if_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ppp_if_type,
+ MP_QSTR_PPP,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t *)&ppp_if_locals_dict
+ );
diff --git a/ports/esp32/network_wlan.c b/ports/esp32/network_wlan.c
index 4f74262af..6ca5f9a9b 100644
--- a/ports/esp32/network_wlan.c
+++ b/ports/esp32/network_wlan.c
@@ -47,9 +47,8 @@
#error WIFI_MODE_STA and WIFI_MODE_AP are supposed to be bitfields!
#endif
-STATIC const mp_obj_type_t wlan_if_type;
-STATIC const wlan_if_obj_t wlan_sta_obj = {{&wlan_if_type}, WIFI_IF_STA};
-STATIC const wlan_if_obj_t wlan_ap_obj = {{&wlan_if_type}, WIFI_IF_AP};
+STATIC const wlan_if_obj_t wlan_sta_obj;
+STATIC const wlan_if_obj_t wlan_ap_obj;
// Set to "true" if esp_wifi_start() was called
static bool wifi_started = false;
@@ -616,10 +615,15 @@ STATIC const mp_rom_map_elem_t wlan_if_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(wlan_if_locals_dict, wlan_if_locals_dict_table);
-STATIC const mp_obj_type_t wlan_if_type = {
- { &mp_type_type },
- .name = MP_QSTR_WLAN,
- .locals_dict = (mp_obj_t)&wlan_if_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ wlan_if_type,
+ MP_QSTR_WLAN,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t *)&wlan_if_locals_dict
+ );
+
+STATIC const wlan_if_obj_t wlan_sta_obj = {{&wlan_if_type}, WIFI_IF_STA};
+STATIC const wlan_if_obj_t wlan_ap_obj = {{&wlan_if_type}, WIFI_IF_AP};
#endif // MICROPY_PY_NETWORK_WLAN
diff --git a/ports/esp8266/machine_adc.c b/ports/esp8266/machine_adc.c
index 471e14d8d..bface7f7e 100644
--- a/ports/esp8266/machine_adc.c
+++ b/ports/esp8266/machine_adc.c
@@ -89,10 +89,11 @@ STATIC const mp_rom_map_elem_t machine_adc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_adc_locals_dict, machine_adc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = machine_adc_print,
- .make_new = machine_adc_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ machine_adc_make_new,
+ print, machine_adc_print,
+ locals_dict, (mp_obj_dict_t *)&machine_adc_locals_dict
+ );
diff --git a/ports/esp8266/machine_hspi.c b/ports/esp8266/machine_hspi.c
index 3ff76f5a0..c0d4a677e 100644
--- a/ports/esp8266/machine_hspi.c
+++ b/ports/esp8266/machine_hspi.c
@@ -175,13 +175,14 @@ STATIC const mp_machine_spi_p_t machine_hspi_p = {
.transfer = machine_hspi_transfer,
};
-const mp_obj_type_t machine_hspi_type = {
- { &mp_type_type },
- .name = MP_QSTR_HSPI,
- .print = machine_hspi_print,
- .make_new = machine_hspi_make_new,
- .protocol = &machine_hspi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hspi_type,
+ MP_QSTR_HSPI,
+ MP_TYPE_FLAG_NONE,
+ machine_hspi_make_new,
+ print, machine_hspi_print,
+ protocol, &machine_hspi_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_spi_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_SPI
diff --git a/ports/esp8266/machine_pin.c b/ports/esp8266/machine_pin.c
index 8171b8a8a..8b759766c 100644
--- a/ports/esp8266/machine_pin.c
+++ b/ports/esp8266/machine_pin.c
@@ -450,15 +450,16 @@ STATIC const mp_pin_p_t pin_pin_p = {
.ioctl = pin_ioctl,
};
-const mp_obj_type_t pyb_pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = pyb_pin_print,
- .make_new = mp_pin_make_new,
- .call = pyb_pin_call,
- .protocol = &pin_pin_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, pyb_pin_print,
+ call, pyb_pin_call,
+ protocol, &pin_pin_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_pin_locals_dict
+ );
/******************************************************************************/
// Pin IRQ object
@@ -509,11 +510,13 @@ STATIC const mp_rom_map_elem_t pin_irq_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pin_irq_locals_dict, pin_irq_locals_dict_table);
-STATIC const mp_obj_type_t pin_irq_type = {
- { &mp_type_type },
- .name = MP_QSTR_IRQ,
- .call = pin_irq_call,
- .locals_dict = (mp_obj_dict_t *)&pin_irq_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pin_irq_type,
+ MP_QSTR_IRQ,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ call, pin_irq_call,
+ locals_dict, (mp_obj_dict_t *)&pin_irq_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_t pin_irq_handler[16]);
diff --git a/ports/esp8266/machine_rtc.c b/ports/esp8266/machine_rtc.c
index 38049ce72..4235b325e 100644
--- a/ports/esp8266/machine_rtc.c
+++ b/ports/esp8266/machine_rtc.c
@@ -262,9 +262,10 @@ STATIC const mp_rom_map_elem_t pyb_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_rtc_locals_dict, pyb_rtc_locals_dict_table);
-const mp_obj_type_t pyb_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = pyb_rtc_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ pyb_rtc_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_rtc_locals_dict
+ );
diff --git a/ports/esp8266/machine_uart.c b/ports/esp8266/machine_uart.c
index 2fe6516dc..82f518938 100644
--- a/ports/esp8266/machine_uart.c
+++ b/ports/esp8266/machine_uart.c
@@ -343,15 +343,16 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t pyb_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = pyb_uart_print,
- .make_new = pyb_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ pyb_uart_make_new,
+ print, pyb_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_uart_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(byte * uart0_rxbuf);
diff --git a/ports/esp8266/machine_wdt.c b/ports/esp8266/machine_wdt.c
index b06e75227..d8c32ddd1 100644
--- a/ports/esp8266/machine_wdt.c
+++ b/ports/esp8266/machine_wdt.c
@@ -69,9 +69,10 @@ STATIC const mp_rom_map_elem_t machine_wdt_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_wdt_locals_dict, machine_wdt_locals_dict_table);
-const mp_obj_type_t esp_wdt_type = {
- { &mp_type_type },
- .name = MP_QSTR_WDT,
- .make_new = machine_wdt_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_wdt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ esp_wdt_type,
+ MP_QSTR_WDT,
+ MP_TYPE_FLAG_NONE,
+ machine_wdt_make_new,
+ locals_dict, (mp_obj_dict_t *)&machine_wdt_locals_dict
+ );
diff --git a/ports/esp8266/modmachine.c b/ports/esp8266/modmachine.c
index 1dd87b9af..2bb2c7bd7 100644
--- a/ports/esp8266/modmachine.c
+++ b/ports/esp8266/modmachine.c
@@ -337,13 +337,14 @@ STATIC const mp_rom_map_elem_t esp_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(esp_timer_locals_dict, esp_timer_locals_dict_table);
-const mp_obj_type_t esp_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = esp_timer_print,
- .make_new = esp_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&esp_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ esp_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ esp_timer_make_new,
+ print, esp_timer_print,
+ locals_dict, (mp_obj_dict_t *)&esp_timer_locals_dict
+ );
// this bit is unused in the Xtensa PS register
#define ETS_LOOP_ITER_BIT (12)
diff --git a/ports/esp8266/modnetwork.c b/ports/esp8266/modnetwork.c
index 5240d3b32..f78bf5da5 100644
--- a/ports/esp8266/modnetwork.c
+++ b/ports/esp8266/modnetwork.c
@@ -510,11 +510,13 @@ STATIC const mp_rom_map_elem_t wlan_if_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(wlan_if_locals_dict, wlan_if_locals_dict_table);
-const mp_obj_type_t wlan_if_type = {
- { &mp_type_type },
- .name = MP_QSTR_WLAN,
- .locals_dict = (mp_obj_dict_t *)&wlan_if_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ wlan_if_type,
+ MP_QSTR_WLAN,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t *)&wlan_if_locals_dict
+ );
STATIC mp_obj_t esp_phy_mode(size_t n_args, const mp_obj_t *args) {
if (n_args == 0) {
diff --git a/ports/mimxrt/machine_adc.c b/ports/mimxrt/machine_adc.c
index aa4cc831e..cbac6b573 100644
--- a/ports/mimxrt/machine_adc.c
+++ b/ports/mimxrt/machine_adc.c
@@ -117,13 +117,14 @@ STATIC const mp_rom_map_elem_t adc_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(adc_locals_dict, adc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- {&mp_type_type},
- .name = MP_QSTR_ADC,
- .print = adc_obj_print,
- .make_new = adc_obj_make_new,
- .locals_dict = (mp_obj_dict_t *)&adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ adc_obj_make_new,
+ print, adc_obj_print,
+ locals_dict, (mp_obj_dict_t *)&adc_locals_dict
+ );
void machine_adc_init(void) {
for (int i = 1; i < sizeof(adc_bases) / sizeof(ADC_Type *); ++i) {
diff --git a/ports/mimxrt/machine_i2c.c b/ports/mimxrt/machine_i2c.c
index c10fcaddb..b8b6b7bc6 100644
--- a/ports/mimxrt/machine_i2c.c
+++ b/ports/mimxrt/machine_i2c.c
@@ -197,11 +197,12 @@ STATIC const mp_machine_i2c_p_t machine_i2c_p = {
.transfer_single = machine_i2c_transfer_single,
};
-const mp_obj_type_t machine_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_i2c_print,
- .make_new = machine_i2c_make_new,
- .protocol = &machine_i2c_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_i2c_make_new,
+ print, machine_i2c_print,
+ protocol, &machine_i2c_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_i2c_locals_dict
+ );
diff --git a/ports/mimxrt/machine_i2s.c b/ports/mimxrt/machine_i2s.c
index a5446c7ac..68bf3a820 100644
--- a/ports/mimxrt/machine_i2s.c
+++ b/ports/mimxrt/machine_i2s.c
@@ -1213,16 +1213,17 @@ STATIC const mp_stream_p_t i2s_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_i2s_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2S,
- .print = machine_i2s_print,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &i2s_stream_p,
- .make_new = machine_i2s_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_i2s_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_i2s_type,
+ MP_QSTR_I2S,
+ MP_TYPE_FLAG_NONE,
+ machine_i2s_make_new,
+ print, machine_i2s_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &i2s_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_i2s_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _machine_i2s_obj_t *machine_i2s_obj[MICROPY_HW_I2S_NUM]);
diff --git a/ports/mimxrt/machine_led.c b/ports/mimxrt/machine_led.c
index 4082eb34b..d766c8f32 100644
--- a/ports/mimxrt/machine_led.c
+++ b/ports/mimxrt/machine_led.c
@@ -80,12 +80,13 @@ STATIC const mp_rom_map_elem_t led_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(led_locals_dict, led_locals_dict_table);
-const mp_obj_type_t machine_led_type = {
- {&mp_type_type},
- .name = MP_QSTR_LED,
- .print = led_obj_print,
- .make_new = led_obj_make_new,
- .locals_dict = (mp_obj_dict_t *)&led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ led_obj_make_new,
+ print, led_obj_print,
+ locals_dict, (mp_obj_dict_t *)&led_locals_dict
+ );
#endif
diff --git a/ports/mimxrt/machine_pin.c b/ports/mimxrt/machine_pin.c
index 64066af0e..7ec66d0ea 100644
--- a/ports/mimxrt/machine_pin.c
+++ b/ports/mimxrt/machine_pin.c
@@ -58,17 +58,21 @@ enum {
};
// Pin mapping dictionaries
-const mp_obj_type_t machine_pin_cpu_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_cpu,
- .locals_dict = (mp_obj_t)&machine_pin_cpu_pins_locals_dict,
-};
-
-const mp_obj_type_t machine_pin_board_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_board,
- .locals_dict = (mp_obj_t)&machine_pin_board_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_cpu_pins_obj_type,
+ MP_QSTR_cpu,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_t)&machine_pin_cpu_pins_locals_dict
+ );
+
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_board_pins_obj_type,
+ MP_QSTR_board,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_t)&machine_pin_board_pins_locals_dict
+ );
STATIC const mp_irq_methods_t machine_pin_irq_methods;
@@ -396,7 +400,6 @@ STATIC const mp_rom_map_elem_t machine_pin_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_pin_locals_dict, machine_pin_locals_dict_table);
-
STATIC mp_uint_t machine_pin_ioctl(mp_obj_t self_in, mp_uint_t request, uintptr_t arg, int *errcode) {
(void)errcode;
machine_pin_obj_t *self = self_in;
@@ -417,24 +420,26 @@ STATIC const mp_pin_p_t machine_pin_obj_protocol = {
.ioctl = machine_pin_ioctl,
};
-const mp_obj_type_t machine_pin_type = {
- {&mp_type_type},
- .name = MP_QSTR_Pin,
- .print = machine_pin_obj_print,
- .call = machine_pin_obj_call,
- .make_new = mp_pin_make_new,
- .protocol = &machine_pin_obj_protocol,
- .locals_dict = (mp_obj_dict_t *)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, machine_pin_obj_print,
+ call, machine_pin_obj_call,
+ protocol, &machine_pin_obj_protocol,
+ locals_dict, (mp_obj_dict_t *)&machine_pin_locals_dict
+ );
// FIXME: Create actual pin_af type!!!
-const mp_obj_type_t machine_pin_af_type = {
- {&mp_type_type},
- .name = MP_QSTR_PinAF,
- .print = machine_pin_obj_print,
- .make_new = mp_pin_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_af_type,
+ MP_QSTR_PinAF,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, machine_pin_obj_print,
+ locals_dict, (mp_obj_dict_t *)&machine_pin_locals_dict
+ );
STATIC mp_uint_t machine_pin_irq_trigger(mp_obj_t self_in, mp_uint_t new_trigger) {
machine_pin_obj_t *self = MP_OBJ_TO_PTR(self_in);
diff --git a/ports/mimxrt/machine_rtc.c b/ports/mimxrt/machine_rtc.c
index e0d33554b..5211027bd 100644
--- a/ports/mimxrt/machine_rtc.c
+++ b/ports/mimxrt/machine_rtc.c
@@ -166,9 +166,10 @@ STATIC const mp_rom_map_elem_t machine_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_rtc_locals_dict, machine_rtc_locals_dict_table);
-const mp_obj_type_t machine_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = machine_rtc_make_new,
- .locals_dict = (mp_obj_t)&machine_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ machine_rtc_make_new,
+ locals_dict, (mp_obj_t)&machine_rtc_locals_dict
+ );
diff --git a/ports/mimxrt/machine_sdcard.c b/ports/mimxrt/machine_sdcard.c
index 4a92aae00..b7bdceef4 100644
--- a/ports/mimxrt/machine_sdcard.c
+++ b/ports/mimxrt/machine_sdcard.c
@@ -208,12 +208,13 @@ STATIC const mp_rom_map_elem_t sdcard_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(sdcard_locals_dict, sdcard_locals_dict_table);
-const mp_obj_type_t machine_sdcard_type = {
- { &mp_type_type },
- .name = MP_QSTR_SDCard,
- .make_new = sdcard_obj_make_new,
- .locals_dict = (mp_obj_dict_t *)&sdcard_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_sdcard_type,
+ MP_QSTR_SDCard,
+ MP_TYPE_FLAG_NONE,
+ sdcard_obj_make_new,
+ locals_dict, (mp_obj_dict_t *)&sdcard_locals_dict
+ );
void machine_sdcard_init0(void) {
return;
diff --git a/ports/mimxrt/machine_spi.c b/ports/mimxrt/machine_spi.c
index 32bc77c34..ff3cf4fb2 100644
--- a/ports/mimxrt/machine_spi.c
+++ b/ports/mimxrt/machine_spi.c
@@ -251,11 +251,12 @@ STATIC const mp_machine_spi_p_t machine_spi_p = {
.transfer = machine_spi_transfer,
};
-const mp_obj_type_t machine_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_spi_print,
- .make_new = machine_spi_make_new,
- .protocol = &machine_spi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_spi_make_new,
+ print, machine_spi_print,
+ protocol, &machine_spi_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_spi_locals_dict
+ );
diff --git a/ports/mimxrt/machine_timer.c b/ports/mimxrt/machine_timer.c
index 62a560ebb..961238848 100644
--- a/ports/mimxrt/machine_timer.c
+++ b/ports/mimxrt/machine_timer.c
@@ -211,12 +211,13 @@ STATIC const mp_rom_map_elem_t machine_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_timer_locals_dict, machine_timer_locals_dict_table);
-const mp_obj_type_t machine_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = machine_timer_print,
- .make_new = machine_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ machine_timer_make_new,
+ print, machine_timer_print,
+ locals_dict, (mp_obj_dict_t *)&machine_timer_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _machine_timer_obj_t *timer_table[MICROPY_HW_PIT_NUM_CHANNELS]);
diff --git a/ports/mimxrt/machine_uart.c b/ports/mimxrt/machine_uart.c
index 83382a6cf..4bb518eab 100644
--- a/ports/mimxrt/machine_uart.c
+++ b/ports/mimxrt/machine_uart.c
@@ -469,13 +469,14 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = machine_uart_print,
- .make_new = machine_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&machine_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ machine_uart_make_new,
+ print, machine_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_uart_locals_dict
+ );
diff --git a/ports/mimxrt/machine_wdt.c b/ports/mimxrt/machine_wdt.c
index d09c464f6..cde80f085 100644
--- a/ports/mimxrt/machine_wdt.c
+++ b/ports/mimxrt/machine_wdt.c
@@ -99,9 +99,10 @@ STATIC const mp_rom_map_elem_t machine_wdt_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_wdt_locals_dict, machine_wdt_locals_dict_table);
-const mp_obj_type_t machine_wdt_type = {
- { &mp_type_type },
- .name = MP_QSTR_WDT,
- .make_new = machine_wdt_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_wdt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_wdt_type,
+ MP_QSTR_WDT,
+ MP_TYPE_FLAG_NONE,
+ machine_wdt_make_new,
+ locals_dict, (mp_obj_dict_t *)&machine_wdt_locals_dict
+ );
diff --git a/ports/mimxrt/mimxrt_flash.c b/ports/mimxrt/mimxrt_flash.c
index 27ab987ed..1a7d6cca8 100644
--- a/ports/mimxrt/mimxrt_flash.c
+++ b/ports/mimxrt/mimxrt_flash.c
@@ -215,9 +215,10 @@ STATIC const mp_rom_map_elem_t mimxrt_flash_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(mimxrt_flash_locals_dict, mimxrt_flash_locals_dict_table);
-const mp_obj_type_t mimxrt_flash_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .make_new = mimxrt_flash_make_new,
- .locals_dict = (mp_obj_dict_t *)&mimxrt_flash_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ mimxrt_flash_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ mimxrt_flash_make_new,
+ locals_dict, (mp_obj_dict_t *)&mimxrt_flash_locals_dict
+ );
diff --git a/ports/mimxrt/network_lan.c b/ports/mimxrt/network_lan.c
index 5517b54bd..08c3c9e72 100644
--- a/ports/mimxrt/network_lan.c
+++ b/ports/mimxrt/network_lan.c
@@ -220,12 +220,14 @@ STATIC const mp_rom_map_elem_t network_lan_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(network_lan_locals_dict, network_lan_locals_dict_table);
-const mp_obj_type_t network_lan_type = {
- { &mp_type_type },
- .name = MP_QSTR_LAN,
- .print = network_lan_print,
- .make_new = network_lan_make_new,
- .locals_dict = (mp_obj_dict_t *)&network_lan_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ network_lan_type,
+ MP_QSTR_LAN,
+ MP_TYPE_FLAG_NONE,
+ network_lan_make_new,
+ print, network_lan_print,
+ locals_dict, (mp_obj_dict_t *)&network_lan_locals_dict
+ );
+
#endif // defined(MICROPY_HW_ETH_MDC)
diff --git a/ports/nrf/boards/microbit/modules/iters.c b/ports/nrf/boards/microbit/modules/iters.c
index 66f9f6c7f..296fc1f51 100644
--- a/ports/nrf/boards/microbit/modules/iters.c
+++ b/ports/nrf/boards/microbit/modules/iters.c
@@ -43,12 +43,14 @@ static mp_obj_t microbit_repeat_iter_next(mp_obj_t iter_in) {
return mp_obj_subscr(iter->iterable, MP_OBJ_NEW_SMALL_INT(iter->index), MP_OBJ_SENTINEL);
}
-const mp_obj_type_t microbit_repeat_iterator_type = {
- { &mp_type_type },
- .name = MP_QSTR_iterator,
- .getiter = mp_identity_getiter,
- .iternext = microbit_repeat_iter_next,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ microbit_repeat_iterator_type,
+ MP_QSTR_iterator,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, mp_identity_getiter,
+ iternext, microbit_repeat_iter_next
+ );
mp_obj_t microbit_repeat_iterator(mp_obj_t iterable) {
repeat_iterator_t *result = mp_obj_malloc(repeat_iterator_t, &microbit_repeat_iterator_type);
diff --git a/ports/nrf/boards/microbit/modules/microbitdisplay.c b/ports/nrf/boards/microbit/modules/microbitdisplay.c
index 93ba9772f..084cb0952 100644
--- a/ports/nrf/boards/microbit/modules/microbitdisplay.c
+++ b/ports/nrf/boards/microbit/modules/microbitdisplay.c
@@ -542,11 +542,13 @@ STATIC const mp_rom_map_elem_t microbit_display_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(microbit_display_locals_dict, microbit_display_locals_dict_table);
-const mp_obj_type_t microbit_display_type = {
- { &mp_type_type },
- .name = MP_QSTR_MicroBitDisplay,
- .locals_dict = (mp_obj_dict_t*)&microbit_display_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ microbit_display_type,
+ MP_QSTR_MicroBitDisplay,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t*)&microbit_display_locals_dict
+ );
microbit_display_obj_t microbit_display_obj = {
{&microbit_display_type},
diff --git a/ports/nrf/boards/microbit/modules/microbitimage.c b/ports/nrf/boards/microbit/modules/microbitimage.c
index eb44660b9..95b17bb6d 100644
--- a/ports/nrf/boards/microbit/modules/microbitimage.c
+++ b/ports/nrf/boards/microbit/modules/microbitimage.c
@@ -678,14 +678,15 @@ STATIC mp_obj_t image_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs
}
-const mp_obj_type_t microbit_image_type = {
- { &mp_type_type },
- .name = MP_QSTR_MicroBitImage,
- .print = microbit_image_print,
- .make_new = microbit_image_make_new,
- .binary_op = image_binary_op,
- .locals_dict = (mp_obj_dict_t*)&microbit_image_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ microbit_image_type,
+ MP_QSTR_MicroBitImage,
+ MP_TYPE_FLAG_NONE,
+ microbit_image_make_new,
+ print, microbit_image_print,
+ binary_op, image_binary_op,
+ locals_dict, (mp_obj_dict_t*)&microbit_image_locals_dict
+ );
typedef struct _scrolling_string_t {
mp_obj_base_t base;
@@ -820,18 +821,22 @@ STATIC mp_obj_t microbit_scrolling_string_iter_next(mp_obj_t o_in) {
return iter->img;
}
-const mp_obj_type_t microbit_scrolling_string_type = {
- { &mp_type_type },
- .name = MP_QSTR_ScrollingString,
- .getiter = get_microbit_scrolling_string_iter,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ microbit_scrolling_string_type,
+ MP_QSTR_ScrollingString,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, get_microbit_scrolling_string_iter
+ );
-const mp_obj_type_t microbit_scrolling_string_iterator_type = {
- { &mp_type_type },
- .name = MP_QSTR_iterator,
- .getiter = mp_identity_getiter,
- .iternext = microbit_scrolling_string_iter_next,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ microbit_scrolling_string_iterator_type,
+ MP_QSTR_iterator,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, mp_identity_getiter,
+ iternext, microbit_scrolling_string_iter_next
+ );
/** Facade types to present a string as a sequence of images.
* These are necessary to avoid allocation during iteration,
@@ -869,13 +874,15 @@ static mp_obj_t facade_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
static mp_obj_t microbit_facade_iterator(mp_obj_t iterable_in, mp_obj_iter_buf_t *iter_buf);
-const mp_obj_type_t string_image_facade_type = {
- { &mp_type_type },
- .name = MP_QSTR_Facade,
- .unary_op = facade_unary_op,
- .subscr = string_image_facade_subscr,
- .getiter = microbit_facade_iterator,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ string_image_facade_type,
+ MP_QSTR_Facade,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ unary_op, facade_unary_op,
+ subscr, string_image_facade_subscr,
+ getiter, microbit_facade_iterator
+ );
typedef struct _facade_iterator_t {
@@ -904,12 +911,14 @@ static mp_obj_t microbit_facade_iter_next(mp_obj_t iter_in) {
return iter->image;
}
-const mp_obj_type_t microbit_facade_iterator_type = {
- { &mp_type_type },
- .name = MP_QSTR_iterator,
- .getiter = mp_identity_getiter,
- .iternext = microbit_facade_iter_next,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ microbit_facade_iterator_type,
+ MP_QSTR_iterator,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, mp_identity_getiter,
+ iternext, microbit_facade_iter_next
+ );
mp_obj_t microbit_facade_iterator(mp_obj_t iterable_in, mp_obj_iter_buf_t *iter_buf) {
(void)iter_buf;
diff --git a/ports/nrf/modules/board/led.c b/ports/nrf/modules/board/led.c
index cbfc330d6..5eef8f046 100644
--- a/ports/nrf/modules/board/led.c
+++ b/ports/nrf/modules/board/led.c
@@ -194,13 +194,14 @@ STATIC const mp_rom_map_elem_t led_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(led_locals_dict, led_locals_dict_table);
-const mp_obj_type_t board_led_type = {
- { &mp_type_type },
- .name = MP_QSTR_LED,
- .print = led_obj_print,
- .make_new = led_obj_make_new,
- .locals_dict = (mp_obj_dict_t*)&led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ board_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ led_obj_make_new,
+ print, led_obj_print,
+ locals_dict, (mp_obj_dict_t*)&led_locals_dict
+ );
#else
// For boards with no LEDs, we leave an empty function here so that we don't
diff --git a/ports/nrf/modules/machine/adc.c b/ports/nrf/modules/machine/adc.c
index 54870d2c1..5814dcaa3 100644
--- a/ports/nrf/modules/machine/adc.c
+++ b/ports/nrf/modules/machine/adc.c
@@ -294,12 +294,13 @@ STATIC const mp_rom_map_elem_t machine_adc_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(machine_adc_locals_dict, machine_adc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .make_new = machine_adc_make_new,
- .locals_dict = (mp_obj_dict_t*)&machine_adc_locals_dict,
- .print = machine_adc_print,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ machine_adc_make_new,
+ locals_dict, (mp_obj_dict_t*)&machine_adc_locals_dict,
+ print, machine_adc_print
+ );
#endif // MICROPY_PY_MACHINE_ADC
diff --git a/ports/nrf/modules/machine/i2c.c b/ports/nrf/modules/machine/i2c.c
index aac932087..846868442 100644
--- a/ports/nrf/modules/machine/i2c.c
+++ b/ports/nrf/modules/machine/i2c.c
@@ -161,13 +161,14 @@ STATIC const mp_machine_i2c_p_t machine_hard_i2c_p = {
.transfer_single = machine_hard_i2c_transfer_single,
};
-const mp_obj_type_t machine_hard_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_hard_i2c_print,
- .make_new = machine_hard_i2c_make_new,
- .protocol = &machine_hard_i2c_p,
- .locals_dict = (mp_obj_dict_t*)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_i2c_make_new,
+ print, machine_hard_i2c_print,
+ protocol, &machine_hard_i2c_p,
+ locals_dict, (mp_obj_dict_t*)&mp_machine_i2c_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_I2C
diff --git a/ports/nrf/modules/machine/pin.c b/ports/nrf/modules/machine/pin.c
index 3a45c22d1..835f6cf2b 100644
--- a/ports/nrf/modules/machine/pin.c
+++ b/ports/nrf/modules/machine/pin.c
@@ -596,14 +596,15 @@ STATIC const mp_rom_map_elem_t pin_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pin_locals_dict, pin_locals_dict_table);
-const mp_obj_type_t pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = pin_print,
- .make_new = pin_make_new,
- .call = pin_call,
- .locals_dict = (mp_obj_dict_t*)&pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ pin_make_new,
+ print, pin_print,
+ call, pin_call,
+ locals_dict, (mp_obj_dict_t*)&pin_locals_dict
+ );
/// \moduleref machine
/// \class PinAF - Pin Alternate Functions
@@ -671,12 +672,14 @@ STATIC const mp_rom_map_elem_t pin_af_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pin_af_locals_dict, pin_af_locals_dict_table);
-const mp_obj_type_t pin_af_type = {
- { &mp_type_type },
- .name = MP_QSTR_PinAF,
- .print = pin_af_obj_print,
- .locals_dict = (mp_obj_dict_t*)&pin_af_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_af_type,
+ MP_QSTR_PinAF,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pin_af_obj_print,
+ locals_dict, (mp_obj_dict_t*)&pin_af_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_t pin_class_mapper);
MP_REGISTER_ROOT_POINTER(mp_obj_t pin_class_map_dict);
diff --git a/ports/nrf/modules/machine/pwm.c b/ports/nrf/modules/machine/pwm.c
index a75028584..d0ac0e945 100644
--- a/ports/nrf/modules/machine/pwm.c
+++ b/ports/nrf/modules/machine/pwm.c
@@ -339,12 +339,13 @@ STATIC mp_obj_t machine_hard_pwm_freq(mp_obj_t self_in, mp_arg_val_t *args) {
return mp_const_none;
}
-const mp_obj_type_t machine_hard_pwm_type = {
- { &mp_type_type },
- .name = MP_QSTR_PWM,
- .print = machine_pwm_print,
- .make_new = machine_pwm_make_new,
- .locals_dict = (mp_obj_dict_t*)&machine_pwm_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_pwm_type,
+ MP_QSTR_PWM,
+ MP_TYPE_FLAG_NONE,
+ machine_pwm_make_new,
+ print, machine_pwm_print,
+ locals_dict, (mp_obj_dict_t*)&machine_pwm_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_HW_PWM
diff --git a/ports/nrf/modules/machine/rtcounter.c b/ports/nrf/modules/machine/rtcounter.c
index c9f907774..3c48c4bb1 100644
--- a/ports/nrf/modules/machine/rtcounter.c
+++ b/ports/nrf/modules/machine/rtcounter.c
@@ -262,12 +262,13 @@ STATIC const mp_rom_map_elem_t machine_rtc_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(machine_rtc_locals_dict, machine_rtc_locals_dict_table);
-const mp_obj_type_t machine_rtcounter_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTCounter,
- .print = rtc_print,
- .make_new = machine_rtc_make_new,
- .locals_dict = (mp_obj_dict_t*)&machine_rtc_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_rtcounter_type,
+ MP_QSTR_RTCounter,
+ MP_TYPE_FLAG_NONE,
+ machine_rtc_make_new,
+ print, rtc_print,
+ locals_dict, (mp_obj_dict_t*)&machine_rtc_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_RTCOUNTER
diff --git a/ports/nrf/modules/machine/spi.c b/ports/nrf/modules/machine/spi.c
index 81bc151be..22b0ff56e 100644
--- a/ports/nrf/modules/machine/spi.c
+++ b/ports/nrf/modules/machine/spi.c
@@ -427,13 +427,14 @@ STATIC const mp_machine_spi_p_t machine_hard_spi_p = {
.transfer = machine_hard_spi_transfer,
};
-const mp_obj_type_t machine_hard_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_hard_spi_print,
- .make_new = machine_spi_make_new,
- .protocol = &machine_hard_spi_p,
- .locals_dict = (mp_obj_dict_t*)&machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_spi_make_new,
+ print, machine_hard_spi_print,
+ protocol, &machine_hard_spi_p,
+ locals_dict, (mp_obj_dict_t*)&machine_spi_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_HW_SPI
diff --git a/ports/nrf/modules/machine/temp.c b/ports/nrf/modules/machine/temp.c
index 1eb38c08d..1e21f1125 100644
--- a/ports/nrf/modules/machine/temp.c
+++ b/ports/nrf/modules/machine/temp.c
@@ -112,12 +112,13 @@ STATIC const mp_rom_map_elem_t machine_temp_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(machine_temp_locals_dict, machine_temp_locals_dict_table);
-const mp_obj_type_t machine_temp_type = {
- { &mp_type_type },
- .name = MP_QSTR_Temp,
- .make_new = machine_temp_make_new,
- .locals_dict = (mp_obj_dict_t*)&machine_temp_locals_dict,
- .print = machine_temp_print,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_temp_type,
+ MP_QSTR_Temp,
+ MP_TYPE_FLAG_NONE,
+ machine_temp_make_new,
+ locals_dict, (mp_obj_dict_t*)&machine_temp_locals_dict,
+ print, machine_temp_print
+ );
#endif // MICROPY_PY_MACHINE_TEMP
diff --git a/ports/nrf/modules/machine/timer.c b/ports/nrf/modules/machine/timer.c
index c99713ef5..3724881aa 100644
--- a/ports/nrf/modules/machine/timer.c
+++ b/ports/nrf/modules/machine/timer.c
@@ -234,12 +234,13 @@ STATIC const mp_rom_map_elem_t machine_timer_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(machine_timer_locals_dict, machine_timer_locals_dict_table);
-const mp_obj_type_t machine_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = timer_print,
- .make_new = machine_timer_make_new,
- .locals_dict = (mp_obj_dict_t*)&machine_timer_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ machine_timer_make_new,
+ print, timer_print,
+ locals_dict, (mp_obj_dict_t*)&machine_timer_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_TIMER
diff --git a/ports/nrf/modules/machine/uart.c b/ports/nrf/modules/machine/uart.c
index 1fd2ccc06..5c9ba83ab 100644
--- a/ports/nrf/modules/machine/uart.c
+++ b/ports/nrf/modules/machine/uart.c
@@ -370,15 +370,16 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_hard_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = machine_hard_uart_print,
- .make_new = machine_hard_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t*)&machine_hard_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_uart_make_new,
+ print, machine_hard_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t*)&machine_hard_uart_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_UART
diff --git a/ports/nrf/modules/nrf/flashbdev.c b/ports/nrf/modules/nrf/flashbdev.c
index f63a9b46b..b67e86d0d 100644
--- a/ports/nrf/modules/nrf/flashbdev.c
+++ b/ports/nrf/modules/nrf/flashbdev.c
@@ -183,13 +183,14 @@ STATIC mp_obj_t nrf_flashbdev_make_new(const mp_obj_type_t *type, size_t n_args,
return MP_OBJ_FROM_PTR(self);
}
-const mp_obj_type_t nrf_flashbdev_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .print = nrf_flashbdev_print,
- .make_new = nrf_flashbdev_make_new,
- .locals_dict = (mp_obj_dict_t *)&nrf_flashbdev_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ nrf_flashbdev_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ nrf_flashbdev_make_new,
+ print, nrf_flashbdev_print,
+ locals_dict, (mp_obj_dict_t *)&nrf_flashbdev_locals_dict
+ );
void flashbdev_init(void) {
// Set start to first aligned page from _fs_start.
diff --git a/ports/nrf/modules/ubluepy/ubluepy_characteristic.c b/ports/nrf/modules/ubluepy/ubluepy_characteristic.c
index a66483f60..5544ac6ae 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_characteristic.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_characteristic.c
@@ -209,12 +209,13 @@ STATIC const mp_rom_map_elem_t ubluepy_characteristic_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_characteristic_locals_dict, ubluepy_characteristic_locals_dict_table);
-const mp_obj_type_t ubluepy_characteristic_type = {
- { &mp_type_type },
- .name = MP_QSTR_Characteristic,
- .print = ubluepy_characteristic_print,
- .make_new = ubluepy_characteristic_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_characteristic_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_characteristic_type,
+ MP_QSTR_Characteristic,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_characteristic_make_new,
+ print, ubluepy_characteristic_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_characteristic_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY_PERIPHERAL || MICROPY_PY_UBLUEPY_CENTRAL
diff --git a/ports/nrf/modules/ubluepy/ubluepy_constants.c b/ports/nrf/modules/ubluepy/ubluepy_constants.c
index 14e433e6e..e4637c8cb 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_constants.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_constants.c
@@ -69,11 +69,13 @@ STATIC const mp_rom_map_elem_t ubluepy_constants_ad_types_locals_dict_table[] =
STATIC MP_DEFINE_CONST_DICT(ubluepy_constants_ad_types_locals_dict, ubluepy_constants_ad_types_locals_dict_table);
-const mp_obj_type_t ubluepy_constants_ad_types_type = {
- { &mp_type_type },
- .name = MP_QSTR_ad_types,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_constants_ad_types_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_constants_ad_types_type,
+ MP_QSTR_ad_types,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_constants_ad_types_locals_dict
+ );
STATIC const mp_rom_map_elem_t ubluepy_constants_locals_dict_table[] = {
// GAP events
@@ -90,10 +92,12 @@ STATIC const mp_rom_map_elem_t ubluepy_constants_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_constants_locals_dict, ubluepy_constants_locals_dict_table);
-const mp_obj_type_t ubluepy_constants_type = {
- { &mp_type_type },
- .name = MP_QSTR_constants,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_constants_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_constants_type,
+ MP_QSTR_constants,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_constants_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY
diff --git a/ports/nrf/modules/ubluepy/ubluepy_delegate.c b/ports/nrf/modules/ubluepy/ubluepy_delegate.c
index 736bfbc9d..71648767e 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_delegate.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_delegate.c
@@ -77,12 +77,13 @@ STATIC const mp_rom_map_elem_t ubluepy_delegate_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_delegate_locals_dict, ubluepy_delegate_locals_dict_table);
-const mp_obj_type_t ubluepy_delegate_type = {
- { &mp_type_type },
- .name = MP_QSTR_DefaultDelegate,
- .print = ubluepy_delegate_print,
- .make_new = ubluepy_delegate_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_delegate_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_delegate_type,
+ MP_QSTR_DefaultDelegate,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_delegate_make_new,
+ print, ubluepy_delegate_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_delegate_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY_PERIPHERAL || MICROPY_PY_UBLUEPY_CENTRAL
diff --git a/ports/nrf/modules/ubluepy/ubluepy_descriptor.c b/ports/nrf/modules/ubluepy/ubluepy_descriptor.c
index 370188f7f..07035460a 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_descriptor.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_descriptor.c
@@ -70,12 +70,13 @@ STATIC const mp_rom_map_elem_t ubluepy_descriptor_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_descriptor_locals_dict, ubluepy_descriptor_locals_dict_table);
-const mp_obj_type_t ubluepy_descriptor_type = {
- { &mp_type_type },
- .name = MP_QSTR_Descriptor,
- .print = ubluepy_descriptor_print,
- .make_new = ubluepy_descriptor_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_descriptor_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_descriptor_type,
+ MP_QSTR_Descriptor,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_descriptor_make_new,
+ print, ubluepy_descriptor_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_descriptor_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY
diff --git a/ports/nrf/modules/ubluepy/ubluepy_peripheral.c b/ports/nrf/modules/ubluepy/ubluepy_peripheral.c
index acfe316c0..9c346a885 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_peripheral.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_peripheral.c
@@ -482,12 +482,13 @@ STATIC const mp_rom_map_elem_t ubluepy_peripheral_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_peripheral_locals_dict, ubluepy_peripheral_locals_dict_table);
-const mp_obj_type_t ubluepy_peripheral_type = {
- { &mp_type_type },
- .name = MP_QSTR_Peripheral,
- .print = ubluepy_peripheral_print,
- .make_new = ubluepy_peripheral_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_peripheral_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_peripheral_type,
+ MP_QSTR_Peripheral,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_peripheral_make_new,
+ print, ubluepy_peripheral_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_peripheral_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY
diff --git a/ports/nrf/modules/ubluepy/ubluepy_scan_entry.c b/ports/nrf/modules/ubluepy/ubluepy_scan_entry.c
index 773070b08..64a81d215 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_scan_entry.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_scan_entry.c
@@ -136,11 +136,13 @@ STATIC const mp_rom_map_elem_t ubluepy_scan_entry_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_scan_entry_locals_dict, ubluepy_scan_entry_locals_dict_table);
-const mp_obj_type_t ubluepy_scan_entry_type = {
- { &mp_type_type },
- .name = MP_QSTR_ScanEntry,
- .print = ubluepy_scan_entry_print,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_scan_entry_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_scan_entry_type,
+ MP_QSTR_ScanEntry,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, ubluepy_scan_entry_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_scan_entry_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY_CENTRAL
diff --git a/ports/nrf/modules/ubluepy/ubluepy_scanner.c b/ports/nrf/modules/ubluepy/ubluepy_scanner.c
index 60895a3da..c47044cf0 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_scanner.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_scanner.c
@@ -114,12 +114,13 @@ STATIC const mp_rom_map_elem_t ubluepy_scanner_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_scanner_locals_dict, ubluepy_scanner_locals_dict_table);
-const mp_obj_type_t ubluepy_scanner_type = {
- { &mp_type_type },
- .name = MP_QSTR_Scanner,
- .print = ubluepy_scanner_print,
- .make_new = ubluepy_scanner_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_scanner_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_scanner_type,
+ MP_QSTR_Scanner,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_scanner_make_new,
+ print, ubluepy_scanner_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_scanner_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY_CENTRAL
diff --git a/ports/nrf/modules/ubluepy/ubluepy_service.c b/ports/nrf/modules/ubluepy/ubluepy_service.c
index 6dac23177..9d0d6e5b9 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_service.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_service.c
@@ -171,12 +171,13 @@ STATIC const mp_rom_map_elem_t ubluepy_service_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_service_locals_dict, ubluepy_service_locals_dict_table);
-const mp_obj_type_t ubluepy_service_type = {
- { &mp_type_type },
- .name = MP_QSTR_Service,
- .print = ubluepy_service_print,
- .make_new = ubluepy_service_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_service_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_service_type,
+ MP_QSTR_Service,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_service_make_new,
+ print, ubluepy_service_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_service_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY_PERIPHERAL || MICROPY_PY_UBLUEPY_CENTRAL
diff --git a/ports/nrf/modules/ubluepy/ubluepy_uuid.c b/ports/nrf/modules/ubluepy/ubluepy_uuid.c
index aee7b9a1a..0414a2a28 100644
--- a/ports/nrf/modules/ubluepy/ubluepy_uuid.c
+++ b/ports/nrf/modules/ubluepy/ubluepy_uuid.c
@@ -160,12 +160,13 @@ STATIC const mp_rom_map_elem_t ubluepy_uuid_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ubluepy_uuid_locals_dict, ubluepy_uuid_locals_dict_table);
-const mp_obj_type_t ubluepy_uuid_type = {
- { &mp_type_type },
- .name = MP_QSTR_UUID,
- .print = ubluepy_uuid_print,
- .make_new = ubluepy_uuid_make_new,
- .locals_dict = (mp_obj_dict_t*)&ubluepy_uuid_locals_dict
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ubluepy_uuid_type,
+ MP_QSTR_UUID,
+ MP_TYPE_FLAG_NONE,
+ ubluepy_uuid_make_new,
+ print, ubluepy_uuid_print,
+ locals_dict, (mp_obj_dict_t*)&ubluepy_uuid_locals_dict
+ );
#endif // MICROPY_PY_UBLUEPY
diff --git a/ports/nrf/modules/uos/microbitfs.c b/ports/nrf/modules/uos/microbitfs.c
index 6c8ffb092..63ac8c932 100644
--- a/ports/nrf/modules/uos/microbitfs.c
+++ b/ports/nrf/modules/uos/microbitfs.c
@@ -626,12 +626,14 @@ STATIC const mp_stream_p_t textio_stream_p = {
.is_text = true,
};
-const mp_obj_type_t uos_mbfs_textio_type = {
- { &mp_type_type },
- .name = MP_QSTR_TextIO,
- .protocol = &textio_stream_p,
- .locals_dict = (mp_obj_dict_t*)&uos_mbfs_file_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ uos_mbfs_textio_type,
+ MP_QSTR_TextIO,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ protocol, &textio_stream_p,
+ locals_dict, (mp_obj_dict_t*)&uos_mbfs_file_locals_dict
+ );
STATIC const mp_stream_p_t fileio_stream_p = {
@@ -639,12 +641,14 @@ STATIC const mp_stream_p_t fileio_stream_p = {
.write = microbit_file_write,
};
-const mp_obj_type_t uos_mbfs_fileio_type = {
- { &mp_type_type },
- .name = MP_QSTR_FileIO,
- .protocol = &fileio_stream_p,
- .locals_dict = (mp_obj_dict_t*)&uos_mbfs_file_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ uos_mbfs_fileio_type,
+ MP_QSTR_FileIO,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ protocol, &fileio_stream_p,
+ locals_dict, (mp_obj_dict_t*)&uos_mbfs_file_locals_dict
+ );
// From micro:bit fileobj.c
mp_obj_t uos_mbfs_open(size_t n_args, const mp_obj_t *args) {
diff --git a/ports/nrf/pin_named_pins.c b/ports/nrf/pin_named_pins.c
index e1d8736b9..87fed746e 100644
--- a/ports/nrf/pin_named_pins.c
+++ b/ports/nrf/pin_named_pins.c
@@ -36,19 +36,23 @@ STATIC void pin_named_pins_obj_print(const mp_print_t *print, mp_obj_t self_in,
mp_printf(print, "<Pin.%q>", self->name);
}
-const mp_obj_type_t pin_cpu_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_cpu,
- .print = pin_named_pins_obj_print,
- .locals_dict = (mp_obj_t)&pin_cpu_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_cpu_pins_obj_type,
+ MP_QSTR_cpu,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pin_named_pins_obj_print,
+ locals_dict, (mp_obj_t)&pin_cpu_pins_locals_dict
+ );
-const mp_obj_type_t pin_board_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_board,
- .print = pin_named_pins_obj_print,
- .locals_dict = (mp_obj_t)&pin_board_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_board_pins_obj_type,
+ MP_QSTR_board,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pin_named_pins_obj_print,
+ locals_dict, (mp_obj_t)&pin_board_pins_locals_dict
+ );
const pin_obj_t *pin_find_named_pin(const mp_obj_dict_t *named_pins, mp_obj_t name) {
mp_map_t *named_map = mp_obj_dict_get_map((mp_obj_t)named_pins);
diff --git a/ports/pic16bit/modpybled.c b/ports/pic16bit/modpybled.c
index 6adb2fda3..fd4e8cce9 100644
--- a/ports/pic16bit/modpybled.c
+++ b/ports/pic16bit/modpybled.c
@@ -84,10 +84,11 @@ STATIC const mp_rom_map_elem_t pyb_led_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_led_locals_dict, pyb_led_locals_dict_table);
-const mp_obj_type_t pyb_led_type = {
- { &mp_type_type },
- .name = MP_QSTR_LED,
- .print = pyb_led_print,
- .make_new = pyb_led_make_new,
- .locals_dict = (mp_obj_t)&pyb_led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ pyb_led_make_new,
+ print, pyb_led_print,
+ locals_dict, (mp_obj_t)&pyb_led_locals_dict
+ );
diff --git a/ports/pic16bit/modpybswitch.c b/ports/pic16bit/modpybswitch.c
index 7b3d0f5f5..e1096b1da 100644
--- a/ports/pic16bit/modpybswitch.c
+++ b/ports/pic16bit/modpybswitch.c
@@ -71,11 +71,12 @@ STATIC const mp_rom_map_elem_t pyb_switch_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_switch_locals_dict, pyb_switch_locals_dict_table);
-const mp_obj_type_t pyb_switch_type = {
- { &mp_type_type },
- .name = MP_QSTR_Switch,
- .print = pyb_switch_print,
- .make_new = pyb_switch_make_new,
- .call = pyb_switch_call,
- .locals_dict = (mp_obj_t)&pyb_switch_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_switch_type,
+ MP_QSTR_Switch,
+ MP_TYPE_FLAG_NONE,
+ pyb_switch_make_new,
+ print, pyb_switch_print,
+ call, pyb_switch_call,
+ locals_dict, (mp_obj_t)&pyb_switch_locals_dict
+ );
diff --git a/ports/renesas-ra/extint.c b/ports/renesas-ra/extint.c
index 59f9ecfa3..496a50c3e 100644
--- a/ports/renesas-ra/extint.c
+++ b/ports/renesas-ra/extint.c
@@ -374,13 +374,14 @@ STATIC const mp_rom_map_elem_t extint_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(extint_locals_dict, extint_locals_dict_table);
-const mp_obj_type_t extint_type = {
- { &mp_type_type },
- .name = MP_QSTR_ExtInt,
- .print = extint_obj_print,
- .make_new = extint_make_new,
- .locals_dict = (mp_obj_dict_t *)&extint_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ extint_type,
+ MP_QSTR_ExtInt,
+ MP_TYPE_FLAG_NONE,
+ extint_make_new,
+ locals_dict, &extint_locals_dict,
+ print, extint_obj_print
+ );
void extint_init0(void) {
ra_icu_init();
diff --git a/ports/renesas-ra/led.c b/ports/renesas-ra/led.c
index efc09d9de..9a3f1d40e 100644
--- a/ports/renesas-ra/led.c
+++ b/ports/renesas-ra/led.c
@@ -170,13 +170,14 @@ STATIC const mp_rom_map_elem_t led_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(led_locals_dict, led_locals_dict_table);
-const mp_obj_type_t ra_led_type = {
- { &mp_type_type },
- .name = MP_QSTR_LED,
- .print = led_obj_print,
- .make_new = led_obj_make_new,
- .locals_dict = (mp_obj_dict_t *)&led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ ra_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ led_obj_make_new,
+ locals_dict, &led_locals_dict,
+ print, led_obj_print
+ );
#else
// For boards with no LEDs, we leave an empty function here so that we don't
diff --git a/ports/renesas-ra/machine_adc.c b/ports/renesas-ra/machine_adc.c
index adeebeb4c..99e35f48d 100644
--- a/ports/renesas-ra/machine_adc.c
+++ b/ports/renesas-ra/machine_adc.c
@@ -126,10 +126,11 @@ STATIC const mp_rom_map_elem_t machine_adc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_adc_locals_dict, machine_adc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = machine_adc_print,
- .make_new = machine_adc_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ machine_adc_make_new,
+ locals_dict, &machine_adc_locals_dict,
+ print, machine_adc_print
+ );
diff --git a/ports/renesas-ra/machine_i2c.c b/ports/renesas-ra/machine_i2c.c
index bc1cea0cd..eaca5ff4a 100644
--- a/ports/renesas-ra/machine_i2c.c
+++ b/ports/renesas-ra/machine_i2c.c
@@ -156,13 +156,14 @@ STATIC const mp_machine_i2c_p_t machine_i2c_p = {
.transfer_single = machine_i2c_transfer_single,
};
-const mp_obj_type_t machine_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_i2c_print,
- .make_new = machine_i2c_make_new,
- .protocol = &machine_i2c_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_i2c_make_new,
+ locals_dict, (void *)&mp_machine_i2c_locals_dict,
+ print, machine_i2c_print,
+ protocol, &machine_i2c_p
+ );
#endif // MICROPY_HW_ENABLE_HW_I2C
diff --git a/ports/renesas-ra/machine_pin.c b/ports/renesas-ra/machine_pin.c
index f940b5554..17ef1e19a 100644
--- a/ports/renesas-ra/machine_pin.c
+++ b/ports/renesas-ra/machine_pin.c
@@ -349,15 +349,16 @@ STATIC const mp_pin_p_t machine_pin_pin_p = {
.ioctl = machine_pin_ioctl,
};
-const mp_obj_type_t machine_pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = machine_pin_print,
- .make_new = mp_pin_make_new,
- .call = machine_pin_call,
- .protocol = &machine_pin_pin_p,
- .locals_dict = (mp_obj_t)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ locals_dict, &machine_pin_locals_dict,
+ print, machine_pin_print,
+ call, machine_pin_call,
+ protocol, &machine_pin_pin_p
+ );
// Returns the pin mode. This value returned by this macro should be one of:
// GPIO_MODE_INPUT, GPIO_MODE_OUTPUT_PP, GPIO_MODE_OUTPUT_OD,
@@ -388,17 +389,21 @@ uint32_t pin_get_af(const machine_pin_obj_t *pin) {
return (uint32_t)ra_gpio_get_af(pin->pin);
}
-const mp_obj_type_t pin_cpu_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_cpu,
- .locals_dict = (mp_obj_dict_t *)&pin_cpu_pins_locals_dict,
-};
-
-const mp_obj_type_t pin_board_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_board,
- .locals_dict = (mp_obj_dict_t *)&pin_board_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_cpu_pins_obj_type,
+ MP_QSTR_cpu,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, &pin_cpu_pins_locals_dict
+ );
+
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_board_pins_obj_type,
+ MP_QSTR_board,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, &pin_board_pins_locals_dict
+ );
const machine_pin_obj_t *pin_find_named_pin(const mp_obj_dict_t *named_pins, mp_obj_t name) {
const mp_map_t *named_map = &named_pins->map;
diff --git a/ports/renesas-ra/machine_rtc.c b/ports/renesas-ra/machine_rtc.c
index 9ddc90213..c3f64c697 100644
--- a/ports/renesas-ra/machine_rtc.c
+++ b/ports/renesas-ra/machine_rtc.c
@@ -341,9 +341,10 @@ STATIC const mp_rom_map_elem_t machine_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_rtc_locals_dict, machine_rtc_locals_dict_table);
-const mp_obj_type_t machine_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = machine_rtc_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ machine_rtc_make_new,
+ locals_dict, &machine_rtc_locals_dict
+ );
diff --git a/ports/renesas-ra/machine_spi.c b/ports/renesas-ra/machine_spi.c
index 01972ad45..d0e8b03bd 100644
--- a/ports/renesas-ra/machine_spi.c
+++ b/ports/renesas-ra/machine_spi.c
@@ -297,14 +297,15 @@ STATIC const mp_machine_spi_p_t machine_hard_spi_p = {
.transfer = machine_hard_spi_transfer,
};
-const mp_obj_type_t machine_hard_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_hard_spi_print,
- .make_new = machine_hard_spi_make_new,
- .protocol = &machine_hard_spi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_spi_make_new,
+ locals_dict, &mp_machine_spi_locals_dict,
+ print, machine_hard_spi_print,
+ protocol, &machine_hard_spi_p
+ );
void spi_init0(void) {
}
diff --git a/ports/renesas-ra/machine_timer.c b/ports/renesas-ra/machine_timer.c
index c387d3511..f3e5aafb7 100644
--- a/ports/renesas-ra/machine_timer.c
+++ b/ports/renesas-ra/machine_timer.c
@@ -136,10 +136,11 @@ STATIC const mp_rom_map_elem_t machine_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_timer_locals_dict, machine_timer_locals_dict_table);
-const mp_obj_type_t machine_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = machine_timer_print,
- .make_new = machine_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ machine_timer_make_new,
+ locals_dict, &machine_timer_locals_dict,
+ print, machine_timer_print
+ );
diff --git a/ports/renesas-ra/machine_uart.c b/ports/renesas-ra/machine_uart.c
index 4b4aa3396..11f5d6825 100644
--- a/ports/renesas-ra/machine_uart.c
+++ b/ports/renesas-ra/machine_uart.c
@@ -571,15 +571,16 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = machine_uart_print,
- .make_new = machine_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&machine_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ machine_uart_make_new,
+ locals_dict, &machine_uart_locals_dict,
+ print, machine_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p
+ );
MP_REGISTER_ROOT_POINTER(struct _machine_uart_obj_t *machine_uart_obj_all[MICROPY_HW_MAX_UART + MICROPY_HW_MAX_LPUART]);
diff --git a/ports/renesas-ra/storage.c b/ports/renesas-ra/storage.c
index 8d94f6fb9..f573894a5 100644
--- a/ports/renesas-ra/storage.c
+++ b/ports/renesas-ra/storage.c
@@ -400,13 +400,14 @@ STATIC const mp_rom_map_elem_t pyb_flash_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_flash_locals_dict, pyb_flash_locals_dict_table);
-const mp_obj_type_t pyb_flash_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .print = pyb_flash_print,
- .make_new = pyb_flash_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_flash_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_flash_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ pyb_flash_make_new,
+ locals_dict, &pyb_flash_locals_dict,
+ print, pyb_flash_print
+ );
void pyb_flash_init_vfs(fs_user_mount_t *vfs) {
vfs->base.type = &mp_fat_vfs_type;
diff --git a/ports/renesas-ra/timer.c b/ports/renesas-ra/timer.c
index 1ae936525..8f7acbcda 100644
--- a/ports/renesas-ra/timer.c
+++ b/ports/renesas-ra/timer.c
@@ -410,13 +410,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_locals_dict, pyb_timer_locals_dict_table);
-const mp_obj_type_t pyb_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = pyb_timer_print,
- .make_new = pyb_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ pyb_timer_make_new,
+ locals_dict, &pyb_timer_locals_dict,
+ print, pyb_timer_print
+ );
#if defined(TIMER_CHANNEL)
/*
@@ -502,12 +503,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_channel_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_channel_locals_dict, pyb_timer_channel_locals_dict_table);
-STATIC const mp_obj_type_t pyb_timer_channel_type = {
- { &mp_type_type },
- .name = MP_QSTR_TimerChannel,
- .print = pyb_timer_channel_print,
- .locals_dict = (mp_obj_dict_t *)&pyb_timer_channel_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_channel_type,
+ MP_QSTR_TimerChannel,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, &pyb_timer_channel_locals_dict,
+ print, pyb_timer_channel_print
+ );
#endif
STATIC void timer_handle_irq_channel(pyb_timer_obj_t *tim, uint8_t channel, mp_obj_t callback) {
diff --git a/ports/renesas-ra/usrsw.c b/ports/renesas-ra/usrsw.c
index 572510816..4107d7850 100644
--- a/ports/renesas-ra/usrsw.c
+++ b/ports/renesas-ra/usrsw.c
@@ -135,14 +135,15 @@ STATIC const mp_rom_map_elem_t pyb_switch_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_switch_locals_dict, pyb_switch_locals_dict_table);
-const mp_obj_type_t pyb_switch_type = {
- { &mp_type_type },
- .name = MP_QSTR_Switch,
- .print = pyb_switch_print,
- .make_new = pyb_switch_make_new,
- .call = pyb_switch_call,
- .locals_dict = (mp_obj_dict_t *)&pyb_switch_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_switch_type,
+ MP_QSTR_Switch,
+ MP_TYPE_FLAG_NONE,
+ pyb_switch_make_new,
+ locals_dict, &pyb_switch_locals_dict,
+ print, pyb_switch_print,
+ call, pyb_switch_call
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_t pyb_switch_callback);
diff --git a/ports/rp2/machine_adc.c b/ports/rp2/machine_adc.c
index 5f91392e1..549f8d5ec 100644
--- a/ports/rp2/machine_adc.c
+++ b/ports/rp2/machine_adc.c
@@ -113,10 +113,11 @@ STATIC const mp_rom_map_elem_t machine_adc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_adc_locals_dict, machine_adc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = machine_adc_print,
- .make_new = machine_adc_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ machine_adc_make_new,
+ print, machine_adc_print,
+ locals_dict, (mp_obj_dict_t *)&machine_adc_locals_dict
+ );
diff --git a/ports/rp2/machine_i2c.c b/ports/rp2/machine_i2c.c
index 3390cc421..91d8bb59b 100644
--- a/ports/rp2/machine_i2c.c
+++ b/ports/rp2/machine_i2c.c
@@ -176,11 +176,12 @@ STATIC const mp_machine_i2c_p_t machine_i2c_p = {
.transfer_single = machine_i2c_transfer_single,
};
-const mp_obj_type_t machine_hw_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_i2c_print,
- .make_new = machine_i2c_make_new,
- .protocol = &machine_i2c_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hw_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_i2c_make_new,
+ print, machine_i2c_print,
+ protocol, &machine_i2c_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_i2c_locals_dict
+ );
diff --git a/ports/rp2/machine_i2s.c b/ports/rp2/machine_i2s.c
index 1015ba101..8446a5978 100644
--- a/ports/rp2/machine_i2s.c
+++ b/ports/rp2/machine_i2s.c
@@ -1137,15 +1137,16 @@ STATIC const mp_stream_p_t i2s_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_i2s_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2S,
- .print = machine_i2s_print,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &i2s_stream_p,
- .make_new = machine_i2s_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_i2s_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_i2s_type,
+ MP_QSTR_I2S,
+ MP_TYPE_FLAG_NONE,
+ machine_i2s_make_new,
+ print, machine_i2s_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &i2s_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_i2s_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(void *machine_i2s_obj[2]);
diff --git a/ports/rp2/machine_pin.c b/ports/rp2/machine_pin.c
index 705f61242..38670f09a 100644
--- a/ports/rp2/machine_pin.c
+++ b/ports/rp2/machine_pin.c
@@ -641,15 +641,16 @@ STATIC const mp_pin_p_t pin_pin_p = {
.ioctl = pin_ioctl,
};
-const mp_obj_type_t machine_pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = machine_pin_print,
- .make_new = mp_pin_make_new,
- .call = machine_pin_call,
- .protocol = &pin_pin_p,
- .locals_dict = (mp_obj_t)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, machine_pin_print,
+ call, machine_pin_call,
+ protocol, &pin_pin_p,
+ locals_dict, (mp_obj_t)&machine_pin_locals_dict
+ );
STATIC mp_uint_t machine_pin_irq_trigger(mp_obj_t self_in, mp_uint_t new_trigger) {
machine_pin_obj_t *self = MP_OBJ_TO_PTR(self_in);
diff --git a/ports/rp2/machine_rtc.c b/ports/rp2/machine_rtc.c
index 9d59124a6..73bdaee6c 100644
--- a/ports/rp2/machine_rtc.c
+++ b/ports/rp2/machine_rtc.c
@@ -115,9 +115,10 @@ STATIC const mp_rom_map_elem_t machine_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_rtc_locals_dict, machine_rtc_locals_dict_table);
-const mp_obj_type_t machine_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = machine_rtc_make_new,
- .locals_dict = (mp_obj_t)&machine_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ machine_rtc_make_new,
+ locals_dict, (mp_obj_t)&machine_rtc_locals_dict
+ );
diff --git a/ports/rp2/machine_spi.c b/ports/rp2/machine_spi.c
index 104bd1fd5..f3ac8d7cf 100644
--- a/ports/rp2/machine_spi.c
+++ b/ports/rp2/machine_spi.c
@@ -290,14 +290,15 @@ STATIC const mp_machine_spi_p_t machine_spi_p = {
.transfer = machine_spi_transfer,
};
-const mp_obj_type_t machine_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_spi_print,
- .make_new = machine_spi_make_new,
- .protocol = &machine_spi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_spi_make_new,
+ print, machine_spi_print,
+ protocol, &machine_spi_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_spi_locals_dict
+ );
mp_obj_base_t *mp_hal_get_spi_obj(mp_obj_t o) {
if (mp_obj_is_type(o, &machine_spi_type)) {
diff --git a/ports/rp2/machine_timer.c b/ports/rp2/machine_timer.c
index e7e8f02d5..d3b601552 100644
--- a/ports/rp2/machine_timer.c
+++ b/ports/rp2/machine_timer.c
@@ -156,10 +156,11 @@ STATIC const mp_rom_map_elem_t machine_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_timer_locals_dict, machine_timer_locals_dict_table);
-const mp_obj_type_t machine_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = machine_timer_print,
- .make_new = machine_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ machine_timer_make_new,
+ print, machine_timer_print,
+ locals_dict, (mp_obj_dict_t *)&machine_timer_locals_dict
+ );
diff --git a/ports/rp2/machine_uart.c b/ports/rp2/machine_uart.c
index f7e44b6b2..df6228058 100644
--- a/ports/rp2/machine_uart.c
+++ b/ports/rp2/machine_uart.c
@@ -579,16 +579,17 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = machine_uart_print,
- .make_new = machine_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&machine_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ machine_uart_make_new,
+ print, machine_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_uart_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(void *rp2_uart_rx_buffer[2]);
MP_REGISTER_ROOT_POINTER(void *rp2_uart_tx_buffer[2]);
diff --git a/ports/rp2/machine_wdt.c b/ports/rp2/machine_wdt.c
index d6914a4f2..e8c433306 100644
--- a/ports/rp2/machine_wdt.c
+++ b/ports/rp2/machine_wdt.c
@@ -77,9 +77,10 @@ STATIC const mp_rom_map_elem_t machine_wdt_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_wdt_locals_dict, machine_wdt_locals_dict_table);
-const mp_obj_type_t machine_wdt_type = {
- { &mp_type_type },
- .name = MP_QSTR_WDT,
- .make_new = machine_wdt_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_wdt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_wdt_type,
+ MP_QSTR_WDT,
+ MP_TYPE_FLAG_NONE,
+ machine_wdt_make_new,
+ locals_dict, (mp_obj_dict_t *)&machine_wdt_locals_dict
+ );
diff --git a/ports/rp2/rp2_flash.c b/ports/rp2/rp2_flash.c
index 47c95ea5c..37a3412db 100644
--- a/ports/rp2/rp2_flash.c
+++ b/ports/rp2/rp2_flash.c
@@ -185,9 +185,10 @@ STATIC const mp_rom_map_elem_t rp2_flash_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(rp2_flash_locals_dict, rp2_flash_locals_dict_table);
-const mp_obj_type_t rp2_flash_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .make_new = rp2_flash_make_new,
- .locals_dict = (mp_obj_dict_t *)&rp2_flash_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ rp2_flash_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ rp2_flash_make_new,
+ locals_dict, (mp_obj_dict_t *)&rp2_flash_locals_dict
+ );
diff --git a/ports/rp2/rp2_pio.c b/ports/rp2/rp2_pio.c
index eb85eb224..9a195bdd8 100644
--- a/ports/rp2/rp2_pio.c
+++ b/ports/rp2/rp2_pio.c
@@ -376,13 +376,14 @@ STATIC const mp_rom_map_elem_t rp2_pio_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(rp2_pio_locals_dict, rp2_pio_locals_dict_table);
-const mp_obj_type_t rp2_pio_type = {
- { &mp_type_type },
- .name = MP_QSTR_PIO,
- .print = rp2_pio_print,
- .make_new = rp2_pio_make_new,
- .locals_dict = (mp_obj_dict_t *)&rp2_pio_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ rp2_pio_type,
+ MP_QSTR_PIO,
+ MP_TYPE_FLAG_NONE,
+ rp2_pio_make_new,
+ print, rp2_pio_print,
+ locals_dict, (mp_obj_dict_t *)&rp2_pio_locals_dict
+ );
STATIC mp_uint_t rp2_pio_irq_trigger(mp_obj_t self_in, mp_uint_t new_trigger) {
rp2_pio_obj_t *self = MP_OBJ_TO_PTR(self_in);
@@ -806,13 +807,14 @@ STATIC const mp_rom_map_elem_t rp2_state_machine_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(rp2_state_machine_locals_dict, rp2_state_machine_locals_dict_table);
-const mp_obj_type_t rp2_state_machine_type = {
- { &mp_type_type },
- .name = MP_QSTR_StateMachine,
- .print = rp2_state_machine_print,
- .make_new = rp2_state_machine_make_new,
- .locals_dict = (mp_obj_dict_t *)&rp2_state_machine_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ rp2_state_machine_type,
+ MP_QSTR_StateMachine,
+ MP_TYPE_FLAG_NONE,
+ rp2_state_machine_make_new,
+ print, rp2_state_machine_print,
+ locals_dict, (mp_obj_dict_t *)&rp2_state_machine_locals_dict
+ );
STATIC mp_uint_t rp2_state_machine_irq_trigger(mp_obj_t self_in, mp_uint_t new_trigger) {
rp2_state_machine_obj_t *self = MP_OBJ_TO_PTR(self_in);
diff --git a/ports/samd/machine_led.c b/ports/samd/machine_led.c
index f4dd1aeb3..76aae8ffc 100644
--- a/ports/samd/machine_led.c
+++ b/ports/samd/machine_led.c
@@ -162,11 +162,12 @@ STATIC const mp_rom_map_elem_t machine_led_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_led_locals_dict, machine_led_locals_dict_table);
-const mp_obj_type_t machine_led_type = {
- { &mp_type_type },
- .name = MP_QSTR_LED,
- .print = machine_led_print,
- .make_new = mp_led_make_new,
- .call = machine_led_call,
- .locals_dict = (mp_obj_t)&machine_led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ mp_led_make_new,
+ print, machine_led_print,
+ call, machine_led_call,
+ locals_dict, (mp_obj_t)&machine_led_locals_dict
+ );
diff --git a/ports/samd/machine_pin.c b/ports/samd/machine_pin.c
index 161a3ccdd..d47982e0e 100644
--- a/ports/samd/machine_pin.c
+++ b/ports/samd/machine_pin.c
@@ -287,15 +287,16 @@ STATIC const mp_pin_p_t pin_pin_p = {
.ioctl = pin_ioctl,
};
-const mp_obj_type_t machine_pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = machine_pin_print,
- .make_new = mp_pin_make_new,
- .call = machine_pin_call,
- .protocol = &pin_pin_p,
- .locals_dict = (mp_obj_t)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, machine_pin_print,
+ call, machine_pin_call,
+ protocol, &pin_pin_p,
+ locals_dict, (mp_obj_t)&machine_pin_locals_dict
+ );
/*
STATIC mp_uint_t machine_pin_irq_trigger(mp_obj_t self_in, mp_uint_t new_trigger) {
diff --git a/ports/samd/samd_flash.c b/ports/samd/samd_flash.c
index 530e3d9c8..6c74b59a2 100644
--- a/ports/samd/samd_flash.c
+++ b/ports/samd/samd_flash.c
@@ -181,9 +181,10 @@ STATIC const mp_rom_map_elem_t samd_flash_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(samd_flash_locals_dict, samd_flash_locals_dict_table);
-const mp_obj_type_t samd_flash_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .make_new = samd_flash_make_new,
- .locals_dict = (mp_obj_dict_t *)&samd_flash_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ samd_flash_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ samd_flash_make_new,
+ locals_dict, (mp_obj_dict_t *)&samd_flash_locals_dict
+ );
diff --git a/ports/stm32/accel.c b/ports/stm32/accel.c
index b07791a9a..276ce37d3 100644
--- a/ports/stm32/accel.c
+++ b/ports/stm32/accel.c
@@ -281,11 +281,12 @@ STATIC const mp_rom_map_elem_t pyb_accel_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_accel_locals_dict, pyb_accel_locals_dict_table);
-const mp_obj_type_t pyb_accel_type = {
- { &mp_type_type },
- .name = MP_QSTR_Accel,
- .make_new = pyb_accel_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_accel_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_accel_type,
+ MP_QSTR_Accel,
+ MP_TYPE_FLAG_NONE,
+ pyb_accel_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_accel_locals_dict
+ );
#endif // MICROPY_HW_HAS_MMA7660 || MICROPY_HW_HAS_KXTJ3
diff --git a/ports/stm32/adc.c b/ports/stm32/adc.c
index 9d58cf2e7..7e627d088 100644
--- a/ports/stm32/adc.c
+++ b/ports/stm32/adc.c
@@ -703,13 +703,14 @@ STATIC const mp_rom_map_elem_t adc_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(adc_locals_dict, adc_locals_dict_table);
-const mp_obj_type_t pyb_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = adc_print,
- .make_new = adc_make_new,
- .locals_dict = (mp_obj_dict_t *)&adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ adc_make_new,
+ print, adc_print,
+ locals_dict, (mp_obj_dict_t *)&adc_locals_dict
+ );
/******************************************************************************/
/* adc all object */
@@ -911,11 +912,12 @@ STATIC const mp_rom_map_elem_t adc_all_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(adc_all_locals_dict, adc_all_locals_dict_table);
-const mp_obj_type_t pyb_adc_all_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADCAll,
- .make_new = adc_all_make_new,
- .locals_dict = (mp_obj_dict_t *)&adc_all_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_adc_all_type,
+ MP_QSTR_ADCAll,
+ MP_TYPE_FLAG_NONE,
+ adc_all_make_new,
+ locals_dict, (mp_obj_dict_t *)&adc_all_locals_dict
+ );
#endif // MICROPY_HW_ENABLE_ADC
diff --git a/ports/stm32/dac.c b/ports/stm32/dac.c
index c41bf858a..da50b30fe 100644
--- a/ports/stm32/dac.c
+++ b/ports/stm32/dac.c
@@ -502,12 +502,13 @@ STATIC const mp_rom_map_elem_t pyb_dac_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_dac_locals_dict, pyb_dac_locals_dict_table);
-const mp_obj_type_t pyb_dac_type = {
- { &mp_type_type },
- .name = MP_QSTR_DAC,
- .print = pyb_dac_print,
- .make_new = pyb_dac_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_dac_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_dac_type,
+ MP_QSTR_DAC,
+ MP_TYPE_FLAG_NONE,
+ pyb_dac_make_new,
+ print, pyb_dac_print,
+ locals_dict, (mp_obj_dict_t *)&pyb_dac_locals_dict
+ );
#endif // MICROPY_HW_ENABLE_DAC
diff --git a/ports/stm32/extint.c b/ports/stm32/extint.c
index d68275bf1..4d2dc5d23 100644
--- a/ports/stm32/extint.c
+++ b/ports/stm32/extint.c
@@ -659,13 +659,14 @@ STATIC const mp_rom_map_elem_t extint_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(extint_locals_dict, extint_locals_dict_table);
-const mp_obj_type_t extint_type = {
- { &mp_type_type },
- .name = MP_QSTR_ExtInt,
- .print = extint_obj_print,
- .make_new = extint_make_new,
- .locals_dict = (mp_obj_dict_t *)&extint_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ extint_type,
+ MP_QSTR_ExtInt,
+ MP_TYPE_FLAG_NONE,
+ extint_make_new,
+ print, extint_obj_print,
+ locals_dict, (mp_obj_dict_t *)&extint_locals_dict
+ );
void extint_init0(void) {
for (int i = 0; i < PYB_EXTI_NUM_VECTORS; i++) {
diff --git a/ports/stm32/lcd.c b/ports/stm32/lcd.c
index a0e001d1f..a951ea766 100644
--- a/ports/stm32/lcd.c
+++ b/ports/stm32/lcd.c
@@ -525,11 +525,12 @@ STATIC const mp_rom_map_elem_t pyb_lcd_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_lcd_locals_dict, pyb_lcd_locals_dict_table);
-const mp_obj_type_t pyb_lcd_type = {
- { &mp_type_type },
- .name = MP_QSTR_LCD,
- .make_new = pyb_lcd_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_lcd_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_lcd_type,
+ MP_QSTR_LCD,
+ MP_TYPE_FLAG_NONE,
+ pyb_lcd_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_lcd_locals_dict
+ );
#endif // MICROPY_HW_HAS_LCD
diff --git a/ports/stm32/led.c b/ports/stm32/led.c
index 078327462..6745ef60b 100644
--- a/ports/stm32/led.c
+++ b/ports/stm32/led.c
@@ -381,13 +381,14 @@ STATIC const mp_rom_map_elem_t led_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(led_locals_dict, led_locals_dict_table);
-const mp_obj_type_t pyb_led_type = {
- { &mp_type_type },
- .name = MP_QSTR_LED,
- .print = led_obj_print,
- .make_new = led_obj_make_new,
- .locals_dict = (mp_obj_dict_t *)&led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ led_obj_make_new,
+ print, led_obj_print,
+ locals_dict, (mp_obj_dict_t *)&led_locals_dict
+ );
#else
// For boards with no LEDs, we leave an empty function here so that we don't
diff --git a/ports/stm32/machine_adc.c b/ports/stm32/machine_adc.c
index ad7c994ba..682bae3a6 100644
--- a/ports/stm32/machine_adc.c
+++ b/ports/stm32/machine_adc.c
@@ -492,12 +492,13 @@ STATIC const mp_rom_map_elem_t machine_adc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_adc_locals_dict, machine_adc_locals_dict_table);
-const mp_obj_type_t machine_adc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ADC,
- .print = machine_adc_print,
- .make_new = machine_adc_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_adc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_adc_type,
+ MP_QSTR_ADC,
+ MP_TYPE_FLAG_NONE,
+ machine_adc_make_new,
+ print, machine_adc_print,
+ locals_dict, (mp_obj_dict_t *)&machine_adc_locals_dict
+ );
#endif
diff --git a/ports/stm32/machine_i2c.c b/ports/stm32/machine_i2c.c
index 262944585..89970f234 100644
--- a/ports/stm32/machine_i2c.c
+++ b/ports/stm32/machine_i2c.c
@@ -236,13 +236,14 @@ STATIC const mp_machine_i2c_p_t machine_hard_i2c_p = {
.transfer = machine_hard_i2c_transfer,
};
-const mp_obj_type_t machine_hard_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_hard_i2c_print,
- .make_new = machine_hard_i2c_make_new,
- .protocol = &machine_hard_i2c_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_i2c_make_new,
+ print, machine_hard_i2c_print,
+ protocol, &machine_hard_i2c_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_i2c_locals_dict
+ );
#endif // MICROPY_HW_ENABLE_HW_I2C
diff --git a/ports/stm32/machine_i2s.c b/ports/stm32/machine_i2s.c
index 4f583a53e..7dc6439f2 100644
--- a/ports/stm32/machine_i2s.c
+++ b/ports/stm32/machine_i2s.c
@@ -1114,16 +1114,17 @@ STATIC const mp_stream_p_t i2s_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_i2s_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2S,
- .print = machine_i2s_print,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &i2s_stream_p,
- .make_new = machine_i2s_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_i2s_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_i2s_type,
+ MP_QSTR_I2S,
+ MP_TYPE_FLAG_NONE,
+ machine_i2s_make_new,
+ print, machine_i2s_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &i2s_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_i2s_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _machine_i2s_obj_t *machine_i2s_obj[MICROPY_HW_MAX_I2S]);
diff --git a/ports/stm32/machine_spi.c b/ports/stm32/machine_spi.c
index 37c026cef..87561c2b7 100644
--- a/ports/stm32/machine_spi.c
+++ b/ports/stm32/machine_spi.c
@@ -135,11 +135,12 @@ STATIC const mp_machine_spi_p_t machine_hard_spi_p = {
.transfer = machine_hard_spi_transfer,
};
-const mp_obj_type_t machine_hard_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_hard_spi_print,
- .make_new = machine_hard_spi_make_new,
- .protocol = &machine_hard_spi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_spi_make_new,
+ print, machine_hard_spi_print,
+ protocol, &machine_hard_spi_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_spi_locals_dict
+ );
diff --git a/ports/stm32/machine_timer.c b/ports/stm32/machine_timer.c
index c387d3511..bd9dbe609 100644
--- a/ports/stm32/machine_timer.c
+++ b/ports/stm32/machine_timer.c
@@ -136,10 +136,11 @@ STATIC const mp_rom_map_elem_t machine_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(machine_timer_locals_dict, machine_timer_locals_dict_table);
-const mp_obj_type_t machine_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = machine_timer_print,
- .make_new = machine_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&machine_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ machine_timer_make_new,
+ print, machine_timer_print,
+ locals_dict, (mp_obj_dict_t *)&machine_timer_locals_dict
+ );
diff --git a/ports/stm32/machine_uart.c b/ports/stm32/machine_uart.c
index 1bb1d2a1a..4d25a0274 100644
--- a/ports/stm32/machine_uart.c
+++ b/ports/stm32/machine_uart.c
@@ -660,13 +660,14 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t pyb_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = pyb_uart_print,
- .make_new = pyb_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ pyb_uart_make_new,
+ print, pyb_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_uart_locals_dict
+ );
diff --git a/ports/stm32/network_lan.c b/ports/stm32/network_lan.c
index f19916a1d..f9c7d80b7 100644
--- a/ports/stm32/network_lan.c
+++ b/ports/stm32/network_lan.c
@@ -158,12 +158,13 @@ STATIC const mp_rom_map_elem_t network_lan_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(network_lan_locals_dict, network_lan_locals_dict_table);
-const mp_obj_type_t network_lan_type = {
- { &mp_type_type },
- .name = MP_QSTR_LAN,
- .print = network_lan_print,
- .make_new = network_lan_make_new,
- .locals_dict = (mp_obj_dict_t *)&network_lan_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ network_lan_type,
+ MP_QSTR_LAN,
+ MP_TYPE_FLAG_NONE,
+ network_lan_make_new,
+ print, network_lan_print,
+ locals_dict, (mp_obj_dict_t *)&network_lan_locals_dict
+ );
#endif // defined(MICROPY_HW_ETH_MDC)
diff --git a/ports/stm32/pin.c b/ports/stm32/pin.c
index af6bafc43..992046cd1 100644
--- a/ports/stm32/pin.c
+++ b/ports/stm32/pin.c
@@ -592,15 +592,16 @@ STATIC const mp_pin_p_t pin_pin_p = {
.ioctl = pin_ioctl,
};
-const mp_obj_type_t pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = pin_print,
- .make_new = mp_pin_make_new,
- .call = pin_call,
- .protocol = &pin_pin_p,
- .locals_dict = (mp_obj_dict_t *)&pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, pin_print,
+ call, pin_call,
+ protocol, &pin_pin_p,
+ locals_dict, (mp_obj_dict_t *)&pin_locals_dict
+ );
/// \moduleref pyb
/// \class PinAF - Pin Alternate Functions
@@ -669,12 +670,14 @@ STATIC const mp_rom_map_elem_t pin_af_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pin_af_locals_dict, pin_af_locals_dict_table);
-const mp_obj_type_t pin_af_type = {
- { &mp_type_type },
- .name = MP_QSTR_PinAF,
- .print = pin_af_obj_print,
- .locals_dict = (mp_obj_dict_t *)&pin_af_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_af_type,
+ MP_QSTR_PinAF,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pin_af_obj_print,
+ locals_dict, (mp_obj_dict_t *)&pin_af_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_t pin_class_mapper);
MP_REGISTER_ROOT_POINTER(mp_obj_t pin_class_map_dict);
diff --git a/ports/stm32/pin_named_pins.c b/ports/stm32/pin_named_pins.c
index 3a8e0f9fc..620888878 100644
--- a/ports/stm32/pin_named_pins.c
+++ b/ports/stm32/pin_named_pins.c
@@ -31,17 +31,21 @@
#include "py/mphal.h"
#include "pin.h"
-const mp_obj_type_t pin_cpu_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_cpu,
- .locals_dict = (mp_obj_dict_t *)&pin_cpu_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_cpu_pins_obj_type,
+ MP_QSTR_cpu,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t *)&pin_cpu_pins_locals_dict
+ );
-const mp_obj_type_t pin_board_pins_obj_type = {
- { &mp_type_type },
- .name = MP_QSTR_board,
- .locals_dict = (mp_obj_dict_t *)&pin_board_pins_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pin_board_pins_obj_type,
+ MP_QSTR_board,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ locals_dict, (mp_obj_dict_t *)&pin_board_pins_locals_dict
+ );
const pin_obj_t *pin_find_named_pin(const mp_obj_dict_t *named_pins, mp_obj_t name) {
const mp_map_t *named_map = &named_pins->map;
diff --git a/ports/stm32/pyb_can.c b/ports/stm32/pyb_can.c
index ff41de318..6fdfd2c85 100644
--- a/ports/stm32/pyb_can.c
+++ b/ports/stm32/pyb_can.c
@@ -1072,14 +1072,15 @@ STATIC const mp_stream_p_t can_stream_p = {
.is_text = false,
};
-const mp_obj_type_t pyb_can_type = {
- { &mp_type_type },
- .name = MP_QSTR_CAN,
- .print = pyb_can_print,
- .make_new = pyb_can_make_new,
- .protocol = &can_stream_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_can_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_can_type,
+ MP_QSTR_CAN,
+ MP_TYPE_FLAG_NONE,
+ pyb_can_make_new,
+ print, pyb_can_print,
+ protocol, &can_stream_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_can_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(struct _pyb_can_obj_t *pyb_can_obj_all[MICROPY_HW_MAX_CAN]);
diff --git a/ports/stm32/pyb_i2c.c b/ports/stm32/pyb_i2c.c
index e9877422c..ee6983a14 100644
--- a/ports/stm32/pyb_i2c.c
+++ b/ports/stm32/pyb_i2c.c
@@ -1104,12 +1104,13 @@ STATIC const mp_rom_map_elem_t pyb_i2c_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_i2c_locals_dict, pyb_i2c_locals_dict_table);
-const mp_obj_type_t pyb_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = pyb_i2c_print,
- .make_new = pyb_i2c_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ pyb_i2c_make_new,
+ print, pyb_i2c_print,
+ locals_dict, (mp_obj_dict_t *)&pyb_i2c_locals_dict
+ );
#endif // MICROPY_PY_PYB_LEGACY && MICROPY_HW_ENABLE_HW_I2C
diff --git a/ports/stm32/pyb_spi.c b/ports/stm32/pyb_spi.c
index f2cdcebf2..b1425272f 100644
--- a/ports/stm32/pyb_spi.c
+++ b/ports/stm32/pyb_spi.c
@@ -350,11 +350,12 @@ STATIC const mp_machine_spi_p_t pyb_spi_p = {
.transfer = spi_transfer_machine,
};
-const mp_obj_type_t pyb_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = pyb_spi_print,
- .make_new = pyb_spi_make_new,
- .protocol = &pyb_spi_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ pyb_spi_make_new,
+ print, pyb_spi_print,
+ protocol, &pyb_spi_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_spi_locals_dict
+ );
diff --git a/ports/stm32/rtc.c b/ports/stm32/rtc.c
index 55977791b..c7698db14 100644
--- a/ports/stm32/rtc.c
+++ b/ports/stm32/rtc.c
@@ -837,9 +837,10 @@ STATIC const mp_rom_map_elem_t pyb_rtc_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_rtc_locals_dict, pyb_rtc_locals_dict_table);
-const mp_obj_type_t pyb_rtc_type = {
- { &mp_type_type },
- .name = MP_QSTR_RTC,
- .make_new = pyb_rtc_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_rtc_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_rtc_type,
+ MP_QSTR_RTC,
+ MP_TYPE_FLAG_NONE,
+ pyb_rtc_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_rtc_locals_dict
+ );
diff --git a/ports/stm32/sdcard.c b/ports/stm32/sdcard.c
index 6f5892570..b9cc051e7 100644
--- a/ports/stm32/sdcard.c
+++ b/ports/stm32/sdcard.c
@@ -872,21 +872,23 @@ STATIC const mp_rom_map_elem_t pyb_sdcard_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_sdcard_locals_dict, pyb_sdcard_locals_dict_table);
#if MICROPY_HW_ENABLE_SDCARD
-const mp_obj_type_t pyb_sdcard_type = {
- { &mp_type_type },
- .name = MP_QSTR_SDCard,
- .make_new = pyb_sdcard_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_sdcard_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_sdcard_type,
+ MP_QSTR_SDCard,
+ MP_TYPE_FLAG_NONE,
+ pyb_sdcard_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_sdcard_locals_dict
+ );
#endif
#if MICROPY_HW_ENABLE_MMCARD
-const mp_obj_type_t pyb_mmcard_type = {
- { &mp_type_type },
- .name = MP_QSTR_MMCard,
- .make_new = pyb_mmcard_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_sdcard_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_mmcard_type,
+ MP_QSTR_MMCard,
+ MP_TYPE_FLAG_NONE,
+ pyb_mmcard_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_sdcard_locals_dict
+ );
#endif
void sdcard_init_vfs(fs_user_mount_t *vfs, int part) {
diff --git a/ports/stm32/servo.c b/ports/stm32/servo.c
index 170842246..d552f5e6b 100644
--- a/ports/stm32/servo.c
+++ b/ports/stm32/servo.c
@@ -336,12 +336,13 @@ STATIC const mp_rom_map_elem_t pyb_servo_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_servo_locals_dict, pyb_servo_locals_dict_table);
-const mp_obj_type_t pyb_servo_type = {
- { &mp_type_type },
- .name = MP_QSTR_Servo,
- .print = pyb_servo_print,
- .make_new = pyb_servo_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_servo_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_servo_type,
+ MP_QSTR_Servo,
+ MP_TYPE_FLAG_NONE,
+ pyb_servo_make_new,
+ print, pyb_servo_print,
+ locals_dict, (mp_obj_dict_t *)&pyb_servo_locals_dict
+ );
#endif // MICROPY_HW_ENABLE_SERVO
diff --git a/ports/stm32/storage.c b/ports/stm32/storage.c
index c33a75f67..92f705949 100644
--- a/ports/stm32/storage.c
+++ b/ports/stm32/storage.c
@@ -453,13 +453,14 @@ STATIC const mp_rom_map_elem_t pyb_flash_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_flash_locals_dict, pyb_flash_locals_dict_table);
-const mp_obj_type_t pyb_flash_type = {
- { &mp_type_type },
- .name = MP_QSTR_Flash,
- .print = pyb_flash_print,
- .make_new = pyb_flash_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_flash_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_flash_type,
+ MP_QSTR_Flash,
+ MP_TYPE_FLAG_NONE,
+ pyb_flash_make_new,
+ print, pyb_flash_print,
+ locals_dict, (mp_obj_dict_t *)&pyb_flash_locals_dict
+ );
void pyb_flash_init_vfs(fs_user_mount_t *vfs) {
vfs->base.type = &mp_fat_vfs_type;
diff --git a/ports/stm32/timer.c b/ports/stm32/timer.c
index 518a2e23b..abf4c1f3f 100644
--- a/ports/stm32/timer.c
+++ b/ports/stm32/timer.c
@@ -1471,13 +1471,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_locals_dict, pyb_timer_locals_dict_table);
-const mp_obj_type_t pyb_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = pyb_timer_print,
- .make_new = pyb_timer_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ pyb_timer_make_new,
+ print, pyb_timer_print,
+ locals_dict, (mp_obj_dict_t *)&pyb_timer_locals_dict
+ );
/// \moduleref pyb
/// \class TimerChannel - setup a channel for a timer.
@@ -1610,12 +1611,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_channel_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_channel_locals_dict, pyb_timer_channel_locals_dict_table);
-STATIC const mp_obj_type_t pyb_timer_channel_type = {
- { &mp_type_type },
- .name = MP_QSTR_TimerChannel,
- .print = pyb_timer_channel_print,
- .locals_dict = (mp_obj_dict_t *)&pyb_timer_channel_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_channel_type,
+ MP_QSTR_TimerChannel,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pyb_timer_channel_print,
+ locals_dict, (mp_obj_dict_t *)&pyb_timer_channel_locals_dict
+ );
STATIC void timer_handle_irq_channel(pyb_timer_obj_t *tim, uint8_t channel, mp_obj_t callback) {
uint32_t irq_mask = TIMER_IRQ_MASK(channel);
diff --git a/ports/stm32/usb.c b/ports/stm32/usb.c
index c5fdd88ac..7c36765c2 100644
--- a/ports/stm32/usb.c
+++ b/ports/stm32/usb.c
@@ -936,16 +936,17 @@ STATIC const mp_stream_p_t pyb_usb_vcp_stream_p = {
.ioctl = pyb_usb_vcp_ioctl,
};
-const mp_obj_type_t pyb_usb_vcp_type = {
- { &mp_type_type },
- .name = MP_QSTR_USB_VCP,
- .print = pyb_usb_vcp_print,
- .make_new = pyb_usb_vcp_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &pyb_usb_vcp_stream_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_usb_vcp_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_usb_vcp_type,
+ MP_QSTR_USB_VCP,
+ MP_TYPE_FLAG_NONE,
+ pyb_usb_vcp_make_new,
+ print, pyb_usb_vcp_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &pyb_usb_vcp_stream_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_usb_vcp_locals_dict
+ );
/******************************************************************************/
// MicroPython bindings for USB HID
@@ -1077,13 +1078,14 @@ STATIC const mp_stream_p_t pyb_usb_hid_stream_p = {
.ioctl = pyb_usb_hid_ioctl,
};
-const mp_obj_type_t pyb_usb_hid_type = {
- { &mp_type_type },
- .name = MP_QSTR_USB_HID,
- .make_new = pyb_usb_hid_make_new,
- .protocol = &pyb_usb_hid_stream_p,
- .locals_dict = (mp_obj_dict_t *)&pyb_usb_hid_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_usb_hid_type,
+ MP_QSTR_USB_HID,
+ MP_TYPE_FLAG_NONE,
+ pyb_usb_hid_make_new,
+ protocol, &pyb_usb_hid_stream_p,
+ locals_dict, (mp_obj_dict_t *)&pyb_usb_hid_locals_dict
+ );
#endif // MICROPY_HW_USB_HID
diff --git a/ports/stm32/usrsw.c b/ports/stm32/usrsw.c
index 60aae1c88..137f4dabf 100644
--- a/ports/stm32/usrsw.c
+++ b/ports/stm32/usrsw.c
@@ -134,14 +134,15 @@ STATIC const mp_rom_map_elem_t pyb_switch_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_switch_locals_dict, pyb_switch_locals_dict_table);
-const mp_obj_type_t pyb_switch_type = {
- { &mp_type_type },
- .name = MP_QSTR_Switch,
- .print = pyb_switch_print,
- .make_new = pyb_switch_make_new,
- .call = pyb_switch_call,
- .locals_dict = (mp_obj_dict_t *)&pyb_switch_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_switch_type,
+ MP_QSTR_Switch,
+ MP_TYPE_FLAG_NONE,
+ pyb_switch_make_new,
+ print, pyb_switch_print,
+ call, pyb_switch_call,
+ locals_dict, (mp_obj_dict_t *)&pyb_switch_locals_dict
+ );
MP_REGISTER_ROOT_POINTER(mp_obj_t pyb_switch_callback);
diff --git a/ports/stm32/wdt.c b/ports/stm32/wdt.c
index d794607bc..e3b8e2e0a 100644
--- a/ports/stm32/wdt.c
+++ b/ports/stm32/wdt.c
@@ -102,9 +102,10 @@ STATIC const mp_rom_map_elem_t pyb_wdt_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_wdt_locals_dict, pyb_wdt_locals_dict_table);
-const mp_obj_type_t pyb_wdt_type = {
- { &mp_type_type },
- .name = MP_QSTR_WDT,
- .make_new = pyb_wdt_make_new,
- .locals_dict = (mp_obj_dict_t *)&pyb_wdt_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_wdt_type,
+ MP_QSTR_WDT,
+ MP_TYPE_FLAG_NONE,
+ pyb_wdt_make_new,
+ locals_dict, (mp_obj_dict_t *)&pyb_wdt_locals_dict
+ );
diff --git a/ports/teensy/led.c b/ports/teensy/led.c
index d79e63cf7..ca548431f 100644
--- a/ports/teensy/led.c
+++ b/ports/teensy/led.c
@@ -134,10 +134,11 @@ STATIC const mp_rom_map_elem_t led_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(led_locals_dict, led_locals_dict_table);
-const mp_obj_type_t pyb_led_type = {
- { &mp_type_type },
- .name = MP_QSTR_LED,
- .print = led_obj_print,
- .make_new = led_obj_make_new,
- .locals_dict = (mp_obj_t)&led_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_led_type,
+ MP_QSTR_LED,
+ MP_TYPE_FLAG_NONE,
+ led_obj_make_new,
+ print, led_obj_print,
+ locals_dict, (mp_obj_t)&led_locals_dict
+ );
diff --git a/ports/teensy/timer.c b/ports/teensy/timer.c
index 68dc965eb..4df247433 100644
--- a/ports/teensy/timer.c
+++ b/ports/teensy/timer.c
@@ -746,13 +746,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_locals_dict, pyb_timer_locals_dict_table);
-const mp_obj_type_t pyb_timer_type = {
- { &mp_type_type },
- .name = MP_QSTR_Timer,
- .print = pyb_timer_print,
- .make_new = pyb_timer_make_new,
- .locals_dict = (mp_obj_t)&pyb_timer_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_type,
+ MP_QSTR_Timer,
+ MP_TYPE_FLAG_NONE,
+ pyb_timer_make_new,
+ print, pyb_timer_print,
+ locals_dict, (mp_obj_t)&pyb_timer_locals_dict
+ );
/// \moduleref pyb
/// \class TimerChannel - setup a channel for a timer.
@@ -889,12 +890,14 @@ STATIC const mp_rom_map_elem_t pyb_timer_channel_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(pyb_timer_channel_locals_dict, pyb_timer_channel_locals_dict_table);
-STATIC const mp_obj_type_t pyb_timer_channel_type = {
- { &mp_type_type },
- .name = MP_QSTR_TimerChannel,
- .print = pyb_timer_channel_print,
- .locals_dict = (mp_obj_t)&pyb_timer_channel_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_timer_channel_type,
+ MP_QSTR_TimerChannel,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, pyb_timer_channel_print,
+ locals_dict, (mp_obj_t)&pyb_timer_channel_locals_dict
+ );
STATIC bool ftm_handle_irq_callback(pyb_timer_obj_t *self, mp_uint_t channel, mp_obj_t callback) {
// execute callback if it's set
diff --git a/ports/teensy/uart.c b/ports/teensy/uart.c
index 5b63fcb3c..8957d9270 100644
--- a/ports/teensy/uart.c
+++ b/ports/teensy/uart.c
@@ -483,10 +483,11 @@ STATIC const mp_rom_map_elem_t pyb_uart_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(pyb_uart_locals_dict, pyb_uart_locals_dict_table);
-const mp_obj_type_t pyb_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = pyb_uart_print,
- .make_new = pyb_uart_make_new,
- .locals_dict = (mp_obj_t)&pyb_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ pyb_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ pyb_uart_make_new,
+ print, pyb_uart_print,
+ locals_dict, (mp_obj_t)&pyb_uart_locals_dict
+ );
diff --git a/ports/unix/coverage.c b/ports/unix/coverage.c
index cf425ac43..b4567417a 100644
--- a/ports/unix/coverage.c
+++ b/ports/unix/coverage.c
@@ -106,11 +106,14 @@ STATIC const mp_stream_p_t fileio_stream_p = {
.ioctl = stest_ioctl,
};
-STATIC const mp_obj_type_t mp_type_stest_fileio = {
- { &mp_type_type },
- .protocol = &fileio_stream_p,
- .locals_dict = (mp_obj_dict_t *)&rawfile_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_stest_fileio,
+ MP_QSTR_stest_fileio,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ protocol, &fileio_stream_p,
+ locals_dict, (mp_obj_dict_t *)&rawfile_locals_dict
+ );
// stream read returns non-blocking error
STATIC mp_uint_t stest_read2(mp_obj_t o_in, void *buf, mp_uint_t size, int *errcode) {
@@ -133,11 +136,14 @@ STATIC const mp_stream_p_t textio_stream_p2 = {
.is_text = true,
};
-STATIC const mp_obj_type_t mp_type_stest_textio2 = {
- { &mp_type_type },
- .protocol = &textio_stream_p2,
- .locals_dict = (mp_obj_dict_t *)&rawfile_locals_dict2,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_stest_textio2,
+ MP_QSTR_stest_textio2,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ protocol, &textio_stream_p2,
+ locals_dict, (mp_obj_dict_t *)&rawfile_locals_dict2
+ );
// str/bytes objects without a valid hash
STATIC const mp_obj_str_t str_no_hash_obj = {{&mp_type_str}, 0, 10, (const byte *)"0123456789"};
diff --git a/ports/unix/modffi.c b/ports/unix/modffi.c
index 6417b5d3b..98f0a1aa0 100644
--- a/ports/unix/modffi.c
+++ b/ports/unix/modffi.c
@@ -421,13 +421,14 @@ STATIC const mp_rom_map_elem_t ffimod_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ffimod_locals_dict, ffimod_locals_dict_table);
-STATIC const mp_obj_type_t ffimod_type = {
- { &mp_type_type },
- .name = MP_QSTR_ffimod,
- .print = ffimod_print,
- .make_new = ffimod_make_new,
- .locals_dict = (mp_obj_dict_t *)&ffimod_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ ffimod_type,
+ MP_QSTR_ffimod,
+ MP_TYPE_FLAG_NONE,
+ ffimod_make_new,
+ print, ffimod_print,
+ locals_dict, (mp_obj_dict_t *)&ffimod_locals_dict
+ );
// FFI function
@@ -530,12 +531,14 @@ error:
mp_raise_TypeError(MP_ERROR_TEXT("don't know how to pass object to native function"));
}
-STATIC const mp_obj_type_t ffifunc_type = {
- { &mp_type_type },
- .name = MP_QSTR_ffifunc,
- .print = ffifunc_print,
- .call = ffifunc_call,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ ffifunc_type,
+ MP_QSTR_ffifunc,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, ffifunc_print,
+ call, ffifunc_call
+ );
// FFI callback for Python function
@@ -556,12 +559,14 @@ STATIC const mp_rom_map_elem_t fficallback_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(fficallback_locals_dict, fficallback_locals_dict_table);
-STATIC const mp_obj_type_t fficallback_type = {
- { &mp_type_type },
- .name = MP_QSTR_fficallback,
- .print = fficallback_print,
- .locals_dict = (mp_obj_dict_t *)&fficallback_locals_dict
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ fficallback_type,
+ MP_QSTR_fficallback,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, fficallback_print,
+ locals_dict, (mp_obj_dict_t *)&fficallback_locals_dict
+ );
// FFI variable
@@ -592,21 +597,25 @@ STATIC const mp_rom_map_elem_t ffivar_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(ffivar_locals_dict, ffivar_locals_dict_table);
-STATIC const mp_obj_type_t ffivar_type = {
- { &mp_type_type },
- .name = MP_QSTR_ffivar,
- .print = ffivar_print,
- .locals_dict = (mp_obj_dict_t *)&ffivar_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ ffivar_type,
+ MP_QSTR_ffivar,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, ffivar_print,
+ locals_dict, (mp_obj_dict_t *)&ffivar_locals_dict
+ );
// Generic opaque storage object (unused)
/*
-STATIC const mp_obj_type_t opaque_type = {
- { &mp_type_type },
- .name = MP_QSTR_opaqueval,
-// .print = opaque_print,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ opaque_type,
+ MP_QSTR_opaqueval,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ // .print = opaque_print,
+ );
*/
STATIC mp_obj_t mod_ffi_open(size_t n_args, const mp_obj_t *args) {
diff --git a/ports/unix/modjni.c b/ports/unix/modjni.c
index 6fa00731f..72f95b645 100644
--- a/ports/unix/modjni.c
+++ b/ports/unix/modjni.c
@@ -174,14 +174,16 @@ STATIC const mp_rom_map_elem_t jclass_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(jclass_locals_dict, jclass_locals_dict_table);
-STATIC const mp_obj_type_t jclass_type = {
- { &mp_type_type },
- .name = MP_QSTR_jclass,
- .print = jclass_print,
- .attr = jclass_attr,
- .call = jclass_call,
- .locals_dict = (mp_obj_dict_t *)&jclass_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ jclass_type,
+ MP_QSTR_jclass,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, jclass_print,
+ attr, jclass_attr,
+ call, jclass_call,
+ locals_dict, (mp_obj_dict_t *)&jclass_locals_dict
+ );
STATIC mp_obj_t new_jclass(jclass jc) {
mp_obj_jclass_t *o = mp_obj_malloc(mp_obj_jclass_t, &jclass_type);
@@ -320,16 +322,18 @@ STATIC mp_obj_t subscr_getiter(mp_obj_t self_in, mp_obj_iter_buf_t *iter_buf) {
return mp_obj_new_getitem_iter(dest, iter_buf);
}
-STATIC const mp_obj_type_t jobject_type = {
- { &mp_type_type },
- .name = MP_QSTR_jobject,
- .print = jobject_print,
- .unary_op = jobject_unary_op,
- .attr = jobject_attr,
- .subscr = jobject_subscr,
- .getiter = subscr_getiter,
-// .locals_dict = (mp_obj_dict_t*)&jobject_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ jobject_type,
+ MP_QSTR_jobject,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, jobject_print,
+ unary_op, jobject_unary_op,
+ attr, jobject_attr,
+ subscr, jobject_subscr,
+ getiter, subscr_getiter,
+ // .locals_dict = (mp_obj_dict_t*)&jobject_locals_dict,
+ );
STATIC mp_obj_t new_jobject(jobject jo) {
if (jo == NULL) {
@@ -567,14 +571,16 @@ STATIC mp_obj_t jmethod_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const
return call_method(self->obj, name, methods, false, n_args, args);
}
-STATIC const mp_obj_type_t jmethod_type = {
- { &mp_type_type },
- .name = MP_QSTR_jmethod,
- .print = jmethod_print,
- .call = jmethod_call,
-// .attr = jobject_attr,
-// .locals_dict = (mp_obj_dict_t*)&jobject_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ jmethod_type,
+ MP_QSTR_jmethod,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ print, jmethod_print,
+ call, jmethod_call,
+ // .attr = jobject_attr,
+ // .locals_dict = (mp_obj_dict_t*)&jobject_locals_dict,
+ );
#ifdef __ANDROID__
#define LIBJVM_SO "libdvm.so"
diff --git a/ports/unix/moduselect.c b/ports/unix/moduselect.c
index 2de4a316e..d8a8d1d8c 100644
--- a/ports/unix/moduselect.c
+++ b/ports/unix/moduselect.c
@@ -311,13 +311,15 @@ STATIC const mp_rom_map_elem_t poll_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(poll_locals_dict, poll_locals_dict_table);
-STATIC const mp_obj_type_t mp_type_poll = {
- { &mp_type_type },
- .name = MP_QSTR_poll,
- .getiter = mp_identity_getiter,
- .iternext = poll_iternext,
- .locals_dict = (void *)&poll_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_poll,
+ MP_QSTR_poll,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, mp_identity_getiter,
+ iternext, poll_iternext,
+ locals_dict, (void *)&poll_locals_dict
+ );
STATIC mp_obj_t select_poll(size_t n_args, const mp_obj_t *args) {
int alloc = 4;
diff --git a/ports/unix/modusocket.c b/ports/unix/modusocket.c
index 72c70d175..7e4476cbd 100644
--- a/ports/unix/modusocket.c
+++ b/ports/unix/modusocket.c
@@ -516,16 +516,17 @@ STATIC const mp_stream_p_t usocket_stream_p = {
.ioctl = socket_ioctl,
};
-const mp_obj_type_t mp_type_socket = {
- { &mp_type_type },
- .name = MP_QSTR_socket,
- .print = socket_print,
- .make_new = socket_make_new,
- .getiter = NULL,
- .iternext = NULL,
- .protocol = &usocket_stream_p,
- .locals_dict = (mp_obj_dict_t *)&usocket_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_socket,
+ MP_QSTR_socket,
+ MP_TYPE_FLAG_NONE,
+ socket_make_new,
+ print, socket_print,
+ getiter, NULL,
+ iternext, NULL,
+ protocol, &usocket_stream_p,
+ locals_dict, (mp_obj_dict_t *)&usocket_locals_dict
+ );
#define BINADDR_MAX_LEN sizeof(struct in6_addr)
STATIC mp_obj_t mod_socket_inet_pton(mp_obj_t family_in, mp_obj_t addr_in) {
diff --git a/ports/zephyr/machine_i2c.c b/ports/zephyr/machine_i2c.c
index 9bb63229d..60a1924d8 100644
--- a/ports/zephyr/machine_i2c.c
+++ b/ports/zephyr/machine_i2c.c
@@ -126,13 +126,14 @@ STATIC const mp_machine_i2c_p_t machine_hard_i2c_p = {
.transfer_single = machine_hard_i2c_transfer_single,
};
-const mp_obj_type_t machine_hard_i2c_type = {
- { &mp_type_type },
- .name = MP_QSTR_I2C,
- .print = machine_hard_i2c_print,
- .make_new = machine_hard_i2c_make_new,
- .protocol = &machine_hard_i2c_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_i2c_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_i2c_type,
+ MP_QSTR_I2C,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_i2c_make_new,
+ print, machine_hard_i2c_print,
+ protocol, &machine_hard_i2c_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_i2c_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_I2C
diff --git a/ports/zephyr/machine_pin.c b/ports/zephyr/machine_pin.c
index aa55c0410..48303edd8 100644
--- a/ports/zephyr/machine_pin.c
+++ b/ports/zephyr/machine_pin.c
@@ -285,15 +285,16 @@ STATIC const mp_pin_p_t machine_pin_pin_p = {
.ioctl = machine_pin_ioctl,
};
-const mp_obj_type_t machine_pin_type = {
- { &mp_type_type },
- .name = MP_QSTR_Pin,
- .print = machine_pin_print,
- .make_new = mp_pin_make_new,
- .call = machine_pin_call,
- .protocol = &machine_pin_pin_p,
- .locals_dict = (mp_obj_t)&machine_pin_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_pin_type,
+ MP_QSTR_Pin,
+ MP_TYPE_FLAG_NONE,
+ mp_pin_make_new,
+ print, machine_pin_print,
+ call, machine_pin_call,
+ protocol, &machine_pin_pin_p,
+ locals_dict, (mp_obj_t)&machine_pin_locals_dict
+ );
STATIC mp_uint_t machine_pin_irq_trigger(mp_obj_t self_in, mp_uint_t new_trigger) {
machine_pin_obj_t *self = MP_OBJ_TO_PTR(self_in);
diff --git a/ports/zephyr/machine_spi.c b/ports/zephyr/machine_spi.c
index 2b0911c59..6d9bf896b 100644
--- a/ports/zephyr/machine_spi.c
+++ b/ports/zephyr/machine_spi.c
@@ -197,13 +197,14 @@ STATIC const mp_machine_spi_p_t machine_hard_spi_p = {
.transfer = machine_hard_spi_transfer,
};
-const mp_obj_type_t machine_hard_spi_type = {
- { &mp_type_type },
- .name = MP_QSTR_SPI,
- .print = machine_hard_spi_print,
- .make_new = machine_hard_spi_make_new,
- .protocol = &machine_hard_spi_p,
- .locals_dict = (mp_obj_dict_t *)&mp_machine_spi_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_hard_spi_type,
+ MP_QSTR_SPI,
+ MP_TYPE_FLAG_NONE,
+ machine_hard_spi_make_new,
+ print, machine_hard_spi_print,
+ protocol, &machine_hard_spi_p,
+ locals_dict, (mp_obj_dict_t *)&mp_machine_spi_locals_dict
+ );
#endif // MICROPY_PY_MACHINE_SPI
diff --git a/ports/zephyr/machine_uart.c b/ports/zephyr/machine_uart.c
index 3520795c5..3f5df7465 100644
--- a/ports/zephyr/machine_uart.c
+++ b/ports/zephyr/machine_uart.c
@@ -154,13 +154,14 @@ STATIC const mp_stream_p_t uart_stream_p = {
.is_text = false,
};
-const mp_obj_type_t machine_uart_type = {
- { &mp_type_type },
- .name = MP_QSTR_UART,
- .print = machine_uart_print,
- .make_new = machine_uart_make_new,
- .getiter = mp_identity_getiter,
- .iternext = mp_stream_unbuffered_iter,
- .protocol = &uart_stream_p,
- .locals_dict = (mp_obj_dict_t *)&machine_uart_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ machine_uart_type,
+ MP_QSTR_UART,
+ MP_TYPE_FLAG_NONE,
+ machine_uart_make_new,
+ print, machine_uart_print,
+ getiter, mp_identity_getiter,
+ iternext, mp_stream_unbuffered_iter,
+ protocol, &uart_stream_p,
+ locals_dict, (mp_obj_dict_t *)&machine_uart_locals_dict
+ );
diff --git a/ports/zephyr/modusocket.c b/ports/zephyr/modusocket.c
index 17cf9babd..a7bef74ca 100644
--- a/ports/zephyr/modusocket.c
+++ b/ports/zephyr/modusocket.c
@@ -353,14 +353,15 @@ STATIC const mp_stream_p_t socket_stream_p = {
.ioctl = sock_ioctl,
};
-STATIC const mp_obj_type_t socket_type = {
- { &mp_type_type },
- .name = MP_QSTR_socket,
- .print = socket_print,
- .make_new = socket_make_new,
- .protocol = &socket_stream_p,
- .locals_dict = (mp_obj_t)&socket_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ socket_type,
+ MP_QSTR_socket,
+ MP_TYPE_FLAG_NONE,
+ socket_make_new,
+ print, socket_print,
+ protocol, &socket_stream_p,
+ locals_dict, (mp_obj_t)&socket_locals_dict
+ );
//
// getaddrinfo() implementation
diff --git a/ports/zephyr/modzsensor.c b/ports/zephyr/modzsensor.c
index ba6717046..7c0b0193d 100644
--- a/ports/zephyr/modzsensor.c
+++ b/ports/zephyr/modzsensor.c
@@ -105,12 +105,13 @@ STATIC const mp_rom_map_elem_t sensor_locals_dict_table[] = {
STATIC MP_DEFINE_CONST_DICT(sensor_locals_dict, sensor_locals_dict_table);
-STATIC const mp_obj_type_t sensor_type = {
- { &mp_type_type },
- .name = MP_QSTR_Sensor,
- .make_new = sensor_make_new,
- .locals_dict = (void *)&sensor_locals_dict,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ sensor_type,
+ MP_QSTR_Sensor,
+ MP_TYPE_FLAG_NONE,
+ sensor_make_new,
+ locals_dict, (void *)&sensor_locals_dict
+ );
STATIC const mp_rom_map_elem_t mp_module_zsensor_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_zsensor) },
diff --git a/ports/zephyr/zephyr_storage.c b/ports/zephyr/zephyr_storage.c
index 1179c3fda..ded7caa65 100644
--- a/ports/zephyr/zephyr_storage.c
+++ b/ports/zephyr/zephyr_storage.c
@@ -128,13 +128,14 @@ STATIC const mp_rom_map_elem_t zephyr_disk_access_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(zephyr_disk_access_locals_dict, zephyr_disk_access_locals_dict_table);
-const mp_obj_type_t zephyr_disk_access_type = {
- { &mp_type_type },
- .name = MP_QSTR_DiskAccess,
- .print = zephyr_disk_access_print,
- .make_new = zephyr_disk_access_make_new,
- .locals_dict = (mp_obj_dict_t *)&zephyr_disk_access_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ zephyr_disk_access_type,
+ MP_QSTR_DiskAccess,
+ MP_TYPE_FLAG_NONE,
+ zephyr_disk_access_make_new,
+ print, zephyr_disk_access_print,
+ locals_dict, (mp_obj_dict_t *)&zephyr_disk_access_locals_dict
+ );
#endif // CONFIG_DISK_ACCESS
#ifdef CONFIG_FLASH_MAP
@@ -249,11 +250,12 @@ STATIC const mp_rom_map_elem_t zephyr_flash_area_locals_dict_table[] = {
};
STATIC MP_DEFINE_CONST_DICT(zephyr_flash_area_locals_dict, zephyr_flash_area_locals_dict_table);
-const mp_obj_type_t zephyr_flash_area_type = {
- { &mp_type_type },
- .name = MP_QSTR_FlashArea,
- .print = zephyr_flash_area_print,
- .make_new = zephyr_flash_area_make_new,
- .locals_dict = (mp_obj_dict_t *)&zephyr_flash_area_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ zephyr_flash_area_type,
+ MP_QSTR_FlashArea,
+ MP_TYPE_FLAG_NONE,
+ zephyr_flash_area_make_new,
+ print, zephyr_flash_area_print,
+ locals_dict, (mp_obj_dict_t *)&zephyr_flash_area_locals_dict
+ );
#endif // CONFIG_FLASH_MAP