From 5fc10971ff3781dafc0e0b283403a489e1d31c29 Mon Sep 17 00:00:00 2001 From: MAD-CRAZY-MAN Date: Thu, 24 Nov 2022 11:40:19 +0900 Subject: [PATCH] update by NuttX 10.3+ --- boards/thepeach/k1/default.px4board | 16 +++---- .../thepeach/k1/extras/px4_io-v2_default.bin | Bin 39952 -> 40140 bytes boards/thepeach/k1/init/rc.board_defaults | 2 + boards/thepeach/k1/nuttx-config/nsh/defconfig | 39 ++++++++++++++---- boards/thepeach/k1/src/can.c | 2 +- boards/thepeach/k1/src/usb.c | 2 +- boards/thepeach/r1/default.px4board | 16 +++---- .../thepeach/r1/extras/px4_io-v2_default.bin | Bin 39952 -> 40140 bytes boards/thepeach/r1/init/rc.board_defaults | 2 + boards/thepeach/r1/nuttx-config/nsh/defconfig | 39 ++++++++++++++---- boards/thepeach/r1/src/can.c | 2 +- boards/thepeach/r1/src/usb.c | 2 +- 12 files changed, 84 insertions(+), 38 deletions(-) diff --git a/boards/thepeach/k1/default.px4board b/boards/thepeach/k1/default.px4board index 4d4ab00a94..0c1e4b32b5 100644 --- a/boards/thepeach/k1/default.px4board +++ b/boards/thepeach/k1/default.px4board @@ -16,7 +16,6 @@ CONFIG_COMMON_DISTANCE_SENSOR=y CONFIG_DRIVERS_DSHOT=y CONFIG_DRIVERS_GPS=y CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602=y -CONFIG_DRIVERS_IMU_INVENSENSE_ICM20948=y CONFIG_DRIVERS_IMU_INVENSENSE_MPU9250=y CONFIG_DRIVERS_IRLOCK=y CONFIG_COMMON_LIGHT=y @@ -25,13 +24,10 @@ CONFIG_COMMON_OPTICAL_FLOW=y CONFIG_DRIVERS_OSD=y CONFIG_DRIVERS_PCA9685=y CONFIG_DRIVERS_PCA9685_PWM_OUT=y -CONFIG_DRIVERS_POWER_MONITOR_INA226=y CONFIG_DRIVERS_PWM_INPUT=y CONFIG_DRIVERS_PWM_OUT=y -CONFIG_DRIVERS_PWM_OUT_SIM=y CONFIG_DRIVERS_PX4IO=y CONFIG_DRIVERS_ROBOCLAW=y -CONFIG_DRIVERS_RPM=y CONFIG_DRIVERS_SMART_BATTERY_BATMON=y CONFIG_COMMON_TELEMETRY=y CONFIG_DRIVERS_TONE_ALARM=y @@ -42,6 +38,7 @@ CONFIG_MODULES_ATTITUDE_ESTIMATOR_Q=y CONFIG_MODULES_BATTERY_STATUS=y CONFIG_MODULES_CAMERA_FEEDBACK=y CONFIG_MODULES_COMMANDER=y +CONFIG_MODULES_CONTROL_ALLOCATOR=y CONFIG_MODULES_DATAMAN=y CONFIG_MODULES_EKF2=y CONFIG_MODULES_ESC_BATTERY=y @@ -50,6 +47,7 @@ CONFIG_MODULES_FLIGHT_MODE_MANAGER=y CONFIG_MODULES_FW_ATT_CONTROL=y CONFIG_MODULES_FW_AUTOTUNE_ATTITUDE_CONTROL=y CONFIG_MODULES_FW_POS_CONTROL_L1=y +CONFIG_MODULES_GIMBAL=y CONFIG_MODULES_GYRO_CALIBRATION=y CONFIG_MODULES_GYRO_FFT=y CONFIG_MODULES_LAND_DETECTOR=y @@ -65,19 +63,21 @@ CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y CONFIG_MODULES_MC_POS_CONTROL=y CONFIG_MODULES_MC_RATE_CONTROL=y -CONFIG_MODULES_CONTROL_ALLOCATOR=y CONFIG_MODULES_NAVIGATOR=y CONFIG_MODULES_RC_UPDATE=y CONFIG_MODULES_ROVER_POS_CONTROL=y CONFIG_MODULES_SENSORS=y -CONFIG_MODULES_SIH=y +CONFIG_MODULES_SIMULATION_PWM_OUT_SIM=y +CONFIG_MODULES_SIMULATION_SENSOR_BARO_SIM=y +CONFIG_MODULES_SIMULATION_SENSOR_GPS_SIM=y +CONFIG_MODULES_SIMULATION_SENSOR_MAG_SIM=y +CONFIG_MODULES_SIMULATION_SIMULATOR_SIH=y CONFIG_MODULES_TEMPERATURE_COMPENSATION=y CONFIG_MODULES_UUV_ATT_CONTROL=y CONFIG_MODULES_UUV_POS_CONTROL=y -CONFIG_MODULES_GIMBAL=y CONFIG_MODULES_VTOL_ATT_CONTROL=y -CONFIG_SYSTEMCMDS_BL_UPDATE=y CONFIG_SYSTEMCMDS_ACTUATOR_TEST=y +CONFIG_SYSTEMCMDS_BL_UPDATE=y CONFIG_SYSTEMCMDS_DUMPFILE=y CONFIG_SYSTEMCMDS_GPIO=y CONFIG_SYSTEMCMDS_HARDFAULT_LOG=y diff --git a/boards/thepeach/k1/extras/px4_io-v2_default.bin b/boards/thepeach/k1/extras/px4_io-v2_default.bin index 25a00e2357d781ece9c0d41447c3f4a52c6d19f6..957f0f13a12e8eb8a7979955f29ad98d82433933 100755 GIT binary patch delta 19093 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 delta 19059 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 diff --git a/boards/thepeach/k1/init/rc.board_defaults b/boards/thepeach/k1/init/rc.board_defaults index f22fa838f4..5d8a3c182b 100644 --- a/boards/thepeach/k1/init/rc.board_defaults +++ b/boards/thepeach/k1/init/rc.board_defaults @@ -5,3 +5,5 @@ param set-default BAT1_V_DIV 18.1 param set-default BAT1_A_PER_V 36.367515152 + +param set-default SYS_USE_IO 1 diff --git a/boards/thepeach/k1/nuttx-config/nsh/defconfig b/boards/thepeach/k1/nuttx-config/nsh/defconfig index e087c61fcd..5a2eafb318 100644 --- a/boards/thepeach/k1/nuttx-config/nsh/defconfig +++ b/boards/thepeach/k1/nuttx-config/nsh/defconfig @@ -7,21 +7,46 @@ # # CONFIG_DISABLE_ENVIRON is not set # CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set +# CONFIG_DISABLE_PTHREAD is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set # CONFIG_MMCSD_HAVE_WRITEPROTECT is not set # CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_SPI is not set # CONFIG_NSH_DISABLEBG is not set # CONFIG_NSH_DISABLESCRIPT is not set +# CONFIG_NSH_DISABLE_CAT is not set +# CONFIG_NSH_DISABLE_CD is not set +# CONFIG_NSH_DISABLE_CP is not set # CONFIG_NSH_DISABLE_DF is not set +# CONFIG_NSH_DISABLE_ECHO is not set +# CONFIG_NSH_DISABLE_ENV is not set # CONFIG_NSH_DISABLE_EXEC is not set # CONFIG_NSH_DISABLE_EXIT is not set +# CONFIG_NSH_DISABLE_EXPORT is not set +# CONFIG_NSH_DISABLE_FREE is not set # CONFIG_NSH_DISABLE_GET is not set +# CONFIG_NSH_DISABLE_HELP is not set # CONFIG_NSH_DISABLE_ITEF is not set +# CONFIG_NSH_DISABLE_KILL is not set # CONFIG_NSH_DISABLE_LOOPS is not set +# CONFIG_NSH_DISABLE_LS is not set +# CONFIG_NSH_DISABLE_MKDIR is not set # CONFIG_NSH_DISABLE_MKFATFS is not set +# CONFIG_NSH_DISABLE_MOUNT is not set +# CONFIG_NSH_DISABLE_MV is not set +# CONFIG_NSH_DISABLE_PRINTF is not set +# CONFIG_NSH_DISABLE_PWD is not set +# CONFIG_NSH_DISABLE_RM is not set +# CONFIG_NSH_DISABLE_RMDIR is not set # CONFIG_NSH_DISABLE_SEMICOLON is not set +# CONFIG_NSH_DISABLE_SET is not set +# CONFIG_NSH_DISABLE_SLEEP is not set +# CONFIG_NSH_DISABLE_SOURCE is not set +# CONFIG_NSH_DISABLE_TEST is not set # CONFIG_NSH_DISABLE_TIME is not set +# CONFIG_NSH_DISABLE_UMOUNT is not set +# CONFIG_NSH_DISABLE_UNSET is not set +# CONFIG_NSH_DISABLE_USLEEP is not set # CONFIG_STM32_CCMEXCLUDE is not set CONFIG_ARCH="arm" CONFIG_ARCH_BOARD_CUSTOM=y @@ -40,8 +65,8 @@ CONFIG_BOARDCTL_RESET=y CONFIG_BOARD_CRASHDUMP=y CONFIG_BOARD_LOOPSPERMSEC=16717 CONFIG_BOARD_RESET_ON_ASSERT=2 +CONFIG_BOARD_ASSERT_RESET_VALUE=0 CONFIG_BUILTIN=y -CONFIG_C99_BOOL8=y CONFIG_CDCACM=y CONFIG_CDCACM_IFLOWCONTROL=y CONFIG_CDCACM_PRODUCTID=0x0001 @@ -57,7 +82,6 @@ CONFIG_DEFAULT_SMALL=y CONFIG_DEV_FIFO_SIZE=0 CONFIG_DEV_PIPE_MAXSIZE=1024 CONFIG_DEV_PIPE_SIZE=70 -CONFIG_DISABLE_MQUEUE=y CONFIG_EXAMPLES_CALIB_UDELAY=y CONFIG_FAT_DMAMEMORY=y CONFIG_FAT_LCNAMES=y @@ -79,7 +103,10 @@ CONFIG_HAVE_CXXINITIALIZE=y CONFIG_I2C=y CONFIG_I2C_RESET=y CONFIG_IDLETHREAD_STACKSIZE=750 +CONFIG_INIT_ENTRYPOINT="nsh_main" +CONFIG_INIT_STACKSIZE=2944 CONFIG_LIBC_LONG_LONG=y +CONFIG_LIBC_MAX_EXITFUNS=1 CONFIG_LIBC_STRERROR=y CONFIG_MEMSET_64BIT=y CONFIG_MEMSET_OPTSPEED=y @@ -97,9 +124,6 @@ CONFIG_NSH_ARGCAT=y CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_CMDPARMS=y CONFIG_NSH_CROMFSETC=y -CONFIG_NSH_DISABLE_IFCONFIG=y -CONFIG_NSH_DISABLE_IFUPDOWN=y -CONFIG_NSH_DISABLE_TELNETD=y CONFIG_NSH_LINELEN=128 CONFIG_NSH_MAXARGUMENTS=15 CONFIG_NSH_NESTDEPTH=8 @@ -118,17 +142,16 @@ CONFIG_RAM_SIZE=262144 CONFIG_RAM_START=0x20000000 CONFIG_RAW_BINARY=y CONFIG_RTC_DATETIME=y -CONFIG_SCHED_ATEXIT=y CONFIG_SCHED_HPWORK=y CONFIG_SCHED_HPWORKPRIORITY=249 CONFIG_SCHED_HPWORKSTACKSIZE=1280 CONFIG_SCHED_INSTRUMENTATION=y CONFIG_SCHED_INSTRUMENTATION_EXTERNAL=y +CONFIG_SCHED_INSTRUMENTATION_SWITCH=y CONFIG_SCHED_LPWORK=y CONFIG_SCHED_LPWORKPRIORITY=50 CONFIG_SCHED_LPWORKSTACKSIZE=1632 CONFIG_SCHED_WAITPID=y -CONFIG_SDCLONE_DISABLE=y CONFIG_SDIO_BLOCKSETUP=y CONFIG_SEM_PREALLOCHOLDERS=32 CONFIG_SERIAL_IFLOWCONTROL_WATERMARKS=y @@ -226,5 +249,3 @@ CONFIG_USBDEV=y CONFIG_USBDEV_BUSPOWERED=y CONFIG_USBDEV_MAXPOWER=500 CONFIG_USEC_PER_TICK=1000 -CONFIG_USERMAIN_STACKSIZE=2944 -CONFIG_USER_ENTRYPOINT="nsh_main" diff --git a/boards/thepeach/k1/src/can.c b/boards/thepeach/k1/src/can.c index 5a32d62832..89b8ba2281 100644 --- a/boards/thepeach/k1/src/can.c +++ b/boards/thepeach/k1/src/can.c @@ -50,7 +50,7 @@ #include #include "chip.h" -#include "arm_arch.h" +#include "arm_internal.h" #include "stm32.h" #include "stm32_can.h" diff --git a/boards/thepeach/k1/src/usb.c b/boards/thepeach/k1/src/usb.c index 6fbea86a0b..eed786901e 100644 --- a/boards/thepeach/k1/src/usb.c +++ b/boards/thepeach/k1/src/usb.c @@ -51,7 +51,7 @@ #include #include -#include +#include #include #include "board_config.h" diff --git a/boards/thepeach/r1/default.px4board b/boards/thepeach/r1/default.px4board index 4d4ab00a94..0c1e4b32b5 100644 --- a/boards/thepeach/r1/default.px4board +++ b/boards/thepeach/r1/default.px4board @@ -16,7 +16,6 @@ CONFIG_COMMON_DISTANCE_SENSOR=y CONFIG_DRIVERS_DSHOT=y CONFIG_DRIVERS_GPS=y CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602=y -CONFIG_DRIVERS_IMU_INVENSENSE_ICM20948=y CONFIG_DRIVERS_IMU_INVENSENSE_MPU9250=y CONFIG_DRIVERS_IRLOCK=y CONFIG_COMMON_LIGHT=y @@ -25,13 +24,10 @@ CONFIG_COMMON_OPTICAL_FLOW=y CONFIG_DRIVERS_OSD=y CONFIG_DRIVERS_PCA9685=y CONFIG_DRIVERS_PCA9685_PWM_OUT=y -CONFIG_DRIVERS_POWER_MONITOR_INA226=y CONFIG_DRIVERS_PWM_INPUT=y CONFIG_DRIVERS_PWM_OUT=y -CONFIG_DRIVERS_PWM_OUT_SIM=y CONFIG_DRIVERS_PX4IO=y CONFIG_DRIVERS_ROBOCLAW=y -CONFIG_DRIVERS_RPM=y CONFIG_DRIVERS_SMART_BATTERY_BATMON=y CONFIG_COMMON_TELEMETRY=y CONFIG_DRIVERS_TONE_ALARM=y @@ -42,6 +38,7 @@ CONFIG_MODULES_ATTITUDE_ESTIMATOR_Q=y CONFIG_MODULES_BATTERY_STATUS=y CONFIG_MODULES_CAMERA_FEEDBACK=y CONFIG_MODULES_COMMANDER=y +CONFIG_MODULES_CONTROL_ALLOCATOR=y CONFIG_MODULES_DATAMAN=y CONFIG_MODULES_EKF2=y CONFIG_MODULES_ESC_BATTERY=y @@ -50,6 +47,7 @@ CONFIG_MODULES_FLIGHT_MODE_MANAGER=y CONFIG_MODULES_FW_ATT_CONTROL=y CONFIG_MODULES_FW_AUTOTUNE_ATTITUDE_CONTROL=y CONFIG_MODULES_FW_POS_CONTROL_L1=y +CONFIG_MODULES_GIMBAL=y CONFIG_MODULES_GYRO_CALIBRATION=y CONFIG_MODULES_GYRO_FFT=y CONFIG_MODULES_LAND_DETECTOR=y @@ -65,19 +63,21 @@ CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y CONFIG_MODULES_MC_POS_CONTROL=y CONFIG_MODULES_MC_RATE_CONTROL=y -CONFIG_MODULES_CONTROL_ALLOCATOR=y CONFIG_MODULES_NAVIGATOR=y CONFIG_MODULES_RC_UPDATE=y CONFIG_MODULES_ROVER_POS_CONTROL=y CONFIG_MODULES_SENSORS=y -CONFIG_MODULES_SIH=y +CONFIG_MODULES_SIMULATION_PWM_OUT_SIM=y +CONFIG_MODULES_SIMULATION_SENSOR_BARO_SIM=y +CONFIG_MODULES_SIMULATION_SENSOR_GPS_SIM=y +CONFIG_MODULES_SIMULATION_SENSOR_MAG_SIM=y +CONFIG_MODULES_SIMULATION_SIMULATOR_SIH=y CONFIG_MODULES_TEMPERATURE_COMPENSATION=y CONFIG_MODULES_UUV_ATT_CONTROL=y CONFIG_MODULES_UUV_POS_CONTROL=y -CONFIG_MODULES_GIMBAL=y CONFIG_MODULES_VTOL_ATT_CONTROL=y -CONFIG_SYSTEMCMDS_BL_UPDATE=y CONFIG_SYSTEMCMDS_ACTUATOR_TEST=y +CONFIG_SYSTEMCMDS_BL_UPDATE=y CONFIG_SYSTEMCMDS_DUMPFILE=y CONFIG_SYSTEMCMDS_GPIO=y CONFIG_SYSTEMCMDS_HARDFAULT_LOG=y diff --git a/boards/thepeach/r1/extras/px4_io-v2_default.bin b/boards/thepeach/r1/extras/px4_io-v2_default.bin index 25a00e2357d781ece9c0d41447c3f4a52c6d19f6..957f0f13a12e8eb8a7979955f29ad98d82433933 100755 GIT binary patch delta 19093 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 delta 19059 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 diff --git a/boards/thepeach/r1/init/rc.board_defaults b/boards/thepeach/r1/init/rc.board_defaults index f22fa838f4..5d8a3c182b 100644 --- a/boards/thepeach/r1/init/rc.board_defaults +++ b/boards/thepeach/r1/init/rc.board_defaults @@ -5,3 +5,5 @@ param set-default BAT1_V_DIV 18.1 param set-default BAT1_A_PER_V 36.367515152 + +param set-default SYS_USE_IO 1 diff --git a/boards/thepeach/r1/nuttx-config/nsh/defconfig b/boards/thepeach/r1/nuttx-config/nsh/defconfig index 0d4bb0a5cf..d0ff394458 100644 --- a/boards/thepeach/r1/nuttx-config/nsh/defconfig +++ b/boards/thepeach/r1/nuttx-config/nsh/defconfig @@ -7,21 +7,46 @@ # # CONFIG_DISABLE_ENVIRON is not set # CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set +# CONFIG_DISABLE_PTHREAD is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set # CONFIG_MMCSD_HAVE_WRITEPROTECT is not set # CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_SPI is not set # CONFIG_NSH_DISABLEBG is not set # CONFIG_NSH_DISABLESCRIPT is not set +# CONFIG_NSH_DISABLE_CAT is not set +# CONFIG_NSH_DISABLE_CD is not set +# CONFIG_NSH_DISABLE_CP is not set # CONFIG_NSH_DISABLE_DF is not set +# CONFIG_NSH_DISABLE_ECHO is not set +# CONFIG_NSH_DISABLE_ENV is not set # CONFIG_NSH_DISABLE_EXEC is not set # CONFIG_NSH_DISABLE_EXIT is not set +# CONFIG_NSH_DISABLE_EXPORT is not set +# CONFIG_NSH_DISABLE_FREE is not set # CONFIG_NSH_DISABLE_GET is not set +# CONFIG_NSH_DISABLE_HELP is not set # CONFIG_NSH_DISABLE_ITEF is not set +# CONFIG_NSH_DISABLE_KILL is not set # CONFIG_NSH_DISABLE_LOOPS is not set +# CONFIG_NSH_DISABLE_LS is not set +# CONFIG_NSH_DISABLE_MKDIR is not set # CONFIG_NSH_DISABLE_MKFATFS is not set +# CONFIG_NSH_DISABLE_MOUNT is not set +# CONFIG_NSH_DISABLE_MV is not set +# CONFIG_NSH_DISABLE_PRINTF is not set +# CONFIG_NSH_DISABLE_PWD is not set +# CONFIG_NSH_DISABLE_RM is not set +# CONFIG_NSH_DISABLE_RMDIR is not set # CONFIG_NSH_DISABLE_SEMICOLON is not set +# CONFIG_NSH_DISABLE_SET is not set +# CONFIG_NSH_DISABLE_SLEEP is not set +# CONFIG_NSH_DISABLE_SOURCE is not set +# CONFIG_NSH_DISABLE_TEST is not set # CONFIG_NSH_DISABLE_TIME is not set +# CONFIG_NSH_DISABLE_UMOUNT is not set +# CONFIG_NSH_DISABLE_UNSET is not set +# CONFIG_NSH_DISABLE_USLEEP is not set # CONFIG_STM32_CCMEXCLUDE is not set CONFIG_ARCH="arm" CONFIG_ARCH_BOARD_CUSTOM=y @@ -40,8 +65,8 @@ CONFIG_BOARDCTL_RESET=y CONFIG_BOARD_CRASHDUMP=y CONFIG_BOARD_LOOPSPERMSEC=16717 CONFIG_BOARD_RESET_ON_ASSERT=2 +CONFIG_BOARD_ASSERT_RESET_VALUE=0 CONFIG_BUILTIN=y -CONFIG_C99_BOOL8=y CONFIG_CDCACM=y CONFIG_CDCACM_IFLOWCONTROL=y CONFIG_CDCACM_PRODUCTID=0x0002 @@ -57,7 +82,6 @@ CONFIG_DEFAULT_SMALL=y CONFIG_DEV_FIFO_SIZE=0 CONFIG_DEV_PIPE_MAXSIZE=1024 CONFIG_DEV_PIPE_SIZE=70 -CONFIG_DISABLE_MQUEUE=y CONFIG_EXAMPLES_CALIB_UDELAY=y CONFIG_FAT_DMAMEMORY=y CONFIG_FAT_LCNAMES=y @@ -79,7 +103,10 @@ CONFIG_HAVE_CXXINITIALIZE=y CONFIG_I2C=y CONFIG_I2C_RESET=y CONFIG_IDLETHREAD_STACKSIZE=750 +CONFIG_INIT_ENTRYPOINT="nsh_main" +CONFIG_INIT_STACKSIZE=2944 CONFIG_LIBC_LONG_LONG=y +CONFIG_LIBC_MAX_EXITFUNS=1 CONFIG_LIBC_STRERROR=y CONFIG_MEMSET_64BIT=y CONFIG_MEMSET_OPTSPEED=y @@ -97,9 +124,6 @@ CONFIG_NSH_ARGCAT=y CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_CMDPARMS=y CONFIG_NSH_CROMFSETC=y -CONFIG_NSH_DISABLE_IFCONFIG=y -CONFIG_NSH_DISABLE_IFUPDOWN=y -CONFIG_NSH_DISABLE_TELNETD=y CONFIG_NSH_LINELEN=128 CONFIG_NSH_MAXARGUMENTS=15 CONFIG_NSH_NESTDEPTH=8 @@ -118,17 +142,16 @@ CONFIG_RAM_SIZE=262144 CONFIG_RAM_START=0x20000000 CONFIG_RAW_BINARY=y CONFIG_RTC_DATETIME=y -CONFIG_SCHED_ATEXIT=y CONFIG_SCHED_HPWORK=y CONFIG_SCHED_HPWORKPRIORITY=249 CONFIG_SCHED_HPWORKSTACKSIZE=1280 CONFIG_SCHED_INSTRUMENTATION=y CONFIG_SCHED_INSTRUMENTATION_EXTERNAL=y +CONFIG_SCHED_INSTRUMENTATION_SWITCH=y CONFIG_SCHED_LPWORK=y CONFIG_SCHED_LPWORKPRIORITY=50 CONFIG_SCHED_LPWORKSTACKSIZE=1632 CONFIG_SCHED_WAITPID=y -CONFIG_SDCLONE_DISABLE=y CONFIG_SDIO_BLOCKSETUP=y CONFIG_SEM_PREALLOCHOLDERS=32 CONFIG_SERIAL_IFLOWCONTROL_WATERMARKS=y @@ -225,5 +248,3 @@ CONFIG_USBDEV=y CONFIG_USBDEV_BUSPOWERED=y CONFIG_USBDEV_MAXPOWER=500 CONFIG_USEC_PER_TICK=1000 -CONFIG_USERMAIN_STACKSIZE=2944 -CONFIG_USER_ENTRYPOINT="nsh_main" diff --git a/boards/thepeach/r1/src/can.c b/boards/thepeach/r1/src/can.c index 5a32d62832..89b8ba2281 100644 --- a/boards/thepeach/r1/src/can.c +++ b/boards/thepeach/r1/src/can.c @@ -50,7 +50,7 @@ #include #include "chip.h" -#include "arm_arch.h" +#include "arm_internal.h" #include "stm32.h" #include "stm32_can.h" diff --git a/boards/thepeach/r1/src/usb.c b/boards/thepeach/r1/src/usb.c index 6fbea86a0b..eed786901e 100644 --- a/boards/thepeach/r1/src/usb.c +++ b/boards/thepeach/r1/src/usb.c @@ -51,7 +51,7 @@ #include #include -#include +#include #include #include "board_config.h"