esp32/sdkconfig: Disable PMP_IDRAM_SPLIT to fix native emit support.
Signed-off-by: Andrew Leech <andrew@alelec.net>
This commit is contained in:
committed by
Damien George
parent
ce397d85af
commit
55dc482d3e
@@ -127,3 +127,9 @@ CONFIG_ETH_SPI_ETHERNET_DM9051=y
|
|||||||
# formatting in ROM instead and should override this, check
|
# formatting in ROM instead and should override this, check
|
||||||
# ESP_ROM_HAS_NEWLIB_NANO_FORMAT.
|
# ESP_ROM_HAS_NEWLIB_NANO_FORMAT.
|
||||||
CONFIG_NEWLIB_NANO_FORMAT=y
|
CONFIG_NEWLIB_NANO_FORMAT=y
|
||||||
|
|
||||||
|
# IRAM/DRAM split protection is a memory protection feature on some parts
|
||||||
|
# that support SOC_CPU_IDRAM_SPLIT_USING_PMP, eg. C2, C5, C6, H2
|
||||||
|
# Due to limitations in the PMP system this feature breaks native emitters
|
||||||
|
# so is disabled by default.
|
||||||
|
CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT=n
|
||||||
|
|||||||
@@ -42,7 +42,11 @@
|
|||||||
// emitters
|
// emitters
|
||||||
#define MICROPY_PERSISTENT_CODE_LOAD (1)
|
#define MICROPY_PERSISTENT_CODE_LOAD (1)
|
||||||
#if CONFIG_IDF_TARGET_ARCH_RISCV
|
#if CONFIG_IDF_TARGET_ARCH_RISCV
|
||||||
|
#if CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT
|
||||||
|
#define MICROPY_EMIT_RV32 (0)
|
||||||
|
#else
|
||||||
#define MICROPY_EMIT_RV32 (1)
|
#define MICROPY_EMIT_RV32 (1)
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
#define MICROPY_EMIT_XTENSAWIN (1)
|
#define MICROPY_EMIT_XTENSAWIN (1)
|
||||||
#endif
|
#endif
|
||||||
@@ -263,8 +267,12 @@
|
|||||||
// type definitions for the specific machine
|
// type definitions for the specific machine
|
||||||
|
|
||||||
#define MICROPY_MAKE_POINTER_CALLABLE(p) ((void *)((mp_uint_t)(p)))
|
#define MICROPY_MAKE_POINTER_CALLABLE(p) ((void *)((mp_uint_t)(p)))
|
||||||
|
#if SOC_CPU_IDRAM_SPLIT_USING_PMP && !CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT
|
||||||
|
// On targets with this configuration all RAM is executable so no need for a custom commit function.
|
||||||
|
#else
|
||||||
void *esp_native_code_commit(void *, size_t, void *);
|
void *esp_native_code_commit(void *, size_t, void *);
|
||||||
#define MP_PLAT_COMMIT_EXEC(buf, len, reloc) esp_native_code_commit(buf, len, reloc)
|
#define MP_PLAT_COMMIT_EXEC(buf, len, reloc) esp_native_code_commit(buf, len, reloc)
|
||||||
|
#endif
|
||||||
#define MP_SSIZE_MAX (0x7fffffff)
|
#define MP_SSIZE_MAX (0x7fffffff)
|
||||||
|
|
||||||
#if MICROPY_PY_SOCKET_EVENTS
|
#if MICROPY_PY_SOCKET_EVENTS
|
||||||
|
|||||||
Reference in New Issue
Block a user