From ec755a409135f20e13abdd3c4865d4088746c867 Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Mon, 23 Jan 2017 14:04:32 -0600 Subject: [PATCH] SYSCALLS: Correct a bad function prototype generated in PROTECTED mode with kernel modules enabled. --- configs/olimex-stm32-p407/README.txt | 49 ++++++++++++++++++---------- syscall/syscall.csv | 2 +- 2 files changed, 33 insertions(+), 18 deletions(-) diff --git a/configs/olimex-stm32-p407/README.txt b/configs/olimex-stm32-p407/README.txt index 58d17bf545..692687f910 100644 --- a/configs/olimex-stm32-p407/README.txt +++ b/configs/olimex-stm32-p407/README.txt @@ -7,8 +7,8 @@ to share the same board design. Other code comes from the STM3240G board support (which has the same crystal and clocking) and from the STM32 F4 Discovery (which has the same STM32 part) -Note that CONFIG_STM32_DISABLE_IDLE_SLEEP_DURING_DEBUG is enabled so -that the JTAG connection is not disconnected by the idle loop. +Peripherals +=========== The following peripherals are available in this configuration. @@ -81,6 +81,9 @@ the make, the nuttx binary will reside in an ELF file called, simply, nuttx. buildroot toolchain. The host and/or toolchain selection can easily be changed with 'make menuconfig'. + 4. Note that CONFIG_STM32_DISABLE_IDLE_SLEEP_DURING_DEBUG is enabled so + that the JTAG connection is not disconnected by the idle loop. + Configuration sub-directories ----------------------------- @@ -173,24 +176,33 @@ must be is one of the following. NOTES: - 1. Kernel Modules + 1. Kernel Modules / Shared Libraries - I used this configuration for testing NuttX kernel modules with the - following configuration additions to the configuration file: + I used this configuration for testing NuttX kernel modules in the + FLAT build with the following configuration additions to the + configuration file: - CONFIG_BOARDCTL_OS_SYMTAB=y - CONFIG_EXAMPLES_MODULE=y - CONFIG_EXAMPLES_MODULE_DEVMINOR=0 - CONFIG_EXAMPLES_MODULE_DEVPATH="/dev/ram0" - CONFIG_FS_ROMFS=y - CONFIG_LIBC_ARCH_ELF=y - CONFIG_LIBC_DLLFCN=y - CONFIG_MODULE=y - CONFIG_MODULE_ALIGN_LOG2=2 - CONFIG_MODULE_BUFFERINCR=32 - CONFIG_MODULE_BUFFERSIZE=128 + CONFIG_BOARDCTL_OS_SYMTAB=y + CONFIG_EXAMPLES_MODULE=y + CONFIG_EXAMPLES_MODULE_DEVMINOR=0 + CONFIG_EXAMPLES_MODULE_DEVPATH="/dev/ram0" + CONFIG_FS_ROMFS=y + CONFIG_LIBC_ARCH_ELF=y + CONFIG_MODULE=y + CONFIG_MODULE_ALIGN_LOG2=2 + CONFIG_MODULE_BUFFERINCR=32 + CONFIG_MODULE_BUFFERSIZE=128 -STATUS: + Add the following for testing shared libraries in the FLAT + build: + + CONFIG_LIBC_DLLFCN=y + CONFIG_EXAMPLES_SOTEST=y + CONFIG_EXAMPLES_SOTEST_DEVMINOR=1 + CONFIG_EXAMPLES_SOTEST_DEVPATH="/dev/ram1" + +STATUS +====== 2016-12-21: This board configuration was ported from the Olimex STM32 P207 port. Note that none of the above features have been verified. USB, CAN, @@ -202,3 +214,6 @@ STATUS: CCM memory is not included in the heap (CONFIG_STM32_CCMEXCLUDE=y) because it does no suport DMA, leaving only 128KiB for program usage. + +2107-01-23: Added the the knsh configuration and support for the PROTECTED + build mode. diff --git a/syscall/syscall.csv b/syscall/syscall.csv index d2d97d828d..501f99c3c3 100644 --- a/syscall/syscall.csv +++ b/syscall/syscall.csv @@ -38,7 +38,7 @@ "mkfifo2","nuttx/drivers/drivers.h","defined(CONFIG_PIPES) && CONFIG_DEV_FIFO_SIZE > 0","int","FAR const char*","mode_t","size_t" "mmap","sys/mman.h","CONFIG_NFILE_DESCRIPTORS > 0","FAR void*","FAR void*","size_t","int","int","int","off_t" "modhandle","nuttx/module.h","defined(CONFIG_MODULE)","FAR void *","FAR const char *" -"modsym","nuttx/module.h","defined(CONFIG_MODULE)","FAR void *","FAR void *","FAR const char *" +"modsym","nuttx/module.h","defined(CONFIG_MODULE)","FAR const void *","FAR void *","FAR const char *" "mount","sys/mount.h","CONFIG_NFILE_DESCRIPTORS > 0 && !defined(CONFIG_DISABLE_MOUNTPOINT) && defined(CONFIG_FS_READABLE)","int","const char*","const char*","const char*","unsigned long","const void*" "mq_close","mqueue.h","!defined(CONFIG_DISABLE_MQUEUE)","int","mqd_t" "mq_getattr","mqueue.h","!defined(CONFIG_DISABLE_MQUEUE)","int","mqd_t","struct mq_attr *"