arch/xtensa/esp32_esp32s3: prevent arch's libc in the userspace
ESP32 and ESP32-S3 should use the ROM-defined versions of the libc in flat build and, when building the protected mode, in the kernel. The ROM-defined version of the libc functions can't be used in the userspace, however, because it isn't allowed to access the memory region in flash directly from the userspace. That being said, `LIBC_PREVENT_STRING_KERNEL` should be selected to avoid building any implementation of the libc, being the ROM-defined versions linked instead. NuttX's software implemented version of the libc will be built in the userspace. Also, the assembly-defined version of some of the libc functions (`XTENSA_xxx`) may also be selected to be used in the userspace.
This commit is contained in:
parent
58e97e521c
commit
496a77653a
@ -21,6 +21,7 @@ config ARCH_CHIP_ESP32
|
||||
select ARCH_HAVE_TESTSET
|
||||
select ARCH_HAVE_TEXT_HEAP
|
||||
select ARCH_VECNOTIRQ
|
||||
select LIBC_PREVENT_STRING_KERNEL
|
||||
select LIBC_ARCH_ATOMIC
|
||||
select LIBC_ARCH_MEMCPY if BUILD_FLAT
|
||||
select LIBC_ARCH_MEMCHR if BUILD_FLAT
|
||||
@ -83,6 +84,7 @@ config ARCH_CHIP_ESP32S3
|
||||
select ARCH_HAVE_RESET
|
||||
select ARCH_HAVE_TESTSET
|
||||
select ARCH_VECNOTIRQ
|
||||
select LIBC_PREVENT_STRING_KERNEL
|
||||
select LIBC_ARCH_MEMCPY if BUILD_FLAT
|
||||
select LIBC_ARCH_MEMCHR if BUILD_FLAT
|
||||
select LIBC_ARCH_MEMCMP if BUILD_FLAT
|
||||
|
Loading…
Reference in New Issue
Block a user