mirror of
https://github.com/apache/nuttx.git
synced 2025-01-13 08:38:38 +08:00
Various changes/fixes to get configs/stm32f4discovery/kostest working after the big configuration renaming (and after a long period of bit rot)
This commit is contained in:
parent
faf16f229c
commit
0f5dc2fc65
9 changed files with 229 additions and 102 deletions
|
@ -46,6 +46,7 @@
|
|||
|
||||
#include <arch/irq.h>
|
||||
#include <nuttx/sched.h>
|
||||
#include <nuttx/userspace.h>
|
||||
|
||||
#ifdef CONFIG_LIB_SYSCALL
|
||||
# include <syscall.h>
|
||||
|
|
|
@ -44,9 +44,8 @@
|
|||
#include "svcall.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
#if ((defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__) || \
|
||||
defined(defined(CONFIG_BUILD_KERNEL)) && \
|
||||
!defined(CONFIG_DISABLE_PTHREAD)
|
||||
#if ((defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__)) || \
|
||||
defined(CONFIG_BUILD_KERNEL)) && !defined(CONFIG_DISABLE_PTHREAD)
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
|
|
|
@ -43,9 +43,8 @@
|
|||
#include "svcall.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
#if ((defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__) || \
|
||||
defined(defined(CONFIG_BUILD_KERNEL)) && \
|
||||
!defined(CONFIG_DISABLE_SIGNALS)
|
||||
#if ((defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__)) || \
|
||||
defined(CONFIG_BUILD_KERNEL)) && !defined(CONFIG_DISABLE_SIGNALS)
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
|
|
|
@ -177,7 +177,7 @@
|
|||
/* The DMA buffer size when using RX DMA to emulate a FIFO.
|
||||
*
|
||||
* When streaming data, the generic serial layer will be called
|
||||
* everytime the FIFO receives half this number of bytes.
|
||||
* every time the FIFO receives half this number of bytes.
|
||||
*/
|
||||
|
||||
# define RXDMA_BUFFER_SIZE 32
|
||||
|
@ -2426,8 +2426,6 @@ static void up_dma_rxcallback(DMA_HANDLE handle, uint8_t status, void *arg)
|
|||
}
|
||||
#endif
|
||||
|
||||
#endif /* HAVE UART */
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_pm_notify
|
||||
*
|
||||
|
@ -2532,11 +2530,14 @@ static int up_pm_prepare(struct pm_callback_s *cb, enum pm_state_e pmstate)
|
|||
return OK;
|
||||
}
|
||||
#endif
|
||||
#endif /* USE_SERIALDRIVER */
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef USE_SERIALDRIVER
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_earlyserialinit
|
||||
*
|
||||
|
@ -2734,8 +2735,6 @@ void stm32_serial_dma_poll(void)
|
|||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef USE_SERIALDRIVER
|
||||
|
||||
int up_putc(int ch)
|
||||
{
|
||||
#if CONSOLE_UART > 0
|
||||
|
|
|
@ -41,9 +41,10 @@
|
|||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <nuttx/userspace.h>
|
||||
#include <nuttx/wqueue.h>
|
||||
#include <nuttx/arch.h>
|
||||
#include <nuttx/mm.h>
|
||||
#include <nuttx/wqueue.h>
|
||||
#include <nuttx/userspace.h>
|
||||
|
||||
#if defined(CONFIG_BUILD_PROTECTED) && !defined(__KERNEL__)
|
||||
|
||||
|
@ -69,7 +70,7 @@
|
|||
* following way:
|
||||
*
|
||||
* - The linker script defines, for example, the symbol_sdata.
|
||||
* - The declareion extern uint32_t _sdata; makes C happy. C will believe
|
||||
* - The declaration extern uint32_t _sdata; makes C happy. C will believe
|
||||
* that the value _sdata is the address of a uint32_t variable _data (it is
|
||||
* not!).
|
||||
* - We can recoved the linker value then by simply taking the address of
|
||||
|
|
|
@ -21,11 +21,12 @@ CONFIG_WINDOWS_CYGWIN=y
|
|||
# Build Configuration
|
||||
#
|
||||
# CONFIG_APPS_DIR="../apps"
|
||||
# CONFIG_BUILD_FLAT is not set
|
||||
CONFIG_BUILD_PROTECTED=y
|
||||
CONFIG_BUILD_2PASS=y
|
||||
CONFIG_PASS1_TARGET="all"
|
||||
CONFIG_PASS1_BUILDIR="configs/stm32f4discovery/kernel"
|
||||
CONFIG_PASS1_OBJECT=""
|
||||
CONFIG_BUILD_PROTECTED=y
|
||||
CONFIG_NUTTX_USERSPACE=0x08020000
|
||||
|
||||
#
|
||||
|
@ -35,6 +36,7 @@ CONFIG_NUTTX_USERSPACE=0x08020000
|
|||
CONFIG_INTELHEX_BINARY=y
|
||||
# CONFIG_MOTOROLA_SREC is not set
|
||||
CONFIG_RAW_BINARY=y
|
||||
# CONFIG_UBOOT_UIMAGE is not set
|
||||
|
||||
#
|
||||
# Customize Header Files
|
||||
|
@ -84,6 +86,7 @@ CONFIG_ARCH="arm"
|
|||
# CONFIG_ARCH_CHIP_KINETIS is not set
|
||||
# CONFIG_ARCH_CHIP_KL is not set
|
||||
# CONFIG_ARCH_CHIP_LM is not set
|
||||
# CONFIG_ARCH_CHIP_TIVA is not set
|
||||
# CONFIG_ARCH_CHIP_LPC17XX is not set
|
||||
# CONFIG_ARCH_CHIP_LPC214X is not set
|
||||
# CONFIG_ARCH_CHIP_LPC2378 is not set
|
||||
|
@ -110,8 +113,6 @@ CONFIG_ARCH_HAVE_CMNVECTOR=y
|
|||
# CONFIG_ARMV7M_CMNVECTOR is not set
|
||||
CONFIG_ARCH_HAVE_FPU=y
|
||||
# CONFIG_ARCH_FPU is not set
|
||||
CONFIG_ARCH_HAVE_MPU=y
|
||||
CONFIG_ARCH_USE_MPU=y
|
||||
CONFIG_ARMV7M_MPU=y
|
||||
CONFIG_ARMV7M_MPU_NREGIONS=8
|
||||
|
||||
|
@ -149,6 +150,7 @@ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
|
|||
# CONFIG_ARCH_CHIP_STM32L152V6 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32L152V8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32L152VB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32L162ZD is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F100C8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F100CB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F100R8 is not set
|
||||
|
@ -161,16 +163,18 @@ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
|
|||
# CONFIG_ARCH_CHIP_STM32F100VC is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F100VD is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F100VE is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103C4 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103C8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103T8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103TB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103C4 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103C8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103CB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103R8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103RB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103RC is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103RD is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103RE is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103V8 is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103VB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103RE is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103VC is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103VE is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F103ZE is not set
|
||||
|
@ -190,6 +194,7 @@ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
|
|||
# CONFIG_ARCH_CHIP_STM32F303RC is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F303VB is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F303VC is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F401RE is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F405RG is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F405VG is not set
|
||||
# CONFIG_ARCH_CHIP_STM32F405ZG is not set
|
||||
|
@ -217,15 +222,50 @@ CONFIG_ARCH_CHIP_STM32F407VG=y
|
|||
# CONFIG_STM32_MEDIUMDENSITY is not set
|
||||
# CONFIG_STM32_LOWDENSITY is not set
|
||||
# CONFIG_STM32_STM32F20XX is not set
|
||||
# CONFIG_STM32_STM32F207 is not set
|
||||
# CONFIG_STM32_STM32F30XX is not set
|
||||
CONFIG_STM32_STM32F40XX=y
|
||||
# CONFIG_STM32_STM32F401 is not set
|
||||
# CONFIG_STM32_STM32F405 is not set
|
||||
CONFIG_STM32_STM32F407=y
|
||||
# CONFIG_STM32_STM32F427 is not set
|
||||
# CONFIG_STM32_STM32F429 is not set
|
||||
# CONFIG_STM32_DFU is not set
|
||||
|
||||
#
|
||||
# STM32 Peripheral Support
|
||||
#
|
||||
CONFIG_STM32_HAVE_CCM=y
|
||||
# CONFIG_STM32_HAVE_USBDEV is not set
|
||||
CONFIG_STM32_HAVE_OTGFS=y
|
||||
CONFIG_STM32_HAVE_FSMC=y
|
||||
CONFIG_STM32_HAVE_USART3=y
|
||||
CONFIG_STM32_HAVE_USART4=y
|
||||
CONFIG_STM32_HAVE_USART5=y
|
||||
CONFIG_STM32_HAVE_USART6=y
|
||||
# CONFIG_STM32_HAVE_USART7 is not set
|
||||
# CONFIG_STM32_HAVE_USART8 is not set
|
||||
CONFIG_STM32_HAVE_TIM1=y
|
||||
CONFIG_STM32_HAVE_TIM5=y
|
||||
CONFIG_STM32_HAVE_TIM6=y
|
||||
CONFIG_STM32_HAVE_TIM7=y
|
||||
CONFIG_STM32_HAVE_TIM8=y
|
||||
CONFIG_STM32_HAVE_TIM9=y
|
||||
CONFIG_STM32_HAVE_TIM10=y
|
||||
CONFIG_STM32_HAVE_TIM11=y
|
||||
CONFIG_STM32_HAVE_TIM12=y
|
||||
CONFIG_STM32_HAVE_TIM13=y
|
||||
CONFIG_STM32_HAVE_TIM14=y
|
||||
# CONFIG_STM32_HAVE_TIM15 is not set
|
||||
# CONFIG_STM32_HAVE_TIM16 is not set
|
||||
# CONFIG_STM32_HAVE_TIM17 is not set
|
||||
CONFIG_STM32_HAVE_ADC2=y
|
||||
CONFIG_STM32_HAVE_ADC3=y
|
||||
# CONFIG_STM32_HAVE_ADC4 is not set
|
||||
CONFIG_STM32_HAVE_CAN1=y
|
||||
CONFIG_STM32_HAVE_CAN2=y
|
||||
CONFIG_STM32_HAVE_RNG=y
|
||||
CONFIG_STM32_HAVE_ETHMAC=y
|
||||
# CONFIG_STM32_ADC1 is not set
|
||||
# CONFIG_STM32_ADC2 is not set
|
||||
# CONFIG_STM32_ADC3 is not set
|
||||
|
@ -314,11 +354,17 @@ CONFIG_STM32_USART=y
|
|||
# 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_CUSTOM_STACK is not set
|
||||
# CONFIG_ARCH_ADDRENV is not set
|
||||
# CONFIG_ARCH_HAVE_ADDRENV is not set
|
||||
# CONFIG_ARCH_NEED_ADDRENV_MAPPING 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_USE_MPU=y
|
||||
# CONFIG_ARCH_IRQPRIO is not set
|
||||
CONFIG_ARCH_STACKDUMP=y
|
||||
# CONFIG_ENDIAN_BIG is not set
|
||||
|
@ -381,29 +427,6 @@ CONFIG_ARCH_HAVE_IRQBUTTONS=y
|
|||
#
|
||||
# RTOS Features
|
||||
#
|
||||
CONFIG_BOARD_INITIALIZE=y
|
||||
CONFIG_USEC_PER_TICK=10000
|
||||
# CONFIG_SYSTEM_TIME64 is not set
|
||||
CONFIG_RR_INTERVAL=200
|
||||
# CONFIG_SCHED_CPULOAD is not set
|
||||
# CONFIG_SCHED_INSTRUMENTATION is not set
|
||||
CONFIG_TASK_NAME_SIZE=0
|
||||
# CONFIG_SCHED_HAVE_PARENT is not set
|
||||
# CONFIG_JULIAN_TIME is not set
|
||||
CONFIG_START_YEAR=2013
|
||||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=22
|
||||
CONFIG_DEV_CONSOLE=y
|
||||
# CONFIG_MUTEX_TYPES is not set
|
||||
# CONFIG_PRIORITY_INHERITANCE is not set
|
||||
# CONFIG_FDCLONE_DISABLE is not set
|
||||
# CONFIG_FDCLONE_STDIO is not set
|
||||
CONFIG_SDCLONE_DISABLE=y
|
||||
# CONFIG_SCHED_WAITPID is not set
|
||||
# CONFIG_SCHED_STARTHOOK is not set
|
||||
# CONFIG_SCHED_ATEXIT is not set
|
||||
# CONFIG_SCHED_ONEXIT is not set
|
||||
CONFIG_USER_ENTRYPOINT="ostest_main"
|
||||
CONFIG_DISABLE_OS_API=y
|
||||
# CONFIG_DISABLE_POSIX_TIMERS is not set
|
||||
# CONFIG_DISABLE_PTHREAD is not set
|
||||
|
@ -411,6 +434,64 @@ CONFIG_DISABLE_OS_API=y
|
|||
# CONFIG_DISABLE_MQUEUE is not set
|
||||
CONFIG_DISABLE_ENVIRON=y
|
||||
|
||||
#
|
||||
# Clocks and Timers
|
||||
#
|
||||
CONFIG_USEC_PER_TICK=10000
|
||||
# CONFIG_SYSTEM_TIME64 is not set
|
||||
# CONFIG_CLOCK_MONOTONIC is not set
|
||||
# CONFIG_JULIAN_TIME is not set
|
||||
CONFIG_START_YEAR=2013
|
||||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=22
|
||||
CONFIG_MAX_WDOGPARMS=2
|
||||
CONFIG_PREALLOC_WDOGS=8
|
||||
CONFIG_WDOG_INTRESERVE=2
|
||||
CONFIG_PREALLOC_TIMERS=4
|
||||
|
||||
#
|
||||
# Tasks and Scheduling
|
||||
#
|
||||
CONFIG_USER_ENTRYPOINT="ostest_main"
|
||||
CONFIG_RR_INTERVAL=200
|
||||
CONFIG_TASK_NAME_SIZE=0
|
||||
CONFIG_MAX_TASK_ARGS=4
|
||||
CONFIG_MAX_TASKS=16
|
||||
# CONFIG_SCHED_HAVE_PARENT is not set
|
||||
# CONFIG_SCHED_WAITPID is not set
|
||||
|
||||
#
|
||||
# Pthread Options
|
||||
#
|
||||
# CONFIG_MUTEX_TYPES is not set
|
||||
CONFIG_NPTHREAD_KEYS=4
|
||||
|
||||
#
|
||||
# Performance Monitoring
|
||||
#
|
||||
# CONFIG_SCHED_CPULOAD is not set
|
||||
# CONFIG_SCHED_INSTRUMENTATION 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_SCHED_STARTHOOK is not set
|
||||
# CONFIG_SCHED_ATEXIT is not set
|
||||
# CONFIG_SCHED_ONEXIT is not set
|
||||
|
||||
#
|
||||
# Signal Numbers
|
||||
#
|
||||
|
@ -420,19 +501,10 @@ CONFIG_SIG_SIGALARM=3
|
|||
CONFIG_SIG_SIGCONDTIMEDOUT=16
|
||||
|
||||
#
|
||||
# Sizes of configurable things (0 disables)
|
||||
# POSIX Message Queue Options
|
||||
#
|
||||
CONFIG_MAX_TASKS=16
|
||||
CONFIG_MAX_TASK_ARGS=4
|
||||
CONFIG_NPTHREAD_KEYS=4
|
||||
CONFIG_NFILE_DESCRIPTORS=8
|
||||
CONFIG_NFILE_STREAMS=8
|
||||
CONFIG_NAME_MAX=32
|
||||
CONFIG_PREALLOC_MQ_MSGS=4
|
||||
CONFIG_MQ_MAXMSGSIZE=32
|
||||
CONFIG_MAX_WDOGPARMS=2
|
||||
CONFIG_PREALLOC_WDOGS=4
|
||||
CONFIG_PREALLOC_TIMERS=4
|
||||
|
||||
#
|
||||
# Stack and heap information
|
||||
|
@ -441,10 +513,7 @@ CONFIG_IDLETHREAD_STACKSIZE=1024
|
|||
CONFIG_USERMAIN_STACKSIZE=2048
|
||||
CONFIG_PTHREAD_STACK_MIN=256
|
||||
CONFIG_PTHREAD_STACK_DEFAULT=2048
|
||||
|
||||
#
|
||||
# System call configuration
|
||||
#
|
||||
CONFIG_LIB_SYSCALL=y
|
||||
CONFIG_SYS_RESERVED=8
|
||||
CONFIG_SYS_NNEST=2
|
||||
|
||||
|
@ -455,6 +524,12 @@ CONFIG_DISABLE_POLL=y
|
|||
CONFIG_DEV_NULL=y
|
||||
# CONFIG_DEV_ZERO is not set
|
||||
# CONFIG_LOOP is not set
|
||||
|
||||
#
|
||||
# Buffering
|
||||
#
|
||||
# CONFIG_DRVR_WRITEBUFFER is not set
|
||||
# CONFIG_DRVR_READAHEAD is not set
|
||||
# CONFIG_RAMDISK is not set
|
||||
# CONFIG_CAN is not set
|
||||
# CONFIG_ARCH_HAVE_PWM_PULSECOUNT is not set
|
||||
|
@ -465,6 +540,7 @@ CONFIG_ARCH_HAVE_I2CRESET=y
|
|||
# CONFIG_I2S is not set
|
||||
# CONFIG_RTC is not set
|
||||
# CONFIG_WATCHDOG is not set
|
||||
# CONFIG_TIMER is not set
|
||||
# CONFIG_ANALOG is not set
|
||||
# CONFIG_AUDIO_DEVICES is not set
|
||||
# CONFIG_VIDEO_DEVICES is not set
|
||||
|
@ -544,6 +620,11 @@ CONFIG_USART2_2STOP=0
|
|||
# CONFIG_ARCH_HAVE_PHY is not set
|
||||
# CONFIG_NET is not set
|
||||
|
||||
#
|
||||
# Crypto API
|
||||
#
|
||||
# CONFIG_CRYPTO is not set
|
||||
|
||||
#
|
||||
# File Systems
|
||||
#
|
||||
|
@ -591,7 +672,6 @@ CONFIG_MM_REGIONS=2
|
|||
# CONFIG_BINFMT_DISABLE is not set
|
||||
# CONFIG_NXFLAT is not set
|
||||
# CONFIG_ELF is not set
|
||||
# CONFIG_BUILTIN is not set
|
||||
# CONFIG_PIC is not set
|
||||
CONFIG_SYMTAB_ORDEREDBYNAME=y
|
||||
|
||||
|
@ -650,6 +730,7 @@ CONFIG_LIB_SENDFILE_BUFSIZE=512
|
|||
# CONFIG_EXAMPLES_BUTTONS is not set
|
||||
# CONFIG_EXAMPLES_CAN is not set
|
||||
# CONFIG_EXAMPLES_CONFIGDATA is not set
|
||||
# CONFIG_EXAMPLES_CPUHOG is not set
|
||||
# CONFIG_EXAMPLES_DHCPD is not set
|
||||
# CONFIG_EXAMPLES_ELF is not set
|
||||
# CONFIG_EXAMPLES_FTPC is not set
|
||||
|
@ -660,7 +741,6 @@ CONFIG_LIB_SENDFILE_BUFSIZE=512
|
|||
# CONFIG_EXAMPLES_HIDKBD is not set
|
||||
# CONFIG_EXAMPLES_KEYPADTEST is not set
|
||||
# CONFIG_EXAMPLES_IGMP is not set
|
||||
# CONFIG_EXAMPLES_LCDRW is not set
|
||||
# CONFIG_EXAMPLES_MM is not set
|
||||
# CONFIG_EXAMPLES_MODBUS is not set
|
||||
# CONFIG_EXAMPLES_MOUNT is not set
|
||||
|
@ -681,7 +761,6 @@ CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
|
|||
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
|
||||
CONFIG_EXAMPLES_OSTEST_RR_RANGE=10000
|
||||
CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
||||
# CONFIG_EXAMPLES_PASHELLO is not set
|
||||
# CONFIG_EXAMPLES_PIPE is not set
|
||||
# CONFIG_EXAMPLES_POLL is not set
|
||||
# CONFIG_EXAMPLES_POSIXSPAWN is not set
|
||||
|
@ -689,6 +768,8 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
|||
# CONFIG_EXAMPLES_RGMP is not set
|
||||
# CONFIG_EXAMPLES_ROMFS is not set
|
||||
# CONFIG_EXAMPLES_SENDMAIL is not set
|
||||
# CONFIG_EXAMPLES_SERIALBLASTER is not set
|
||||
# CONFIG_EXAMPLES_SERIALRX is not set
|
||||
# CONFIG_EXAMPLES_SERLOOP is not set
|
||||
# CONFIG_EXAMPLES_SLCD is not set
|
||||
# CONFIG_EXAMPLES_SMART is not set
|
||||
|
@ -755,27 +836,15 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
|||
# System Libraries and NSH Add-Ons
|
||||
#
|
||||
|
||||
#
|
||||
# USB CDC/ACM Device Commands
|
||||
#
|
||||
|
||||
#
|
||||
# USB Composite Device Commands
|
||||
#
|
||||
|
||||
#
|
||||
# Custom Free Memory Command
|
||||
#
|
||||
# CONFIG_SYSTEM_FREE is not set
|
||||
|
||||
#
|
||||
# I2C tool
|
||||
# EMACS-like Command Line Editor
|
||||
#
|
||||
|
||||
#
|
||||
# INI File Parser
|
||||
#
|
||||
# CONFIG_SYSTEM_INIFILE is not set
|
||||
# CONFIG_SYSTEM_CLE is not set
|
||||
|
||||
#
|
||||
# FLASH Program Installation
|
||||
|
@ -786,6 +855,20 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
|||
# FLASH Erase-all Command
|
||||
#
|
||||
|
||||
#
|
||||
# Intel HEX to binary conversion
|
||||
#
|
||||
# CONFIG_SYSTEM_HEX2BIN is not set
|
||||
|
||||
#
|
||||
# I2C tool
|
||||
#
|
||||
|
||||
#
|
||||
# INI File Parser
|
||||
#
|
||||
# CONFIG_SYSTEM_INIFILE is not set
|
||||
|
||||
#
|
||||
# NxPlayer media player library / command Line
|
||||
#
|
||||
|
@ -801,6 +884,14 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
|||
#
|
||||
# CONFIG_SYSTEM_READLINE is not set
|
||||
|
||||
#
|
||||
# P-Code Support
|
||||
#
|
||||
|
||||
#
|
||||
# PHY Tool
|
||||
#
|
||||
|
||||
#
|
||||
# Power Off
|
||||
#
|
||||
|
@ -816,20 +907,16 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
|||
#
|
||||
# CONFIG_SYSTEM_SDCARD is not set
|
||||
|
||||
#
|
||||
# Sudoku
|
||||
#
|
||||
# CONFIG_SYSTEM_SUDOKU is not set
|
||||
|
||||
#
|
||||
# Sysinfo
|
||||
#
|
||||
# CONFIG_SYSTEM_SYSINFO is not set
|
||||
|
||||
#
|
||||
# USB Monitor
|
||||
#
|
||||
|
||||
#
|
||||
# EMACS-like Command Line Editor
|
||||
#
|
||||
# CONFIG_SYSTEM_CLE is not set
|
||||
|
||||
#
|
||||
# VI Work-Alike Editor
|
||||
#
|
||||
|
@ -839,10 +926,22 @@ CONFIG_EXAMPLES_OSTEST_RR_RUNS=10
|
|||
# Stack Monitor
|
||||
#
|
||||
|
||||
#
|
||||
# USB CDC/ACM Device Commands
|
||||
#
|
||||
|
||||
#
|
||||
# USB Composite Device Commands
|
||||
#
|
||||
|
||||
#
|
||||
# USB Mass Storage Device Commands
|
||||
#
|
||||
|
||||
#
|
||||
# USB Monitor
|
||||
#
|
||||
|
||||
#
|
||||
# Zmodem Commands
|
||||
#
|
||||
|
|
|
@ -43,8 +43,31 @@
|
|||
#include <nuttx/compiler.h>
|
||||
|
||||
/************************************************************************
|
||||
* Definitions
|
||||
* Pre-processor Definitions
|
||||
************************************************************************/
|
||||
/* How can we access the errno variable? */
|
||||
|
||||
#undef __DIRECT_ERRNO_ACCESS
|
||||
#if !defined(CONFIG_LIB_SYSCALL)
|
||||
/* No system calls? Then there can only be direct access */
|
||||
|
||||
# define __DIRECT_ERRNO_ACCESS 1
|
||||
|
||||
#elif !defined(CONFIG_BUILD_PROTECTED) && !defined(CONFIG_BUILD_KERNEL)
|
||||
/* Flat build... complete access */
|
||||
|
||||
# define __DIRECT_ERRNO_ACCESS 1
|
||||
|
||||
#elif defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__)
|
||||
/* Kernel portion of protected build. The Kernel has access */
|
||||
|
||||
# define __DIRECT_ERRNO_ACCESS 1
|
||||
|
||||
#elif defined(CONFIG_BUILD_KERNEL)
|
||||
/* Kernel only build. The kernel has access */
|
||||
|
||||
# define __DIRECT_ERRNO_ACCESS 1
|
||||
#endif
|
||||
|
||||
/* Convenience/compatibility definition.
|
||||
*
|
||||
|
@ -52,7 +75,7 @@
|
|||
* from all code using a simple pointer.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_LIB_SYSCALL
|
||||
#ifdef __DIRECT_ERRNO_ACCESS
|
||||
|
||||
# define errno *get_errno_ptr()
|
||||
# define set_errno(e) do { errno = (int)(e); } while (0)
|
||||
|
@ -64,16 +87,8 @@
|
|||
* a little differently. In kernel-mode, the TCB errno value can still be
|
||||
* read and written using a pointer from code executing within the
|
||||
* kernel.
|
||||
*/
|
||||
|
||||
#if (defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__)) || \
|
||||
defined(CONFIG_BUILD_KERNEL)
|
||||
# define errno *get_errno_ptr()
|
||||
# define set_errno(e) do { errno = (int)(e); } while (0)
|
||||
# define get_errno(e) errno
|
||||
#else
|
||||
|
||||
/* But in user-mode, the errno can only be read using the name 'errno'.
|
||||
*
|
||||
* But in user-mode, the errno can only be read using the name 'errno'.
|
||||
* The non-standard API set_errno() must explicitly be used from user-
|
||||
* mode code in order to set the errno value.
|
||||
*
|
||||
|
@ -84,8 +99,7 @@
|
|||
|
||||
# define errno get_errno()
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* CONFIG_LIB_SYSCALL */
|
||||
#endif /* __DIRECT_ERRNO_ACCESS */
|
||||
|
||||
/* Definitions of error numbers and the string that would be
|
||||
* returned by strerror().
|
||||
|
@ -365,7 +379,7 @@ extern "C"
|
|||
|
||||
FAR int *get_errno_ptr(void);
|
||||
|
||||
#ifdef CONFIG_LIB_SYSCALL
|
||||
#ifndef __DIRECT_ERRNO_ACCESS
|
||||
void set_errno(int errcode);
|
||||
int get_errno(void);
|
||||
#endif
|
||||
|
|
|
@ -617,8 +617,8 @@ void up_signal_dispatch(_sa_sigaction_t sighand, int signo,
|
|||
*
|
||||
****************************************************************************/
|
||||
|
||||
#if (defined(CONFIG_BUILD_PROTECTED) && defined(__KERNEL__)) || \
|
||||
defined(CONFIG_BUILD_KERNEL) && !defined(CONFIG_DISABLE_SIGNALS)
|
||||
#if (defined(CONFIG_BUILD_PROTECTED) && !defined(__KERNEL__)) && \
|
||||
!defined(CONFIG_DISABLE_SIGNALS)
|
||||
void up_signal_handler(_sa_sigaction_t sighand, int signo,
|
||||
FAR siginfo_t *info, FAR void *ucontext)
|
||||
noreturn_function;
|
||||
|
|
|
@ -90,9 +90,24 @@
|
|||
uint32_t syscall_clock_systimer(void);
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor definitions
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/* Errno access is awkward. We need to generate get_errno() and set_errno()
|
||||
* interfaces to support the system calls, even though we don't use them
|
||||
* ourself.
|
||||
*
|
||||
* The "normal" protoypes for these functions is in errno.h. The following
|
||||
* must agree exactly.
|
||||
*/
|
||||
|
||||
#ifdef __DIRECT_ERRNO_ACCESS
|
||||
# undef set_errno
|
||||
# undef get_errno
|
||||
void set_errno(int errcode);
|
||||
int get_errno(void);
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Public Data
|
||||
****************************************************************************/
|
||||
|
|
Loading…
Reference in a new issue