@ -31,6 +31,10 @@
# include "mpconfigboard.h"
# include "mpconfigboard_common.h"
# ifndef MICROPY_CONFIG_ROM_LEVEL
# define MICROPY_CONFIG_ROM_LEVEL (MICROPY_CONFIG_ROM_LEVEL_EXTRA_FEATURES)
# endif
// memory allocation policies
# ifndef MICROPY_GC_STACK_ENTRY_TYPE
# if MICROPY_HW_SDRAM_SIZE
@ -41,6 +45,16 @@
# endif
# define MICROPY_ALLOC_PATH_MAX (128)
// optimisations
# ifndef MICROPY_OPT_COMPUTED_GOTO
# define MICROPY_OPT_COMPUTED_GOTO (1)
# endif
// Don't enable lookup cache on M0 (low RAM)
# ifndef MICROPY_OPT_MAP_LOOKUP_CACHE
# define MICROPY_OPT_MAP_LOOKUP_CACHE (__CORTEX_M > 0)
# endif
// emitters
# define MICROPY_PERSISTENT_CODE_LOAD (1)
# ifndef MICROPY_EMIT_THUMB
@ -50,146 +64,41 @@
# define MICROPY_EMIT_INLINE_THUMB (1)
# endif
// compiler configuration
# define MICROPY_COMP_MODULE_CONST (1)
# define MICROPY_COMP_TRIPLE_TUPLE_ASSIGN (1)
# define MICROPY_COMP_RETURN_IF_EXPR (1)
// optimisations
# ifndef MICROPY_OPT_COMPUTED_GOTO
# define MICROPY_OPT_COMPUTED_GOTO (1)
# endif
# ifndef MICROPY_OPT_LOAD_ATTR_FAST_PATH
# define MICROPY_OPT_LOAD_ATTR_FAST_PATH (1)
# endif
# ifndef MICROPY_OPT_MAP_LOOKUP_CACHE
# define MICROPY_OPT_MAP_LOOKUP_CACHE (__CORTEX_M > 0)
# endif
# define MICROPY_OPT_MPZ_BITWISE (1)
# define MICROPY_OPT_MATH_FACTORIAL (1)
// Python internal features
# define MICROPY_READER_VFS (1)
# define MICROPY_ENABLE_GC (1)
# define MICROPY_ENABLE_FINALISER (1)
# define MICROPY_STACK_CHECK (1)
# define MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF (1)
# define MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE (0)
# define MICROPY_KBD_EXCEPTION (1)
# define MICROPY_HELPER_REPL (1)
# define MICROPY_REPL_INFO (1)
# define MICROPY_REPL_EMACS_KEYS (1)
# define MICROPY_REPL_AUTO_INDENT (1)
# define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_MPZ)
# define MICROPY_ENABLE_SOURCE_LINE (1)
# ifndef MICROPY_FLOAT_IMPL // can be configured by each board via mpconfigboard.mk
# define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_FLOAT)
# endif
# define MICROPY_STREAMS_NON_BLOCK (1)
# define MICROPY_MODULE_BUILTIN_INIT (1)
# define MICROPY_MODULE_WEAK_LINKS (1)
# define MICROPY_CAN_OVERRIDE_BUILTINS (1)
# define MICROPY_USE_INTERNAL_ERRNO (1)
# define MICROPY_ENABLE_SCHEDULER (1)
# define MICROPY_SCHEDULER_DEPTH (8)
# define MICROPY_VFS (1)
// control over Python builtins
# define MICROPY_PY_FUNCTION_ATTRS (1)
# define MICROPY_PY_DESCRIPTORS (1)
# define MICROPY_PY_DELATTR_SETATTR (1)
# ifndef MICROPY_PY_FSTRINGS
# define MICROPY_PY_FSTRINGS (1)
# endif
# define MICROPY_PY_BUILTINS_STR_UNICODE (1)
# define MICROPY_PY_BUILTINS_STR_CENTER (1)
# define MICROPY_PY_BUILTINS_STR_PARTITION (1)
# define MICROPY_PY_BUILTINS_STR_SPLITLINES (1)
# define MICROPY_PY_BUILTINS_MEMORYVIEW (1)
# define MICROPY_PY_BUILTINS_FROZENSET (1)
# define MICROPY_PY_BUILTINS_SLICE_ATTRS (1)
# define MICROPY_PY_BUILTINS_SLICE_INDICES (1)
# define MICROPY_PY_BUILTINS_ROUND_INT (1)
# define MICROPY_PY_ALL_SPECIAL_METHODS (1)
# define MICROPY_PY_REVERSE_SPECIAL_METHODS (1)
# define MICROPY_PY_BUILTINS_COMPILE (MICROPY_ENABLE_COMPILER)
# define MICROPY_PY_BUILTINS_EXECFILE (MICROPY_ENABLE_COMPILER)
# define MICROPY_PY_BUILTINS_NOTIMPLEMENTED (1)
# define MICROPY_PY_BUILTINS_INPUT (1)
# define MICROPY_PY_BUILTINS_POW3 (1)
# define MICROPY_PY_BUILTINS_HELP (1)
# ifndef MICROPY_PY_BUILTINS_HELP_TEXT
# define MICROPY_PY_BUILTINS_HELP_TEXT stm32_help_text
# endif
# define MICROPY_PY_BUILTINS_HELP_MODULES (1)
# define MICROPY_PY_MICROPYTHON_MEM_INFO (1)
# define MICROPY_PY_ARRAY_SLICE_ASSIGN (1)
# define MICROPY_PY_COLLECTIONS_DEQUE (1)
# define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
# define MICROPY_PY_MATH_SPECIAL_FUNCTIONS (1)
# define MICROPY_PY_MATH_ISCLOSE (1)
# define MICROPY_PY_MATH_FACTORIAL (1)
# define MICROPY_PY_CMATH (1)
# define MICROPY_PY_IO (1)
# define MICROPY_PY_IO_IOBASE (1)
# define MICROPY_PY_IO_FILEIO (MICROPY_VFS_FAT || MICROPY_VFS_LFS1 || MICROPY_VFS_LFS2)
# define MICROPY_PY_SYS_MAXSIZE (1)
# define MICROPY_PY_SYS_EXIT (1)
# define MICROPY_PY_SYS_STDFILES (1)
# define MICROPY_PY_SYS_STDIO_BUFFER (1)
# ifndef MICROPY_PY_SYS_PLATFORM // let boards override it if they want
# define MICROPY_PY_SYS_PLATFORM "pyboard"
# endif
# define MICROPY_PY_UERRNO (1)
# ifndef MICROPY_PY_THREAD
# define MICROPY_PY_THREAD (0)
# endif
// extended modules
# ifndef MICROPY_PY_UASYNCIO
# define MICROPY_PY_UASYNCIO (1)
# endif
# ifndef MICROPY_PY_UCTYPES
# define MICROPY_PY_UCTYPES (1)
# endif
# ifndef MICROPY_PY_UZLIB
# define MICROPY_PY_UZLIB (1)
# endif
# ifndef MICROPY_PY_UJSON
# define MICROPY_PY_UJSON (1)
# endif
# ifndef MICROPY_PY_URE
# define MICROPY_PY_URE (1)
# endif
# ifndef MICROPY_PY_URE_SUB
# define MICROPY_PY_URE_SUB (1)
# endif
# ifndef MICROPY_PY_UHEAPQ
# define MICROPY_PY_UHEAPQ (1)
# endif
# ifndef MICROPY_PY_UHASHLIB
# define MICROPY_PY_UHASHLIB (1)
# endif
# define MICROPY_PY_UHASHLIB_MD5 (MICROPY_PY_USSL)
# define MICROPY_PY_UHASHLIB_SHA1 (MICROPY_PY_USSL)
# define MICROPY_PY_UCRYPTOLIB (MICROPY_PY_USSL)
# ifndef MICROPY_PY_UBINASCII
# define MICROPY_PY_UBINASCII (1)
# define MICROPY_PY_UBINASCII_CRC32 (1)
# endif
# ifndef MICROPY_PY_UOS
# define MICROPY_PY_UOS (1)
# endif
# define MICROPY_PY_OS_DUPTERM (3)
# define MICROPY_PY_UOS_DUPTERM_BUILTIN_STREAM (1)
# ifndef MICROPY_PY_URANDOM
# define MICROPY_PY_URANDOM (1)
# define MICROPY_PY_URANDOM_SEED_INIT_FUNC (rng_get())
# endif
# ifndef MICROPY_PY_URANDOM_EXTRA_FUNCS
# define MICROPY_PY_URANDOM_EXTRA_FUNCS (1)
# endif
# define MICROPY_PY_USELECT (1)
# ifndef MICROPY_PY_UTIME
# define MICROPY_PY_UTIME (1)
# endif
@ -216,9 +125,6 @@
# define MICROPY_HW_SOFTSPI_MAX_BAUDRATE (HAL_RCC_GetSysClockFreq() / 48)
# define MICROPY_PY_UWEBSOCKET (MICROPY_PY_LWIP)
# define MICROPY_PY_WEBREPL (MICROPY_PY_LWIP)
# ifndef MICROPY_PY_FRAMEBUF
# define MICROPY_PY_FRAMEBUF (1)
# endif
# ifndef MICROPY_PY_USOCKET
# define MICROPY_PY_USOCKET (1)
# endif