diff --git a/apps/examples/hello/hello_main.c b/apps/examples/hello/hello_main.c index ada58ad5d5..6079004dcb 100644 --- a/apps/examples/hello/hello_main.c +++ b/apps/examples/hello/hello_main.c @@ -67,6 +67,7 @@ int main(int argc, FAR char *argv[]) int hello_main(int argc, char *argv[]) #endif { - printf("Hello, World!!\n"); + int b; + printf("Hello, World!! %d\n", __gnu_Unwind_Find_exidx(0, &b)); return 0; } diff --git a/apps/examples/helloxx/helloxx_main.cxx b/apps/examples/helloxx/helloxx_main.cxx index a4d7118835..9ff243631e 100644 --- a/apps/examples/helloxx/helloxx_main.cxx +++ b/apps/examples/helloxx/helloxx_main.cxx @@ -144,6 +144,21 @@ static CHelloWorld g_HelloWorld; * Name: helloxx_main ****************************************************************************/ +static void test_exception(void) +{ + printf("============ Test Exception =============================\n"); + try + { + throw 5; + } + + catch (int e) + { + printf("Catch exception\n"); + } +} + + extern "C" { int helloxx_main(int argc, char *argv[]) @@ -172,8 +187,11 @@ extern "C" printf("helloxx_main: Saying hello from the statically constructed instance\n"); g_HelloWorld.HelloWorld(); #endif - + delete pHelloWorld; + + test_exception(); + return 0; } } diff --git a/apps/platform/gnu/Make.defs b/apps/platform/gnu/Make.defs index b9b4ba1c5f..ef7980715e 100644 --- a/apps/platform/gnu/Make.defs +++ b/apps/platform/gnu/Make.defs @@ -56,6 +56,10 @@ ifeq ($(CONFIG_HAVE_CXXINITIALIZE),y) CSRCS += gnu_cxxinitialize.c endif +ifeq ($(CONFIG_LIBCXX_EXCEPTION),y) +CSRCS += gnu_unwind_find_exidx.c +endif + # Add the gnu/ sub-directory to the build VPATH += :gnu diff --git a/apps/platform/gnu/gnu_unwind_find_exidx.c b/apps/platform/gnu/gnu_unwind_find_exidx.c new file mode 100644 index 0000000000..36ed4274dc --- /dev/null +++ b/apps/platform/gnu/gnu_unwind_find_exidx.c @@ -0,0 +1,56 @@ +/**************************************************************************** + * + * Copyright 2023 Samsung Electronics All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific + * language governing permissions and limitations under the License. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include +#include + +#include + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +extern void *__exidx_start; +extern void *__exidx_end; + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: __gnu_Unwind_Find_exidx + * + * Description: + * This function is called (if exists) by the gcc generated unwind + * run-time in order to retrieve an alternative .ARM.exidx Exception + * index section. + * This is the case for an ELF module loaded by the elf binary loader. + * It is needed to support exception handling for loadable ELF modules. + * + ****************************************************************************/ + +_Unwind_Ptr __gnu_Unwind_Find_exidx(_Unwind_Ptr return_address, int *nrecp) +{ + *nrecp = &__exidx_end - &__exidx_start; + return (_Unwind_Ptr)&__exidx_start; +} diff --git a/build/configs/rtl8721csm/cpp_loadable_exception/defconfig b/build/configs/rtl8721csm/cpp_loadable_exception/defconfig new file mode 100644 index 0000000000..f35e0e82ae --- /dev/null +++ b/build/configs/rtl8721csm/cpp_loadable_exception/defconfig @@ -0,0 +1,1630 @@ +# +# Automatically generated file; DO NOT EDIT. +# TinyAra Configuration +# + +# +# Build Setup +# +# CONFIG_EXPERIMENTAL is not set +# CONFIG_DEFAULT_SMALL is not set +CONFIG_HOST_LINUX=y +# CONFIG_HOST_OSX is not set +# CONFIG_HOST_WINDOWS is not set +# CONFIG_HOST_OTHER is not set +# CONFIG_WINDOWS_NATIVE is not set + +# +# Build Configuration +# +CONFIG_APPS_DIR="../apps" +CONFIG_FRAMEWORK_DIR="../framework" +CONFIG_TOOLS_DIR="../tools" +# CONFIG_BUILD_FLAT is not set +CONFIG_APP_BINARY_SEPARATION=y +CONFIG_NUM_APPS=5 +# CONFIG_APPS_RAM_REGION_SHAREABLE is not set +# CONFIG_SUPPORT_COMMON_BINARY is not set +CONFIG_BUILD_PROTECTED=y +CONFIG_BUILD_2PASS=y +CONFIG_PASS1_TARGET="all" +CONFIG_PASS1_OBJECT="" +CONFIG_BOARD_BUILD_DATE="200204" +# CONFIG_BINARY_SIGNING is not set + +# +# Binary Output Formats +# +CONFIG_INTELHEX_BINARY=y +# CONFIG_MOTOROLA_SREC is not set +CONFIG_RAW_BINARY=y +# CONFIG_UBOOT_UIMAGE is not set +# CONFIG_DOWNLOAD_IMAGE is not set + +# +# Customize Header Files +# +# CONFIG_ARCH_STDINT_H is not set +# CONFIG_ARCH_STDBOOL_H is not set +# CONFIG_ARCH_MATH_H is not set +# CONFIG_ARCH_FLOAT_H is not set +# CONFIG_ARCH_STDARG_H is not set +CONFIG_ARCH_HAVE_CUSTOMOPT=y +# CONFIG_DEBUG_NOOPT is not set +# CONFIG_DEBUG_CUSTOMOPT is not set +CONFIG_DEBUG_FULLOPT=y + +# +# Chip Selection +# +CONFIG_ARCH_ARM=y +# CONFIG_ARCH_XTENSA is not set +CONFIG_ARCH="arm" +# CONFIG_ARCH_CHIP_LM is not set +# CONFIG_ARCH_CHIP_S5J is not set +# CONFIG_ARCH_CHIP_BCM4390X is not set +# CONFIG_ARCH_CHIP_IMX6 is not set +# CONFIG_ARCH_CHIP_STM32 is not set +# CONFIG_ARCH_CHIP_IMXRT is not set +# CONFIG_ARCH_CHIP_STM32L4 is not set +CONFIG_ARCH_CHIP_AMEBAD=y +# CONFIG_ARCH_CHIP_STM32H745 is not set +# CONFIG_ARCH_CHIP_AMEBALITE is not set +# CONFIG_ARCH_CHIP_AMEBASMART is not set +CONFIG_ARCH_CHIP="amebad" +# CONFIG_ARM_THUMB is not set +# CONFIG_ARM_HAVE_DPFPU32 is not set +# CONFIG_ARM_HAVE_NEON is not set +# CONFIG_ARM_FPU_ABI_SOFT is not set +# CONFIG_ARM_HAVE_MPCORE is not set + +# +# ARM Options +# +# CONFIG_ARCH_CORTEXM3 is not set +# CONFIG_ARCH_CORTEXM4 is not set +# CONFIG_ARCH_CORTEXM7 is not set +CONFIG_ARCH_CORTEXM33=y +# CONFIG_ARCH_CORTEXM55 is not set +# CONFIG_ARCH_CORTEXA9 is not set +# CONFIG_ARCH_CORTEXR4 is not set +# CONFIG_ARCH_CORTEXA32 is not set +# CONFIG_ARCH_ARMV7M_FAMILY is not set +CONFIG_ARCH_ARMV8M_FAMILY=y +# CONFIG_ARCH_ARMV7R_FAMILY is not set +# CONFIG_ARCH_ARMV7A_FAMILY is not set +CONFIG_ARCH_FAMILY="armv8-m" +CONFIG_ARCH_HAVE_CMNVECTOR=y +CONFIG_ARM_CMNVECTOR=y +CONFIG_ARCH_HAVE_FPU=y +# CONFIG_ARCH_HAVE_DPFPU is not set +CONFIG_ARCH_HAVE_LAZYFPU=y +# CONFIG_ARCH_FPU is not set +# CONFIG_ARM_HAVE_MPU_UNIFIED is not set +CONFIG_ARM_MPU=y +CONFIG_ARMV8M_MPU=y +CONFIG_ARMV8M_MPU_NREGIONS=8 +# CONFIG_DEBUG_HARDFAULT is not set + +# +# Exception stack options +# +# CONFIG_ARCH_HAVE_DABORTSTACK is not set +CONFIG_REG_STACK_OVERFLOW_PROTECTION=y +# CONFIG_STACK_OVERFLOW_PROTECTION_DISABLE is not set +# CONFIG_SYSTEM_REBOOT_REASON is not set + +# +# ARMV8M Configuration Options +# +CONFIG_ARMV8M_HAVE_ICACHE=y +CONFIG_ARMV8M_HAVE_DCACHE=y +# CONFIG_ARMV8M_LAZYFPU is not set +CONFIG_ARMV8M_USEBASEPRI=y +CONFIG_ARMV8M_TRUSTZONE=y +CONFIG_ARMV8M_ICACHE=y +CONFIG_ARMV8M_DCACHE=y +# CONFIG_ARMV8M_DCACHE_WRITETHROUGH is not set +# CONFIG_ARMV8M_HAVE_ITCM is not set +# CONFIG_ARMV8M_HAVE_DTCM is not set +# CONFIG_ARMV8M_TOOLCHAIN_BUILDROOT is not set +# CONFIG_ARMV8M_TOOLCHAIN_CODEREDL is not set +# CONFIG_ARMV8M_TOOLCHAIN_CODESOURCERYL is not set +CONFIG_ARMV8M_TOOLCHAIN_GNU_EABIL=y +# CONFIG_ARMV8M_TOOLCHAIN_CLANGL is not set +CONFIG_ARMV8M_TARGET2_PREL=y +# CONFIG_ARMV8M_HAVE_STACKCHECK is not set +# CONFIG_ARMV8M_ITMSYSLOG is not set + +# +# AMEBAD Configuration Options +# +CONFIG_ARCH_CHIP_RTL8721CSM=y + +# +# Realtek RTL8721D Peripheral Support +# +CONFIG_RTL8721D_UART=y +CONFIG_RTL8721D_UART0=y +CONFIG_RTL8721D_UART1=y +CONFIG_RTL8721D_UART2=y +# CONFIG_RTL8721D_SERIAL_FIFO is not set +# CONFIG_AMEBAD_I2S is not set +# CONFIG_AMEBAD_I2C_DYNTIMEO is not set +CONFIG_AMEBAD_I2CTIMEOSEC=0 +CONFIG_AMEBAD_I2CTIMEOMS=500 +CONFIG_AMEBAD_I2CTIMEOTICKS=500 +# CONFIG_AMEBAD_SPI is not set + +# +# Realtek RTL8721D WIFI Support +# +CONFIG_AMEBAD_WIFI=y + +# +# Realtek RTL8721D BLE Support +# +# CONFIG_AMEBAD_BLE is not set + +# +# Realtek RTL8721D TrustZone Support +# +CONFIG_AMEBAD_TRUSTZONE=y +# CONFIG_AMEBAD_RDP is not set + +# +# Realtek RTL8721D CMSIS_NN Support +# +# CONFIG_AMEBAD_CMSIS_NN is not set + +# +# Architecture Options +# +# CONFIG_ARCH_NOINTC is not set +# CONFIG_ARCH_VECNOTIRQ is not set +# CONFIG_ARCH_DMA is not set +CONFIG_ARCH_HAVE_IRQPRIO=y +# CONFIG_ARCH_L2CACHE is not set +# CONFIG_ARCH_HAVE_COHERENT_DCACHE is not set +# CONFIG_ARCH_HAVE_ADDRENV is not set +# CONFIG_ARCH_NEED_ADDRENV_MAPPING is not set +# CONFIG_ARCH_HAVE_MULTICPU is not set +CONFIG_ARCH_HAVE_VFORK=y +# CONFIG_ARCH_HAVE_MMU is not set +CONFIG_ARCH_HAVE_MPU=y +# CONFIG_ARCH_NAND_HWECC is not set +# CONFIG_ARCH_HAVE_EXTCLK is not set +# CONFIG_ARCH_HAVE_POWEROFF is not set +CONFIG_ARCH_HAVE_RESET=y +# CONFIG_ARCH_HAVE_FETCHADD is not set +CONFIG_ARCH_USE_MPU=y +CONFIG_ARCH_IRQPRIO=y +# CONFIG_ARCH_TASKDUMP is not set +CONFIG_ARCH_STACKDUMP=y +CONFIG_ARCH_STACKDUMP_MAX_LENGTH=0 +# CONFIG_ENDIAN_BIG is not set +# CONFIG_ARCH_IDLE_CUSTOM is not set +# CONFIG_ARCH_HAVE_RAMFUNCS is not set +CONFIG_ARCH_HAVE_RAMVECTORS=y +# CONFIG_ARCH_RAMVECTORS is not set +# CONFIG_SUPPRESS_INTERRUPTS is not set +# CONFIG_SUPPRESS_TIMER_INTS is not set + +# +# Board Settings +# +CONFIG_BOARD_LOOPSPERMSEC=22222 +# CONFIG_ARCH_CALIBRATION is not set + +# +# Interrupt options +# +CONFIG_ARCH_HAVE_INTERRUPTSTACK=y +CONFIG_ARCH_INTERRUPTSTACK=0 +CONFIG_ARCH_NESTED_IRQ_STACK_SIZE=512 +CONFIG_ARCH_HAVE_NESTED_INTERRUPT=y +CONFIG_ARCH_HAVE_HIPRI_INTERRUPT=y +# CONFIG_ARCH_HIPRI_INTERRUPT is not set + +# +# Boot options +# +# CONFIG_BOOT_RUNFROMEXTSRAM is not set +CONFIG_BOOT_RUNFROMFLASH=y +# CONFIG_BOOT_RUNFROMISRAM is not set +# CONFIG_BOOT_RUNFROMSDRAM is not set +# CONFIG_BOOT_COPYTORAM is not set + +# +# Boot Memory Configuration +# +CONFIG_RAM_START=0x0 +CONFIG_RAM_SIZE=0 +CONFIG_RAM_KREGIONx_START="0x10005000,0x02000000,0x02100000" +CONFIG_RAM_KREGIONx_SIZE="466944,1048576,2859008," +CONFIG_RAM_KREGIONx_HEAP_INDEX="0,0,1," +CONFIG_HEAP_INDEX_LOADED_APP=1 +CONFIG_RAM_MALLOC_PRIOR_INDEX=0 +# CONFIG_DDR is not set +# CONFIG_ARCH_HAVE_SDRAM is not set + +# +# Board Selection +# +CONFIG_ARCH_BOARD_RTL8721CSM=y +# CONFIG_ARCH_BOARD_ARTIK05X_FAMILY is not set +# CONFIG_ARCH_BOARD_ESP32_FAMILY is not set +CONFIG_ARCH_BOARD="rtl8721csm" + +# +# Common Board Options +# +CONFIG_ARCH_HAVE_BUTTONS=y +CONFIG_ARCH_BUTTONS=y +CONFIG_ARCH_HAVE_IRQBUTTONS=y +# CONFIG_ARCH_IRQBUTTONS is not set +CONFIG_ARCH_HAVE_RAM_KERNEL_TEXT=y +# CONFIG_BOARD_CRASHDUMP is not set +# CONFIG_BOARD_ASSERT_AUTORESET is not set +CONFIG_BOARD_ASSERT_SYSTEM_HALT=y +CONFIG_LIB_BOARDCTL=y +CONFIG_BOARDCTL_RESET=y +# CONFIG_BOARDCTL_BOARD_HEADER is not set +# CONFIG_BOARDCTL_UNIQUEID is not set +# CONFIG_BOARD_FOTA_SUPPORT is not set + +# +# Board-Specific Options +# +CONFIG_FLASH_START_ADDR=0x8000000 +CONFIG_FLASH_SIZE=8388608 +CONFIG_BOOTLOADER_DYNAMIC_PARTITIONS=y + +# +# SPI Flash driver +# +CONFIG_AMEBAD_FLASH_BASE=0x0 +CONFIG_AMEBAD_FLASH_CAPACITY=0x800000 +CONFIG_AMEBAD_FLASH_PAGE_SIZE=256 +CONFIG_AMEBAD_FLASH_BLOCK_SIZE=4096 +CONFIG_ARCH_BOARD_HAVE_FLASH=y + +# +# Board-Partition Options +# +CONFIG_FLASH_PARTITION=y +CONFIG_FLASH_MINOR=0 +CONFIG_FLASH_PART_SIZE="16,8,16,472,8,2292,2292,512,512,516,516,1024,8," +CONFIG_FLASH_PART_TYPE="none,none,none,none,none,kernel,kernel,bin,bin,bin,bin,smartfs,bootparam," +CONFIG_FLASH_PART_NAME="bl1,bl2,reserved,ss,system_data,kernel,kernel,app1,app1,app2,app2,userfs,bootparam," +# CONFIG_ARCH_BOARD_HAVE_SECOND_FLASH is not set +CONFIG_AUTOMOUNT=y +CONFIG_AUTOMOUNT_USERFS=y +# CONFIG_BOARD_USBDEV_SERIALSTR is not set + +# +# SE Selection +# +CONFIG_SE=y +# CONFIG_DEBUG_SECURE_ELEMENT_ERROR is not set +# CONFIG_SE_SSS is not set +# CONFIG_SE_KONAI is not set +# CONFIG_SE_VIRTUAL is not set +CONFIG_SE_AMEBA=y +CONFIG_HW_RNG=y +CONFIG_HW_DH_PARAM=y +CONFIG_HW_ECDH_PARAM=y +CONFIG_HW_RSA_VERIFICATION=y +CONFIG_HW_ECDSA_VERIFICATION=y +CONFIG_HW_RSA_ENC=y +CONFIG_HW_SE_STORAGE=y +# CONFIG_HW_AES_ENC is not set +CONFIG_SE_SECURE_CONTEXT_SIZE=6144 +CONFIG_SECURITY_LEVEL=y + +# +# Crypto Module +# +# CONFIG_CRYPTO is not set + +# +# Kernel Features +# +CONFIG_DISABLE_OS_API=y +# CONFIG_DISABLE_POSIX_TIMERS is not set +# CONFIG_DISABLE_PTHREAD is not set +# CONFIG_DISABLE_SIGNALS is not set +# CONFIG_DISABLE_MQUEUE is not set +# CONFIG_DISABLE_ENVIRON is not set + +# +# Clocks and Timers +# +CONFIG_USEC_PER_TICK=1000 +CONFIG_SYSTEM_TIME64=y +# CONFIG_CLOCK_MONOTONIC is not set +# CONFIG_JULIAN_TIME is not set +CONFIG_START_YEAR=2011 +CONFIG_START_MONTH=12 +CONFIG_START_DAY=6 +CONFIG_MAX_WDOGPARMS=4 +CONFIG_PREALLOC_WDOGS=32 +CONFIG_WDOG_INTRESERVE=4 +CONFIG_PREALLOC_TIMERS=8 + +# +# Tasks and Scheduling +# +CONFIG_INIT_ENTRYPOINT=y +CONFIG_RR_INTERVAL=10 +CONFIG_TASK_NAME_SIZE=31 +CONFIG_MAX_TASKS=32 +CONFIG_SCHED_HAVE_PARENT=y +# CONFIG_SCHED_CHILD_STATUS is not set +CONFIG_SCHED_WAITPID=y +CONFIG_SIGKILL_HANDLER=y + +# +# Pthread Options +# +CONFIG_PTHREAD_MUTEX_TYPES=y +# CONFIG_PTHREAD_MUTEX_ROBUST is not set +CONFIG_PTHREAD_MUTEX_UNSAFE=y +# CONFIG_PTHREAD_MUTEX_BOTH is not set +CONFIG_NPTHREAD_KEYS=4 +CONFIG_NPTHREAD_DESTRUCTOR_ITERATIONS=4 +# CONFIG_PTHREAD_CLEANUP is not set +# CONFIG_CANCELLATION_POINTS is not set + +# +# Performance Monitoring +# +# CONFIG_SCHED_CPULOAD is not set + +# +# Latency optimization +# +# CONFIG_SCHED_YIELD_OPTIMIZATION is not set + +# +# Files and I/O +# +CONFIG_DEV_CONSOLE=y +# CONFIG_FDCLONE_DISABLE is not set +# CONFIG_FDCLONE_STDIO is not set +CONFIG_SDCLONE_DISABLE=y +CONFIG_NFILE_DESCRIPTORS=8 +CONFIG_NFILE_STREAMS=8 +CONFIG_NAME_MAX=32 +# CONFIG_PRIORITY_INHERITANCE is not set + +# +# RTOS hooks +# +CONFIG_BOARD_INITIALIZE=y +# CONFIG_BOARD_INITTHREAD is not set +CONFIG_SCHED_STARTHOOK=y +CONFIG_SCHED_ATEXIT=y +CONFIG_SCHED_ONEXIT=y + +# +# Signal Numbers +# +CONFIG_SIG_SIGUSR1=1 +CONFIG_SIG_SIGUSR2=2 +CONFIG_SIG_SIGALARM=3 +CONFIG_SIG_SIGCHLD=4 +CONFIG_SIG_SIGBM_STATE=15 +CONFIG_SIG_SIGCONDTIMEDOUT=16 +CONFIG_SIG_SIGWORK=17 + +# +# POSIX Message Queue Options +# +CONFIG_PREALLOC_MQ_MSGS=32 +CONFIG_MQ_MAXMSGSIZE=256 + +# +# Stack size information +# +CONFIG_IDLETHREAD_STACKSIZE=1024 +CONFIG_USERMAIN_STACKSIZE=2048 +# CONFIG_MPU_STACKGAURD is not set +CONFIG_PTHREAD_STACK_MIN=256 +CONFIG_PTHREAD_STACK_DEFAULT=2048 +# CONFIG_LOG_DUMP is not set + +# +# Device Drivers +# +# CONFIG_DISABLE_POLL is not set +CONFIG_DEV_NULL=y +CONFIG_DEV_URANDOM=y +CONFIG_DEV_URANDOM_XORSHIFT128=y +# CONFIG_DEV_URANDOM_CONGRUENTIAL is not set +CONFIG_DEV_ZERO=y +# CONFIG_DRVR_WRITEBUFFER is not set +# CONFIG_DRVR_READAHEAD is not set +# CONFIG_CAN is not set +# CONFIG_ARCH_HAVE_PWM_PULSECOUNT is not set +# CONFIG_ARCH_HAVE_PWM_MULTICHAN is not set +# CONFIG_PWM is not set +CONFIG_ARCH_HAVE_I2CRESET=y +# CONFIG_I2C is not set +CONFIG_SPI=y +CONFIG_SPI_USERIO=y +# CONFIG_SPI_OWNBUS is not set +CONFIG_SPI_EXCHANGE=y +CONFIG_SPI_CMDDATA=y +# CONFIG_SPI_BITBANG is not set +CONFIG_GPIO=y +# CONFIG_I2S is not set +# CONFIG_AUDIO_DEVICES is not set +# CONFIG_DRIVERS_VIDEO is not set + +# +# LCD Driver Support +# +# CONFIG_LCD is not set +CONFIG_BCH=y +# CONFIG_RTC is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_DEVPATH="/dev/watchdog0" +# CONFIG_WATCHDOG_FOR_IRQ is not set +# CONFIG_TIMER is not set +CONFIG_MMINFO=y +CONFIG_PRODCONFIG=y +# CONFIG_ANALOG is not set +CONFIG_DRIVERS_OS_API_TEST=y +# CONFIG_NETDEVICES is not set +CONFIG_PIPES=y +CONFIG_DEV_PIPE_SIZE=1024 +# CONFIG_POWER is not set +CONFIG_SERIAL=y +# CONFIG_DEV_LOWCONSOLE is not set +# CONFIG_SERIAL_REMOVABLE is not set +CONFIG_SERIAL_CONSOLE=y +# CONFIG_16550_UART is not set +# CONFIG_ARCH_HAVE_UART is not set +CONFIG_ARCH_HAVE_UART0=y +CONFIG_ARCH_HAVE_UART1=y +CONFIG_ARCH_HAVE_UART2=y +# CONFIG_ARCH_HAVE_UART3 is not set +# CONFIG_ARCH_HAVE_UART4 is not set +# CONFIG_ARCH_HAVE_UART5 is not set +# CONFIG_ARCH_HAVE_UART6 is not set +# CONFIG_ARCH_HAVE_UART7 is not set +# CONFIG_ARCH_HAVE_UART8 is not set +# CONFIG_ARCH_HAVE_SCI0 is not set +# CONFIG_ARCH_HAVE_SCI1 is not set +# CONFIG_ARCH_HAVE_USART0 is not set +# CONFIG_ARCH_HAVE_USART1 is not set +# CONFIG_ARCH_HAVE_USART2 is not set +# CONFIG_ARCH_HAVE_USART3 is not set +# CONFIG_ARCH_HAVE_USART4 is not set +# CONFIG_ARCH_HAVE_USART5 is not set +# CONFIG_ARCH_HAVE_USART6 is not set +# CONFIG_ARCH_HAVE_USART7 is not set +# CONFIG_ARCH_HAVE_USART8 is not set +# CONFIG_ARCH_HAVE_OTHER_UART is not set + +# +# USART Configuration +# +# CONFIG_OTHER_UART_SERIALDRIVER is not set +CONFIG_MCU_SERIAL=y +CONFIG_STANDARD_SERIAL=y +CONFIG_SERIAL_NPOLLWAITERS=2 +# CONFIG_SERIAL_IFLOWCONTROL is not set +# CONFIG_SERIAL_OFLOWCONTROL is not set +# CONFIG_SERIAL_TIOCSERGSTRUCT is not set +CONFIG_ARCH_HAVE_SERIAL_TERMIOS=y +CONFIG_SERIAL_TERMIOS=y +# CONFIG_UART0_SERIAL_CONSOLE is not set +# CONFIG_UART1_SERIAL_CONSOLE is not set +CONFIG_UART2_SERIAL_CONSOLE=y +# CONFIG_OTHER_SERIAL_CONSOLE is not set +# CONFIG_NO_SERIAL_CONSOLE is not set + +# +# UART0 Configuration +# +CONFIG_UART0_RXBUFSIZE=1024 +CONFIG_UART0_TXBUFSIZE=1024 +CONFIG_UART0_BAUD=115200 +CONFIG_UART0_BITS=8 +CONFIG_UART0_PARITY=0 +CONFIG_UART0_2STOP=0 +# CONFIG_UART0_IFLOWCONTROL is not set +# CONFIG_UART0_OFLOWCONTROL is not set +# CONFIG_UART_SERIALDRIVER is not set +# CONFIG_UART0_SERIALDRIVER is not set +# CONFIG_UART1_SERIALDRIVER is not set +# CONFIG_UART2_SERIALDRIVER is not set +# CONFIG_UART3_SERIALDRIVER is not set +# CONFIG_UART4_SERIALDRIVER is not set +# CONFIG_UART5_SERIALDRIVER is not set +# CONFIG_UART6_SERIALDRIVER is not set +# CONFIG_UART7_SERIALDRIVER is not set +# CONFIG_UART8_SERIALDRIVER is not set +CONFIG_UART1_RXBUFSIZE=1024 +CONFIG_UART1_TXBUFSIZE=1024 +CONFIG_UART1_BAUD=115200 +CONFIG_UART1_BITS=8 +CONFIG_UART1_PARITY=0 +CONFIG_UART1_2STOP=0 +# CONFIG_UART1_IFLOWCONTROL is not set +# CONFIG_UART1_OFLOWCONTROL is not set +CONFIG_UART2_RXBUFSIZE=1024 +CONFIG_UART2_TXBUFSIZE=1024 +CONFIG_UART2_BAUD=115200 +CONFIG_UART2_BITS=8 +CONFIG_UART2_PARITY=0 +CONFIG_UART2_2STOP=0 +# CONFIG_UART2_IFLOWCONTROL is not set +# CONFIG_UART2_OFLOWCONTROL is not set +# CONFIG_LPUART_SERIALDRIVER is not set +# CONFIG_LPUART0_SERIALDRIVER is not set +# CONFIG_LPUART1_SERIALDRIVER is not set +# CONFIG_LPUART2_SERIALDRIVER is not set +# CONFIG_LPUART3_SERIALDRIVER is not set +# CONFIG_LPUART4_SERIALDRIVER is not set +# CONFIG_LPUART5_SERIALDRIVER is not set +# CONFIG_LPUART6_SERIALDRIVER is not set +# CONFIG_LPUART7_SERIALDRIVER is not set +# CONFIG_LPUART8_SERIALDRIVER is not set + +# +# UART1 Configuration +# + +# +# UART2 Configuration +# +# CONFIG_SENSOR is not set +# CONFIG_USBDEV is not set +# CONFIG_USBHOST is not set +# CONFIG_FOTA_DRIVER is not set + +# +# System Logging +# +# CONFIG_RAMLOG is not set +# CONFIG_SYSLOG_CONSOLE is not set + +# +# T-trace +# +# CONFIG_TTRACE is not set +# CONFIG_IOTDEV is not set + +# +# Wireless Device Options +# +CONFIG_DRIVERS_WIRELESS=y +# CONFIG_DRIVERS_BLUETOOTH is not set +# CONFIG_OTP is not set +CONFIG_SECURITY_LINK_DRV=y +CONFIG_SECURITY_LINK=y + +# +# Networking Support +# +CONFIG_ARCH_HAVE_NET=y +# CONFIG_ARCH_HAVE_PHY is not set +CONFIG_NET=y +CONFIG_NET_LWIP=y + +# +# LwIP options +# +CONFIG_NET_IPv4=y +CONFIG_NET_IP_DEFAULT_TTL=255 +# CONFIG_NET_IP_FORWARD is not set +CONFIG_NET_IP_OPTIONS_ALLOWED=y +CONFIG_NET_IP_FRAG=y +CONFIG_NET_IP_REASSEMBLY=y +CONFIG_NET_IPV4_REASS_MAX_PBUFS=60 +CONFIG_NET_IPV4_REASS_MAXAGE=5 +CONFIG_NET_ICMP=y +CONFIG_NET_ICMP_TTL=255 +# CONFIG_NET_BROADCAST_PING is not set +# CONFIG_NET_MULTICAST_PING4 is not set +CONFIG_NET_LWIP_IGMP=y +CONFIG_NET_LWIP_MEMP_NUM_IGMP_GROUP=8 +CONFIG_NET_ARP=y +CONFIG_NET_ARP_TABLESIZE=10 +CONFIG_NET_ARP_QUEUEING=y +CONFIG_NET_ETHARP_TRUST_IP_MAC=y +CONFIG_NET_ETH_PAD_SIZE=0 +# CONFIG_NET_ARP_STATIC_ENTRIES is not set +CONFIG_NET_UDP=y +# CONFIG_NET_NETBUF_RECVINFO is not set +CONFIG_NET_UDP_TTL=255 +# CONFIG_NET_UDPLITE is not set +CONFIG_NET_TCP=y +CONFIG_NET_TCP_TTL=255 +CONFIG_NET_TCP_WND=58400 +# CONFIG_NET_WND_SCALE is not set +CONFIG_NET_TCP_MAXRTX=12 +CONFIG_NET_TCP_SYNMAXRTX=6 +CONFIG_NET_TCP_QUEUE_OOSEQ=y +CONFIG_NET_TCP_MSS=1460 +CONFIG_NET_TCP_CALCULATE_EFF_SEND_MSS=y +CONFIG_NET_TCP_SND_BUF=29200 +CONFIG_NET_TCP_SND_QUEUELEN=80 +CONFIG_NET_TCP_OOSEQ_MAX_BYTES=0 +CONFIG_NET_TCP_OOSEQ_MAX_PBUFS=0 +# CONFIG_NET_TCP_LISTEN_BACKLOG is not set +CONFIG_NET_TCP_OVERSIZE=1460 +# CONFIG_NET_TCP_TIMESTAMPS is not set +CONFIG_NET_TCP_WND_UPDATE_THRESHOLD=29200 +CONFIG_NET_IPv6=y +CONFIG_NET_IPv6_NUM_ADDRESSES=3 +# CONFIG_NET_IPv6_FORWARD is not set +# CONFIG_NET_IPv6_FRAG is not set +CONFIG_NET_IPv6_REASS=y +CONFIG_NET_IPV6_REASS_MAXAGE=60 +CONFIG_NET_IPv6_SEND_ROUTER_SOLICIT=y +CONFIG_NET_IPv6_AUTOCONFIG=y +CONFIG_NET_IPv6_DUP_DETECT_ATTEMPTS=1 +# CONFIG_NET_IPv6_PMTU_FOR_MULTICAST is not set + +# +# Neighbor Discovery (RFC 4861) +# +CONFIG_NET_IPv6_ND=y +CONFIG_NET_IPv6_ND_QUEUEING=y +CONFIG_NET_IPv6_ND_QUEUE=20 +CONFIG_NET_IPv6_ND_NUM_NEIGHBORS=10 +CONFIG_NET_IPv6_ND_NUM_DESTINATIONS=10 +CONFIG_NET_IPv6_ND_NUM_PREFIXES=5 +CONFIG_NET_IPv6_ND_NUM_ROUTERS=3 +CONFIG_NET_IPv6_ND_MAX_MULTICAST_SOLICIT=3 +CONFIG_NET_IPv6_ND_MAX_UNICAST_SOLICIT=3 +CONFIG_NET_IPv6_ND_MAX_SOLICIT_INTERVAL=4000 +CONFIG_NET_IPv6_ND_REACHABLE_TIME=30000 +CONFIG_NET_IPv6_ND_RETRANS_TIMER=1005 +CONFIG_NET_IPv6_ND_DELAY_FIRST_PROBE_TIME=5000 +CONFIG_NET_IPv6_ND_ALLOW_RA_UPDATES=y +CONFIG_NET_IPv6_ND_TCP_REACHABILITY_HINTS=y +CONFIG_NET_IPv6_ND_RDNSS_MAX_DNS_SERVERS=0 + +# +# ICMPv6 (RFC 4443) +# +CONFIG_NET_IPv6_ICMP=y +CONFIG_NET_IPv6_ICMP_DATASIZE=8 +CONFIG_NET_IPv6_ICMP_HL=255 +# CONFIG_NET_MULTICAST_PING6 is not set +CONFIG_NET_IPv6_MLD=y +CONFIG_NET_IPv6_MLD_GROUP=4 +# CONFIG_NET_IPv6_DHCP is not set + +# +# Socket support +# +CONFIG_NET_SOCKET=y +CONFIG_NBSDSOCKET_DESCRIPTORS=20 +CONFIG_NET_TCP_KEEPALIVE=y +CONFIG_NET_RAW=y +# CONFIG_NET_SOCKET_OPTION_BROADCAST is not set +# CONFIG_NET_RANDOMIZE_INITIAL_LOCAL_PORTS is not set +CONFIG_NET_SO_SNDTIMEO=y +CONFIG_NET_SO_RCVTIMEO=y +CONFIG_NET_SO_RCVBUF=y +CONFIG_NET_SO_REUSE=y +# CONFIG_NET_SO_REUSE_RXTOALL is not set + +# +# LWIP Mailbox Configurations +# +CONFIG_NET_TCPIP_MBOX_SIZE=64 +CONFIG_NET_DEFAULT_ACCEPTMBOX_SIZE=64 +CONFIG_NET_DEFAULT_RAW_RECVMBOX_SIZE=64 +CONFIG_NET_DEFAULT_TCP_RECVMBOX_SIZE=54 +CONFIG_NET_DEFAULT_UDP_RECVMBOX_SIZE=64 + +# +# Memory Configurations +# +CONFIG_NET_MEM_ALIGNMENT=4 +# CONFIG_NET_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT is not set +# CONFIG_NET_MEM_LIBC_MALLOC is not set +CONFIG_NET_MEMP_MEM_MALLOC=y +# CONFIG_NET_MEM_USE_POOLS is not set +CONFIG_NET_MEM_SIZE=81920 + +# +# LWIP Task Configurations +# +# CONFIG_NET_TCPIP_CORE_LOCKING is not set +# CONFIG_NET_TCPIP_CORE_LOCKING_INPUT is not set +CONFIG_NET_TCPIP_THREAD_NAME="LWIP_TCP/IP" +CONFIG_NET_TCPIP_THREAD_PRIO=105 +CONFIG_NET_TCPIP_THREAD_STACKSIZE=4096 +CONFIG_NET_COMPAT_MUTEX=y +CONFIG_NET_SYS_LIGHTWEIGHT_PROT=y +CONFIG_NET_DEFAULT_THREAD_NAME="lwIP" +CONFIG_NET_DEFAULT_THREAD_PRIO=1 +CONFIG_NET_DEFAULT_THREAD_STACKSIZE=0 + +# +# Debug Options for Network +# +# CONFIG_NET_LWIP_ASSERT is not set +CONFIG_NET_LWIP_ERROR=y +# CONFIG_NET_LWIP_DEBUG is not set + +# +# Enable Statistics +# +CONFIG_NET_STATS=y +# CONFIG_NET_STATS_DISPLAY is not set +# CONFIG_NET_LINK_STATS is not set +# CONFIG_NET_ETHARP_STATS is not set +# CONFIG_NET_IP_STATS is not set +# CONFIG_NET_IPFRAG_STATS is not set +# CONFIG_NET_ICMP_STATS is not set +# CONFIG_NET_UDP_STATS is not set +# CONFIG_NET_TCP_STATS is not set +# CONFIG_NET_MEM_STATS is not set +# CONFIG_NET_SYS_STATS is not set +# CONFIG_NET_IPv6_STATS is not set +# CONFIG_NET_IPv6_ICMP_STATS is not set +# CONFIG_NET_IPv6_MLD_STATS is not set +# CONFIG_NET_IPv6_ND_STATS is not set +# CONFIG_NET_LWIP_VLAN is not set +# CONFIG_NET_LWIP_SLIP_INTERFACE is not set +# CONFIG_NET_LWIP_PPP_SUPPORT is not set +# CONFIG_NET_LWIP_SNMP is not set +CONFIG_NET_LWIP_NETDB=y +CONFIG_NET_DNS_TABLE_SIZE=4 +CONFIG_NET_DNS_MAX_NAME_LENGTH=256 +CONFIG_NET_DNS_MAX_SERVERS=3 +# CONFIG_NET_DNS_DOES_NAME_CHECK is not set +CONFIG_NET_DNS_SECURE=0 +CONFIG_NET_DNS_MAX_TTL=604800 +CONFIG_NET_DNS_MAX_RETRIES=4 +# CONFIG_NET_DNS_LOCAL_HOSTLIST is not set +# CONFIG_NET_LWIP_SINGLE_PBUF is not set + +# +# Driver buffer configuration +# +CONFIG_NET_ETH_MTU=1500 +CONFIG_NET_GUARDSIZE=2 + +# +# Data link support +# +# CONFIG_NET_MULTILINK is not set +CONFIG_NET_ETHERNET=y + +# +# Protocols +# + +# +# Dynamic Host Configuration Protocol (DHCP) +# +# CONFIG_NET_DHCP is not set +CONFIG_NET_LWIP_DHCP=y +# CONFIG_LWIP_DHCP_HOSTNAME is not set +CONFIG_NETUTILS_DHCPC=y +CONFIG_LWIP_DHCPC=y +CONFIG_LWIP_DHCPC_TIMEOUT=10000 +CONFIG_NETUTILS_DHCPD=y +CONFIG_LWIP_DHCPS=y +CONFIG_LWIP_DHCPS_LEASE_DEF=120 +CONFIG_LWIP_DHCPS_SERVER_IP="192.168.47.1" +CONFIG_LWIP_DHCPS_SERVER_NETMASK="255.255.255.0" +CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8 +# CONFIG_LWIP_DHCPS_UNICAST is not set +# CONFIG_LWIP_DHCPS_ADDITIONAL_DNS is not set +# CONFIG_NETUTILS_XMLRPC is not set +# CONFIG_NETUTILS_NTPCLIENT is not set +# CONFIG_NETUTILS_WEBSERVER is not set +# CONFIG_NETUTILS_FTPC is not set +# CONFIG_NETUTILS_MDNS is not set +# CONFIG_NETUTILS_FTPD is not set +# CONFIG_NETUTILS_WEBSOCKET is not set +# CONFIG_NETUTILS_LIBCOAP is not set +# CONFIG_NETUTILS_TFTPC is not set +# CONFIG_NETUTILS_TELNETD is not set +# CONFIG_NETUTILS_SMTP is not set +# CONFIG_GRPC is not set +# CONFIG_NETUTILS_MQTT is not set +CONFIG_NET_SECURITY_TLS=y +CONFIG_TLS_WITH_HW_ACCEL=y +CONFIG_TLS_MPI_MAX_SIZE=512 +# CONFIG_TLS_HAVE_NO_TIME_DATE is not set + +# +# HW Options +# +# CONFIG_TLS_HW_RNG is not set +# CONFIG_TLS_HW_DH_PARAM is not set +# CONFIG_TLS_HW_ECDH_PARAM is not set +# CONFIG_TLS_HW_RSA_VERIFICATION is not set +# CONFIG_TLS_HW_ECDSA_VERIFICATION is not set +# CONFIG_TLS_HW_RSA_ENC is not set + +# +# Wireless +# +CONFIG_WIFI_MANAGER=y +# CONFIG_SELECT_WLAN_VIRTUAL is not set +# CONFIG_SELECT_SCSC_WLAN is not set +# CONFIG_SELECT_RTK_WLAN is not set +CONFIG_SELECT_PROPRIETARY_WLAN=y +CONFIG_SELECT_PROPRIETARY_SUPPLICANT=y +# CONFIG_WIFI_MANAGER_SAVE_CONFIG is not set +CONFIG_WIFIMGR_SOFTAP_IFNAME="wlan0" +CONFIG_WIFIMGR_STA_IFNAME="wlan0" +# CONFIG_WIFIMGR_DISABLE_DHCPC is not set +# CONFIG_WIFIMGR_DISABLE_DHCPS is not set +# CONFIG_DISABLE_EXTERNAL_AUTOCONNECT is not set + +# +# Bluetooth +# + +# +# Network utilities +# +CONFIG_NETUTILS_NETLIB=y +CONFIG_NET_NETMON=y +CONFIG_NETUTILS_STATS_DISPLAY_TOOL=y + +# +# Network Manager +# +CONFIG_NET_NETMGR=y +# CONFIG_NET_NETMGR_ZEROCOPY is not set +# CONFIG_NET_TASK_BIND is not set + +# +# Network Device Operations +# +# CONFIG_NETDEV_PHY_IOCTL is not set +CONFIG_LWNL80211=y +# CONFIG_DEBUG_LWNL80211_ERROR is not set +# CONFIG_DEBUG_LWNL80211_VENDOR_DRV_ERROR is not set +CONFIG_NET_LOOPBACK_INTERFACE=y + +# +# Audio Support +# +# CONFIG_AUDIO is not set + +# +# Media Support +# + +# +# File Systems +# +# CONFIG_DISABLE_MOUNTPOINT is not set +# CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set +CONFIG_FS_READABLE=y +CONFIG_FS_WRITABLE=y +# CONFIG_FS_AIO is not set +# CONFIG_FS_NAMED_SEMAPHORES is not set +CONFIG_FS_MQUEUE_MPATH="/var/mqueue" +CONFIG_FS_SMARTFS=y + +# +# SMARTFS options +# +CONFIG_SMARTFS_ERASEDSTATE=0xff +CONFIG_SMARTFS_MAXNAMLEN=32 +# CONFIG_SMARTFS_MULTI_ROOT_DIRS is not set +CONFIG_SMARTFS_ALIGNED_ACCESS=y +# CONFIG_SMARTFS_DYNAMIC_HEADER is not set +CONFIG_SMARTFS_ENTRY_TIMESTAMP=y +CONFIG_FS_PROCFS=y +# CONFIG_FS_AUTOMOUNT_PROCFS is not set + +# +# Exclude individual procfs entries +# +# CONFIG_FS_PROCFS_EXCLUDE_PROCESS is not set +# CONFIG_FS_PROCFS_EXCLUDE_UPTIME is not set +# CONFIG_FS_PROCFS_EXCLUDE_VERSION is not set +# CONFIG_FS_PROCFS_EXCLUDE_IRQS is not set +# CONFIG_FS_PROCFS_EXCLUDE_MTD is not set +# CONFIG_FS_PROCFS_EXCLUDE_PARTITIONS is not set +# CONFIG_FS_PROCFS_EXCLUDE_SMARTFS is not set +# CONFIG_FS_ROMFS is not set +# CONFIG_FS_TMPFS is not set + +# +# Block Driver Configurations +# +# CONFIG_RAMDISK is not set + +# +# MTD Configuration +# +CONFIG_MTD=y +CONFIG_MTD_PARTITION=y +CONFIG_MTD_PARTITION_NAMES=y +# CONFIG_MTD_PROGMEM is not set +CONFIG_MTD_FTL=y + +# +# MTD_FTL Configurations +# +# CONFIG_MTD_CONFIG is not set +CONFIG_MTD_BYTE_WRITE=y + +# +# MTD Device Drivers +# +# CONFIG_MTD_M25P is not set +# CONFIG_RAMMTD is not set +CONFIG_MTD_SMART=y + +# +# SMART Device options +# +CONFIG_MTD_SMART_SECTOR_SIZE=1024 +CONFIG_MTD_SMART_WEAR_LEVEL=y +CONFIG_MTD_SMART_ENABLE_CRC=y +# CONFIG_SMART_CRC_8 is not set +CONFIG_SMART_CRC_16=y +CONFIG_MTD_SMART_JOURNALING=y +# CONFIG_MTD_SMART_SECTOR_ERASE_DEBUG is not set +# CONFIG_MTD_SMART_ALLOC_DEBUG is not set +# CONFIG_MTD_W25 is not set +# CONFIG_MTD_JEDEC is not set + +# +# System Logging +# +# CONFIG_SYSLOG is not set +# CONFIG_SYSLOG_TIMESTAMP is not set +# CONFIG_GENERATE_FS_IMAGE is not set + +# +# Database +# +# CONFIG_ARASTORAGE is not set + +# +# AI Framework +# +# CONFIG_AIFW is not set + +# +# AraUI Framework +# +# CONFIG_UI is not set + +# +# Memory Management +# +CONFIG_MM_KERNEL_HEAP=y +# CONFIG_REALLOC_DISABLE_NEIGHBOR_EXTENSION is not set +# CONFIG_MM_SMALL is not set +CONFIG_KMM_REGIONS=3 +CONFIG_KMM_NHEAPS=2 +# CONFIG_KMM_FORCE_ALLOC_AT is not set +# CONFIG_GRAN is not set +CONFIG_MM_ASSERT_ON_FAIL=y +# CONFIG_MM_DUMP_CORRPUTED_HEAP is not set + +# +# Work Queue Support +# +CONFIG_SCHED_WORKQUEUE=y + +# +# Kernel Work Queue +# +CONFIG_SCHED_HPWORK=y +CONFIG_SCHED_HPWORKPRIORITY=201 +CONFIG_SCHED_HPWORKSTACKSIZE=2048 +CONFIG_SCHED_LPWORK=y +CONFIG_SCHED_LPNTHREADS=1 +CONFIG_SCHED_LPWORKPRIORITY=50 +CONFIG_SCHED_LPWORKSTACKSIZE=2048 + +# +# User Work Queue +# +CONFIG_SCHED_USRWORK=y +CONFIG_SCHED_USRWORKPRIORITY=100 +CONFIG_SCHED_USRWORKSTACKSIZE=2048 +# CONFIG_DEBUG_WORKQUEUE is not set + +# +# Power Management +# +# CONFIG_PM is not set + +# +# Debug Options +# +CONFIG_DEBUG=y +CONFIG_DEBUG_ERROR=y +# CONFIG_DEBUG_WARN is not set +# CONFIG_DEBUG_VERBOSE is not set + +# +# Subsystem Debug Options +# +# CONFIG_DEBUG_BINFMT is not set +# CONFIG_DEBUG_BINARY_COMPRESSION is not set +CONFIG_DEBUG_BINMGR=y +CONFIG_DEBUG_BINMGR_ERROR=y +# CONFIG_DEBUG_FS is not set +# CONFIG_DEBUG_LIB is not set +# CONFIG_DEBUG_MM is not set +# CONFIG_DEBUG_NET is not set +# CONFIG_DEBUG_BLE is not set +# CONFIG_DEBUG_PM is not set +# CONFIG_DEBUG_SCHED is not set +# CONFIG_DEBUG_SYSCALL is not set +# CONFIG_DEBUG_TASH is not set + +# +# Framework Debug Options +# +# CONFIG_DEBUG_IOTBUS is not set + +# +# OS Function Debug Options +# +CONFIG_ARCH_HAVE_HEAPCHECK=y +# CONFIG_DEBUG_HEAP is not set +CONFIG_DEBUG_MM_HEAPINFO=y +# CONFIG_DEBUG_CHECK_FRAGMENTATION is not set +# CONFIG_DEBUG_IRQ is not set + +# +# Driver Debug Options +# +# CONFIG_DEBUG_ANALOG is not set +# CONFIG_DEBUG_I2S is not set +# CONFIG_DEBUG_SPI is not set +# CONFIG_DEBUG_WATCHDOG is not set + +# +# System Debug Options +# +# CONFIG_DEBUG_SYSTEM is not set + +# +# Stack Debug Options +# +CONFIG_ARCH_HAVE_STACKCHECK=y +CONFIG_STACK_COLORATION=y + +# +# Build Debug Options +# +CONFIG_DEBUG_SYMBOLS=y +# CONFIG_FRAME_POINTER is not set + +# +# Logger Module +# +# CONFIG_LOGM is not set + +# +# System Call +# +CONFIG_LIB_SYSCALL=y +CONFIG_SYS_RESERVED=11 +CONFIG_SYS_NNEST=2 + +# +# Built-in Libraries +# + +# +# Standard C Library Options +# +CONFIG_STDIO_BUFFER_SIZE=64 +CONFIG_STDIO_LINEBUFFER=y +CONFIG_NUNGET_CHARS=2 +CONFIG_LIB_HOMEDIR="/" +CONFIG_LIBM=y +# CONFIG_NOPRINTF_FIELDWIDTH is not set +CONFIG_LIBC_FLOATINGPOINT=y +CONFIG_LIBC_LONG_LONG=y +CONFIG_LIBC_FLOATPRECISION=6 +CONFIG_LIBC_SCANSET=y +# CONFIG_NOPRINTF_LONGLONG_TO_ASCII is not set +# CONFIG_LIBC_IOCTL_VARIADIC is not set +CONFIG_LIBC_WCHAR=y +# CONFIG_LIBC_LOCALE is not set +CONFIG_LIB_RAND_ORDER=1 +# CONFIG_EOL_IS_CR is not set +# CONFIG_EOL_IS_LF is not set +# CONFIG_EOL_IS_BOTH_CRLF is not set +CONFIG_EOL_IS_EITHER_CRLF=y +CONFIG_LIBC_STRERROR=y +# CONFIG_LIBC_STRERROR_SHORT is not set +# CONFIG_LIBC_PERROR_STDOUT is not set +CONFIG_LIBC_TMPDIR="/tmp" +CONFIG_LIBC_MAX_TMPFILE=32 +CONFIG_ARCH_LOWPUTC=y +# CONFIG_LIBC_LOCALTIME is not set +CONFIG_LIB_SENDFILE_BUFSIZE=512 +CONFIG_LIBC_ARCH_ELF=y +CONFIG_ARCH_OPTIMIZED_FUNCTIONS=y +# CONFIG_ARCH_MEMCPY is not set +CONFIG_MEMCPY_VIK=y +CONFIG_MEMCPY_PRE_INC_PTRS=y +# CONFIG_MEMCPY_INDEXED_COPY is not set +# CONFIG_MEMCPY_64BIT is not set +# CONFIG_ARCH_MEMCMP is not set +# CONFIG_ARCH_MEMMOVE is not set +# CONFIG_ARCH_MEMSET is not set +CONFIG_MEMSET_OPTSPEED=y +# CONFIG_MEMSET_64BIT is not set +# CONFIG_ARCH_STPNCPY is not set +# CONFIG_ARCH_STRCHR is not set +# CONFIG_ARCH_STRCMP is not set +# CONFIG_ARCH_STRCPY is not set +# CONFIG_ARCH_STRNCPY is not set +# CONFIG_ARCH_STRLEN is not set +# CONFIG_ARCH_STRNLEN is not set +# CONFIG_ARCH_BZERO is not set +# CONFIG_LIB_ENVPATH is not set +CONFIG_LIB_HASHMAP=y + +# +# Program Execution Options +# +CONFIG_LIBC_EXECFUNCS=y +CONFIG_LIBC_SYMTAB=y + +# +# Basic CXX Support +# +CONFIG_C99_BOOL8=y +CONFIG_HAVE_CXX=y +CONFIG_CXX_VERSION_11=y +# CONFIG_CXX_VERSION_14 is not set +# CONFIG_CXX_VERSION_17 is not set +# CONFIG_CXX_NEWLONG is not set + +# +# LLVM C++ Library (libcxx) +# +CONFIG_LIBCXX=y +CONFIG_LIBCXX_EXCEPTION=y +CONFIG_LIBCXX_IOSTREAM_BUFSIZE=32 +CONFIG_LIBCXX_HAVE_LIBSUPCXX=y + +# +# External Libraries +# +# CONFIG_AVS_DEVICE_SDK is not set +# CONFIG_AWS_SDK is not set +# CONFIG_NETUTILS_CODECS is not set + +# +# CURL Options +# +# CONFIG_ENABLE_CURL is not set +# CONFIG_ERROR_REPORT is not set +# CONFIG_GMOCK is not set +# CONFIG_ENABLE_IOTIVITY is not set +CONFIG_NETUTILS_JSON=y +# CONFIG_LIBTUV is not set +# CONFIG_PROTOBUF is not set +# CONFIG_LWM2M_WAKAAMA is not set +# CONFIG_WIFI_MBOX is not set +CONFIG_STRESS_TOOL=y +# CONFIG_VOICE_SOFTWARE_EPD is not set +# CONFIG_EXTERNAL_VEC is not set +# CONFIG_LIB_LZMA is not set +# CONFIG_LIB_MINIZ is not set +# CONFIG_NANOPB is not set +# CONFIG_LIBSODIUM is not set +# CONFIG_OPENSSL_WRAPPER is not set +# CONFIG_STDK_IOT_CORE is not set +# CONFIG_EXTERNAL_TFMICRO is not set + +# +# Binary Loader +# +CONFIG_BINFMT_ENABLE=y +CONFIG_BINFMT_LOADABLE=y +CONFIG_ELF=y +CONFIG_ELF_ALIGN_LOG2=2 +CONFIG_ELF_STACKSIZE=2048 +CONFIG_ELF_BUFFERSIZE=32 +CONFIG_ELF_BUFFERINCR=32 +CONFIG_ELF_EXIDX_SECTNAME=".ARM.exidx" +CONFIG_ELF_EXCLUDE_SYMBOLS=y +CONFIG_ELF_CACHE_READ=y +CONFIG_ELF_CACHE_BLOCK_SIZE=2048 +CONFIG_ELF_CACHE_BLOCKS_COUNT=60 +CONFIG_BINFMT_CONSTRUCTORS=y +# CONFIG_SYMTAB_ORDEREDBYNAME is not set +CONFIG_OPTIMIZE_APP_RELOAD_TIME=y +CONFIG_BINFMT_SECTION_UNIFIED_MEMORY=y +# CONFIG_SAVE_BIN_SECTION_ADDR is not set + +# +# Compression +# +CONFIG_COMPRESSION=y +CONFIG_COMPRESSION_TYPE=2 +CONFIG_COMPRESSED_BINARY=y +CONFIG_COMPRESSION_BLOCK_SIZE=16384 + +# +# Application Configuration +# + +# +# Application entry point list +# +# CONFIG_ENTRY_MANUAL is not set +CONFIG_ENTRY_HELLO=y +# CONFIG_ENTRY_HELLOXX is not set +# CONFIG_ENTRY_MEM_PROTECT_TEST is not set +# CONFIG_ENTRY_TESTCASE is not set +# CONFIG_ENTRY_WIFIMANAGER_TEST is not set +CONFIG_USER_ENTRYPOINT="hello_main" +CONFIG_BUILTIN_APPS=y + +# +# Examples +# +# CONFIG_EXAMPLES_AWS is not set +# CONFIG_EXAMPLES_BLE_TESTER is not set + +# +# Board Specific Demos +# +# CONFIG_EXAMPLES_SSTORAGE is not set +# CONFIG_EXAMPLES_SECURE_WORLD is not set +# CONFIG_EXAMPLES_WIFICSI is not set +# CONFIG_EXAMPLES_CONNECT_TEST is not set +# CONFIG_EXAMPLES_CURLTEST is not set +# CONFIG_EXAMPLES_DNSCLIENT_TEST is not set + +# +# dTLS +# +# CONFIG_EXAMPLES_DTLS_CLIENT is not set +# CONFIG_EXAMPLES_DTLS_SERVER is not set +# CONFIG_EXAMPLES_EEPROM_TEST is not set +# CONFIG_EXAMPLES_EVENTLOOP is not set +# CONFIG_EXAMPLES_FOTA_SAMPLE is not set +# CONFIG_FILESYSTEM_TEST is not set + +# +# gRPC +# +# CONFIG_EXAMPLES_HEAVY_SIGNAL_MESSAGE_TEST is not set +CONFIG_EXAMPLES_HELLO=y +CONFIG_EXAMPLES_HELLOXX=y +# CONFIG_EXAMPLES_IOTBUS_TEST is not set +# CONFIG_EXAMPLES_IOTJS_STARTUP is not set +# CONFIG_EXAMPLES_KERNEL_SAMPLE is not set +# CONFIG_EXAMPLES_KERNEL_UPDATE is not set + +# +# Libcoap +# +# CONFIG_EXAMPLES_LIBTUV is not set +# CONFIG_EXAMPLES_LWNL_SAMPLE is not set +CONFIG_EXAMPLES_MEM_PROTECT_TEST=y +# CONFIG_EXAMPLES_MEMORY_FRAGMENTATION_TEST is not set +# CONFIG_EXAMPLES_NETTEST is not set + +# +# Performance +# +# CONFIG_EXAMPLES_HEAP_PERFORMANCE_TEST is not set +# CONFIG_EXAMPLES_SYSCALL_PERFORMANCE is not set +# CONFIG_EXAMPLES_TLS_BENCHMARK is not set +# CONFIG_EXAMPLES_TLS_HANDSHAKE is not set +# CONFIG_EXAMPLES_TLS_SECLINK is not set + +# +# Protocol Buffer +# +# CONFIG_EXAMPLES_RDP is not set +# CONFIG_EXAMPLES_RSSI_REPORT is not set + +# +# Security Test +# +# CONFIG_EXAMPLES_MBEDTLS_SELF_TEST is not set +# CONFIG_EXAMPLES_SECLINK_TEST is not set +# CONFIG_EXAMPLES_SECURITY_API_TEST is not set +# CONFIG_EXAMPLES_SECURITY_SEE_TEST is not set +# CONFIG_EXAMPLES_SECLINK_TOOL is not set +# CONFIG_EXAMPLES_SELECT_TEST is not set +# CONFIG_EXAMPLES_SENSORBOARD is not set +# CONFIG_EXAMPLES_SETJMP_TEST is not set +# CONFIG_EXAMPLES_SIMPLE_FILE_TRANSFER is not set + +# +# SmartFs Test Applications +# +# CONFIG_EXAMPLES_SMART is not set +# CONFIG_EXAMPLES_SMART_TEST is not set +# CONFIG_EXAMPLES_SMARTFS_POWERCUT is not set +# CONFIG_EXAMPLES_ST_THINGS is not set +# CONFIG_EXAMPLES_STACK_PROTECTION is not set +CONFIG_EXAMPLES_TESTCASE=y +# CONFIG_DISABLE_MANUAL_TESTCASE is not set +# CONFIG_EXAMPLES_TESTCASE_COMPRESSION is not set +# CONFIG_EXAMPLES_TESTCASE_DRIVERS is not set +CONFIG_EXAMPLES_TESTCASE_FILESYSTEM=y +# CONFIG_TC_FS_PROCFS is not set +# CONFIG_TC_FS_MOPS is not set +# CONFIG_ITC_FS is not set +CONFIG_EXAMPLES_TESTCASE_KERNEL=y +# CONFIG_DEBUG_TC_KN is not set +CONFIG_TC_KN_ALL=y +CONFIG_TC_KERNEL_CLOCK=y +CONFIG_TC_KERNEL_ENVIRON=y +CONFIG_TC_KERNEL_ERRNO=y +# CONFIG_TC_KERNEL_GROUP is not set +CONFIG_TC_KERNEL_LIBC_FIXEDMATH=y +CONFIG_TC_KERNEL_LIBC_INTTYPES=y +CONFIG_TC_KERNEL_LIBC_LIBGEN=y +CONFIG_TC_KERNEL_LIBC_MATH=y +CONFIG_TC_KERNEL_LIBC_MISC=y +CONFIG_TC_KERNEL_LIBC_PTHREAD=y +CONFIG_TC_KERNEL_LIBC_QUEUE=y +CONFIG_TC_KERNEL_LIBC_SCHED=y +CONFIG_TC_KERNEL_LIBC_SEMAPHORE=y +CONFIG_TC_KERNEL_LIBC_SIGNAL=y +CONFIG_TC_KERNEL_LIBC_STDIO=y +CONFIG_TC_KERNEL_LIBC_STDLIB=y +CONFIG_TC_KERNEL_LIBC_STRING=y +CONFIG_TC_KERNEL_LIBC_TIMER=y +CONFIG_TC_KERNEL_LIBC_UNISTD=y +CONFIG_TC_KERNEL_LIBC_SYSLOG=y +CONFIG_TC_KERNEL_MQUEUE=y +CONFIG_TC_KERNEL_PTHREAD=y +CONFIG_TC_KERNEL_SCHED=y +CONFIG_TC_KERNEL_SEMAPHORE=y +CONFIG_TC_KERNEL_SIGNAL=y +CONFIG_TC_KERNEL_TASK=y +# CONFIG_TC_KERNEL_TERMIOS is not set +CONFIG_TC_KERNEL_TIMER=y +CONFIG_TC_KERNEL_UMM_HEAP=y +# CONFIG_TC_KERNEL_TASH_HEAPINFO is not set +# CONFIG_TC_KERNEL_TASH_STACKMONITOR is not set +CONFIG_TC_KERNEL_WORK_QUEUE=y +# CONFIG_TC_KERNEL_MEMORY_SAFETY is not set +CONFIG_ITC_KERNEL_ENVIRON=y +CONFIG_ITC_ENV_LOOP_SIZE=100 +CONFIG_ITC_KERNEL_LIBC_PTHREAD=y +CONFIG_ITC_LIBC_PTHREAD_LOOP_SIZE=100 +CONFIG_ITC_KERNEL_LIBC_SEMAPHORE=y +CONFIG_ITC_KERNEL_SEMAPHORE=y +CONFIG_ITC_KERN_SEM_LOOP_SIZE=100 +CONFIG_ITC_KERNEL_SCHED=y +CONFIG_ITC_KERNEL_TIMER=y +CONFIG_ITC_KERNEL_PTHREAD=y +CONFIG_ITC_KERN_PTHREAD_LOOP_SIZE=100 +CONFIG_EXAMPLES_TESTCASE_NETWORK=y +CONFIG_TC_NET_ALL=y +CONFIG_TC_NET_SOCKET=y +CONFIG_TC_NET_SOCKET_SHARE=y +CONFIG_TC_NET_PBUF=y +CONFIG_TC_NET_SETSOCKOPT=y +CONFIG_TC_NET_CONNECT=y +CONFIG_TC_NET_CLOSE=y +CONFIG_TC_NET_BIND=y +CONFIG_TC_NET_LISTEN=y +CONFIG_TC_NET_GETSOCKNAME=y +CONFIG_TC_NET_GETSOCKOPT=y +CONFIG_TC_NET_FCNTL=y +CONFIG_TC_NET_IOCTL=y +CONFIG_TC_NET_ACCEPT=y +CONFIG_TC_NET_SEND=y +CONFIG_TC_NET_RECV=y +CONFIG_TC_NET_GETPEERNAME=y +CONFIG_TC_NET_SENDTO=y +CONFIG_TC_NET_RECVFROM=y +CONFIG_TC_NET_SHUTDOWN=y +CONFIG_TC_NET_DHCPC=y +CONFIG_TC_NET_INET=y +CONFIG_TC_NET_ETHER=y +CONFIG_TC_NET_NETDB=y +CONFIG_ITC_NET_CLOSE=y +CONFIG_ITC_NET_LISTEN=y +CONFIG_ITC_NET_SETSOCKOPT=y +CONFIG_ITC_NET_SEND=y +CONFIG_ITC_NET_INET=y +CONFIG_ITC_NET_NETDB=y +CONFIG_ITC_NET_CONNECT=y +# CONFIG_EXAMPLES_TESTCASE_TTRACE is not set +# CONFIG_EXAMPLES_TESTCASE_TCP_TLS_STRESS is not set +# CONFIG_EXAMPLES_TESTCASE_ARASTORAGE_UTC is not set +# CONFIG_EXAMPLES_TESTCASE_ARASTORAGE_ITC is not set +# CONFIG_EXAMPLES_TESTCASE_AUDIO_UTC is not set +# CONFIG_EXAMPLES_TESTCASE_AUDIO_ITC is not set +# CONFIG_EXAMPLES_TESTCASE_SYSTEMIO_UTC is not set +# CONFIG_EXAMPLES_TESTCASE_SYSTEMIO_ITC is not set +# CONFIG_EXAMPLES_TESTCASE_WIFI_MANAGER_UTC is not set +# CONFIG_EXAMPLES_TESTCASE_WIFI_MANAGER_ITC is not set +# CONFIG_EXAMPLES_TESTCASE_BLE_MANAGER_UTC is not set +# CONFIG_EXAMPLES_TESTCASE_BLE_MANAGER_ITC is not set +# CONFIG_EXAMPLES_TESTCASE_SECURITY_FRAMEWORK_UTC is not set + +# +# TLS +# +# CONFIG_EXAMPLES_TLS_CLIENT is not set +# CONFIG_EXAMPLES_TLS_SELFTEST is not set +# CONFIG_EXAMPLES_TLS_SERVER is not set +# CONFIG_UART_HW_TEST is not set + +# +# Wifi Manager +# +# CONFIG_EXAMPLES_TAHI is not set +CONFIG_EXAMPLES_WIFIMANAGER_TEST=y +CONFIG_WIFIMANAGER_TEST_TRIAL=5 +CONFIG_EXAMPLES_WIFIMANAGER_AP_LIST_ITEMS_COUNT=10 + +# +# Platform-specific Support +# +# CONFIG_PLATFORM_CONFIGDATA is not set + +# +# Shell +# +CONFIG_TASH=y +CONFIG_TASH_MAX_STORE_COMMANDS=10 +# CONFIG_TASH_USLEEP is not set +CONFIG_TASH_REBOOT=y +# CONFIG_TASH_COMMAND_INTERFACE is not set +CONFIG_TASH_CMDTASK_STACKSIZE=4096 +CONFIG_TASH_CMDTASK_PRIORITY=100 +# CONFIG_TASH_SCRIPT is not set +# CONFIG_SECURED_TASH is not set + +# +# System Libraries and Add-Ons +# +# CONFIG_SYSTEM_CLE is not set +# CONFIG_SYSTEM_CUTERM is not set +# CONFIG_SYSTEM_FOTA_HAL is not set +# CONFIG_SYSTEM_INIFILE is not set +CONFIG_SYSTEM_PREAPP_INIT=y +CONFIG_SYSTEM_PREAPP_STACKSIZE=2048 +CONFIG_SYSTEM_IPERF=y +CONFIG_IPERF_PRIORITY=106 +CONFIG_IPERF_STACKSIZE=4096 +# CONFIG_MEM_LEAK_CHECKER is not set +CONFIG_SYSTEM_NETDB=y +CONFIG_SYSTEM_NETDB_STACKSIZE=2048 +CONFIG_SYSTEM_NETDB_PRIORITY=100 +# CONFIG_SYSTEM_RAMTEST is not set +CONFIG_SYSTEM_READLINE=y +CONFIG_READLINE_ECHO=y +CONFIG_SYSTEM_INFORMATION=y +CONFIG_SYSTEM_CMDS=y +CONFIG_SECURITY_LEVEL_CMDS=y +CONFIG_FS_CMDS=y +CONFIG_FSCMD_BUFFER_LEN=256 +CONFIG_NET_CMDS=y +CONFIG_NET_PING_CMD=y +CONFIG_NET_PING_CMD_ICOUNT=5 +CONFIG_ENABLE_DATE=y +CONFIG_ENABLE_ENV_GET=y +CONFIG_ENABLE_ENV_SET=y +CONFIG_ENABLE_ENV_UNSET=y +CONFIG_ENABLE_FREE=y +CONFIG_ENABLE_HEAPINFO=y +# CONFIG_HEAPINFO_USER_GROUP is not set +CONFIG_ENABLE_PRODCONFIG=y +CONFIG_ENABLE_KILL=y +CONFIG_ENABLE_KILLALL=y +# CONFIG_ENABLE_PS is not set +# CONFIG_ENABLE_STACKMONITOR is not set +CONFIG_ENABLE_UPTIME=y +# CONFIG_SYSTEM_VI is not set + +# +# Loadable apps Configuration +# +CONFIG_EXAMPLES_LOADABLE=y +CONFIG_EXAMPLES_LOADABLE_MANUAL_TEST=y +CONFIG_EXAMPLES_RECOVERY_TEST=y +CONFIG_EXAMPLES_BINARY_UPDATE_TEST=y +# CONFIG_EXAMPLES_LOADABLE_AUTOMATIC_TEST is not set +CONFIG_APP1_INFO=y +CONFIG_APP1_BIN_NAME="app1" +CONFIG_APP1_BIN_TYPE="ELF" +CONFIG_APP1_BIN_VER=190412 +CONFIG_APP1_BIN_DYN_RAMSIZE=512000 +CONFIG_APP1_BIN_LOADING_PRIORITY="HIGH" +CONFIG_APP1_MAIN_STACKSIZE=4096 +CONFIG_APP1_MAIN_PRIORITY=220 +CONFIG_APP2_INFO=y +CONFIG_APP2_BIN_NAME="app2" +CONFIG_APP2_BIN_TYPE="ELF" +CONFIG_APP2_BIN_VER=190412 +CONFIG_APP2_BIN_DYN_RAMSIZE=512000 +CONFIG_APP2_BIN_LOADING_PRIORITY="LOW" +CONFIG_APP2_MAIN_STACKSIZE=8192 +CONFIG_APP2_MAIN_PRIORITY=180 + +# +# Runtime Environment +# +# CONFIG_ENABLE_IOTJS is not set + +# +# Device Management +# +# CONFIG_DM is not set + +# +# Binary manager +# +CONFIG_USE_BP=y +CONFIG_BINARY_MANAGER=y +CONFIG_BM_PRIORITY_MAX=205 +CONFIG_BM_PRIORITY_MIN=200 +CONFIG_BINMGR_RECOVERY=y +CONFIG_BINMGR_UPDATE=y +CONFIG_BINMGR_UPDATE_SAME_VERSION=y +# CONFIG_BINMGR_RELOAD_REBOOT is not set + +# +# Task Monitor +# +# CONFIG_TASK_MONITOR is not set + +# +# Task manager +# +# CONFIG_TASK_MANAGER is not set + +# +# Event Loop Framework +# +# CONFIG_EVENTLOOP is not set + +# +# Messaging Framework +# +# CONFIG_MESSAGING_IPC is not set + +# +# Preference Support +# +# CONFIG_PREFERENCE is not set + +# +# Things Management +# + +# +# IoTBus Framework +# +CONFIG_IOTBUS=y +CONFIG_IOTBUS_GPIO=y +# CONFIG_IOTBUS_SPI is not set +CONFIG_IOTBUS_UART=y + +# +# Security Framework +# +CONFIG_SECURITY_API=y +# CONFIG_DEBUG_SECURITY_FRAMEWORK_ERROR is not set +# CONFIG_SECURITY_AUTH is not set +# CONFIG_SECURITY_CRYPTO is not set +# CONFIG_SECURITY_KEYMGR is not set +CONFIG_SECURITY_SS=y diff --git a/lib/libc/machine/arm/armv7-m/arch_elf.c b/lib/libc/machine/arm/armv7-m/arch_elf.c index c006ac1ce1..d70c710229 100644 --- a/lib/libc/machine/arm/armv7-m/arch_elf.c +++ b/lib/libc/machine/arm/armv7-m/arch_elf.c @@ -193,7 +193,7 @@ int up_relocate(FAR const Elf32_Rel *rel, FAR const Elf32_Sym *sym, uintptr_t ad } break; -#ifdef CONFIG_ARMV7M_TARGET2_PREL +#if defined(CONFIG_ARMV7M_TARGET2_PREL) || defined(CONFIG_ARMV8M_TARGET2_PREL) case R_ARM_TARGET2: /* TARGET2 is a platform-specific relocation: gcc-arm-none-eabi * performs a self relocation */ { diff --git a/os/binfmt/libelf/Kconfig b/os/binfmt/libelf/Kconfig index fac9304f60..329c016e98 100644 --- a/os/binfmt/libelf/Kconfig +++ b/os/binfmt/libelf/Kconfig @@ -42,7 +42,7 @@ config ELF_DUMPBUFFER config ELF_EXIDX_SECTNAME string "ELF Section Name for Exception Index" default ".ARM.exidx" - depends on CXX_EXCEPTION + depends on LIBCXX_EXCEPTION ---help--- Set the name string for the exception index section on the ELF modules to be loaded by the ELF binary loader. diff --git a/os/binfmt/libelf/libelf_load.c b/os/binfmt/libelf/libelf_load.c index b989aff4e4..eb926d11c8 100644 --- a/os/binfmt/libelf/libelf_load.c +++ b/os/binfmt/libelf/libelf_load.c @@ -272,7 +272,7 @@ static inline int elf_loadfile(FAR struct elf_loadinfo_s *loadinfo) int elf_load(FAR struct elf_loadinfo_s *loadinfo) { -#ifdef CONFIG_CXX_EXCEPTION +#ifdef CONFIG_LIBCXX_EXCEPTION int exidx; #endif int ret; @@ -324,12 +324,10 @@ int elf_load(FAR struct elf_loadinfo_s *loadinfo) } #endif -#ifdef CONFIG_CXX_EXCEPTION +#ifdef CONFIG_LIBCXX_EXCEPTION exidx = elf_findsection(loadinfo, CONFIG_ELF_EXIDX_SECTNAME); if (exidx < 0) { binfo("elf_findsection: Exception Index section not found: %d\n", exidx); - } else { - up_init_exidx(loadinfo->shdr[exidx].sh_addr, loadinfo->shdr[exidx].sh_size); } #endif diff --git a/os/include/tinyara/elf.h b/os/include/tinyara/elf.h index bf9c0346f7..32a54dc134 100644 --- a/os/include/tinyara/elf.h +++ b/os/include/tinyara/elf.h @@ -110,24 +110,4 @@ int up_relocate(FAR const Elf32_Rel *rel, FAR const Elf32_Sym *sym, uintptr_t ad int up_relocateadd(FAR const Elf32_Rela *rel, FAR const Elf32_Sym *sym, uintptr_t addr); #endif -/**************************************************************************** - * Name: up_init_exidx - * - * Description: - * Initialize the exception index section. - * - * Input Parameters: - * address - The exception index section address. - * size - The exception index section size. - * - * Returned Value: - * Zero (OK) if the initialization was successful. Otherwise, a negated errno - * value indicating the cause of the failure. - * - ****************************************************************************/ - -#ifdef CONFIG_CXX_EXCEPTION -int up_init_exidx(Elf32_Addr address, Elf32_Word size); -#endif - #endif /* __INCLUDE_TINYARA_ELF_H */ diff --git a/os/userspace/userspace_apps.ld b/os/userspace/userspace_apps.ld index 5c76b05a8c..efa9949fce 100644 --- a/os/userspace/userspace_apps.ld +++ b/os/userspace/userspace_apps.ld @@ -128,6 +128,18 @@ SECTIONS _edtors = . ; } + .ARM.extab : + { + *(.ARM.extab*) + } + + .ARM.exidx : + { + __exidx_start = . ; + *(.ARM.exidx*) + __exidx_end = . ; + } + .bss : { _sbss = . ;