esp32: Don't put py/scheduler.o in iRAM, it's no longer needed.
ISR's no longer need to be in iRAM, and the ESP IDF provides an option to specify that they are in iRAM if an application needs lower latency when handling them. But we don't use this feature for user interrupts: both timer and gpio ISR routines are registered without the ESP_INTR_FLAG_IRAM option, and so the scheduling code no longer needs to be in iRAM.
This commit is contained in:
parent
deb67569ff
commit
e7ab475276
@ -108,7 +108,6 @@ SECTIONS
|
|||||||
*spi_flash/spi_flash_rom_patch.o(.literal .text .literal.* .text.*)
|
*spi_flash/spi_flash_rom_patch.o(.literal .text .literal.* .text.*)
|
||||||
*libgcov.a:(.literal .text .literal.* .text.*)
|
*libgcov.a:(.literal .text .literal.* .text.*)
|
||||||
INCLUDE esp32.spiram.rom-functions-iram.ld
|
INCLUDE esp32.spiram.rom-functions-iram.ld
|
||||||
*py/scheduler.o*(.literal .text .literal.* .text.*)
|
|
||||||
_iram_text_end = ABSOLUTE(.);
|
_iram_text_end = ABSOLUTE(.);
|
||||||
_iram_end = ABSOLUTE(.);
|
_iram_end = ABSOLUTE(.);
|
||||||
} > iram0_0_seg
|
} > iram0_0_seg
|
||||||
|
@ -112,7 +112,7 @@ void machine_pins_deinit(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
STATIC void IRAM_ATTR machine_pin_isr_handler(void *arg) {
|
STATIC void machine_pin_isr_handler(void *arg) {
|
||||||
machine_pin_obj_t *self = arg;
|
machine_pin_obj_t *self = arg;
|
||||||
mp_obj_t handler = MP_STATE_PORT(machine_pin_irq_handler)[self->id];
|
mp_obj_t handler = MP_STATE_PORT(machine_pin_irq_handler)[self->id];
|
||||||
mp_sched_schedule(handler, MP_OBJ_FROM_PTR(self));
|
mp_sched_schedule(handler, MP_OBJ_FROM_PTR(self));
|
||||||
|
Loading…
Reference in New Issue
Block a user