Gregory Nutt has submitted the SGA and we can migrate the licenses
to Apache.
Several files were missed in the past
Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
This fixes the following error with CONFIG_SIM_SANITIZE=y on macOS.
```
CP: /Users/yamamoto/git/nuttx/nuttx/include/nuttx/config.h
CC: nettest_host.c
CC: nettest_server.c
LD: tcpserver
Undefined symbols for architecture x86_64:
"___asan_handle_no_return", referenced from:
_nettest_server in nettest_server.hobj
"___asan_init", referenced from:
_asan.module_ctor in nettest_host.hobj
_asan.module_ctor in nettest_server.hobj
"___asan_option_detect_stack_use_after_return", referenced from:
_nettest_server in nettest_server.hobj
"___asan_register_image_globals", referenced from:
_asan.module_ctor in nettest_server.hobj
"___asan_report_load1", referenced from:
_nettest_server in nettest_server.hobj
"___asan_report_load4", referenced from:
_nettest_server in nettest_server.hobj
"___asan_report_store1", referenced from:
_nettest_server in nettest_server.hobj
"___asan_report_store2", referenced from:
_nettest_server in nettest_server.hobj
"___asan_report_store4", referenced from:
_nettest_server in nettest_server.hobj
"___asan_stack_malloc_1", referenced from:
_nettest_server in nettest_server.hobj
"___asan_unregister_image_globals", referenced from:
_asan.module_dtor in nettest_server.hobj
"___asan_version_mismatch_check_apple_clang_1100", referenced from:
_asan.module_ctor in nettest_host.hobj
_asan.module_ctor in nettest_server.hobj
"___ubsan_handle_add_overflow", referenced from:
_nettest_server in nettest_server.hobj
"___ubsan_handle_builtin_unreachable", referenced from:
_nettest_server in nettest_server.hobj
"___ubsan_handle_pointer_overflow", referenced from:
_nettest_server in nettest_server.hobj
"___ubsan_handle_shift_out_of_bounds", referenced from:
_nettest_server in nettest_server.hobj
"___ubsan_handle_sub_overflow", referenced from:
_nettest_server in nettest_server.hobj
"___ubsan_handle_type_mismatch_v1", referenced from:
_nettest_server in nettest_server.hobj
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
Summary:
- This commit removes SCHED_INSTRUMENTATION which has been used
to debug NuttX SMP kernel
Impact:
- None
Testing:
- Tested with ostest
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
add support to attach the devices via HCI TTY to Bluetooth Host
Reference:
drivers/wireless/bluetooth/bt_uart_shim.c
Signed-off-by: chao.an <anchao@xiaomi.com>
The compiler default varies among the environment.
Especially, the default std version for xcode clang doesn't work
for libcxx.
This commit just ensures to use the consistent std version
among compilers. we can come up with a more sophisticated way
to control the version later if desiable.
clang/macOS (from xcode):
spacetanuki% c++ -dM -E -x c++ /dev/null | grep __cplusplus
#define __cplusplus 199711L
spacetanuki% c++ --version
Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
spacetanuki%
clang/macOS (from homebrew):
spacetanuki% /usr/local/Cellar/llvm/11.0.0/bin/clang++ -dM -E -x c++ /dev/null | grep __cplusplus
#define __cplusplus 201402L
spacetanuki% /usr/local/Cellar/llvm/11.0.0/bin/clang++ --version
clang version 11.0.0
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /usr/local/Cellar/llvm/11.0.0/bin
spacetanuki%
gcc/ubuntu:
root@477d94753e9b:/# c++ -dM -E -x c++ /dev/null | grep __cplusplus
#define __cplusplus 201402L
root@477d94753e9b:/# c++ --version
c++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
root@477d94753e9b:/#
* For C, wchar_t is provided by the OS. On NuttX, it's uint16_t.
(Except wide character literals, which uses the compiler
built-in knowledge of wchar_t.)
* For C++, wchar_t is a built-in type. It's provided by the compiler.
* The compilers built-in wchar depends on the compiler configuration.
For the sim, the compilers are usually configured with wchar_t == int,
which is 32-bit.
* wchar_t should be compatible between C and C++.
This commit fixes the mismatches by telling the compiler to use
16-bit wchar_t.
An alternative is to make NuttX use 32-bit wchar_t if the compiler
is configured with 32-bit wchar_t. It can increase the runtime
footprint. While it might be ok for the sim, it might be a problem
for real devices.
This reverts commit e70bff723b.
* These warnings sometimes find real bugs. There are ways to disable
the specific warnings for the specific code (eg. libcxx) selectively.
* It doesn't make much sense to disable these warnings only on sim.
There are many boards with -Wall -Wshadow. Because the sim is
mainly for development and testing, it should be less forgiving
than real boards.
Summary
- This commit fixes interrupt handling for SMP
- The following are the changes
- Introduce up_copyfullstate.c
- Add enter_critical_section() to up_exit()
- Add a critical section to up_schedule_sigaction()
- Introduce pseudo timer thread to send periodic events
- UART and interval timer are now handled in the pause handler
- Apply the same SMP related code as other CPU architectures
- However, signal handling and context switching are not changed
- Also enable debug features and some tools in smp/defconfig
Imact
- SMP only
Testing
- Tested with sim:smp on ubuntu18.04 x86_64
- Tested with hello, taskset, smp, ostest
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
This adds the inital wiring for i2c bus support in the sim target
and for Linux host adds the lower half that uses the i2c chardev.
Signed-off-by: Brennan Ashton <bashton@brennanashton.com>
Squashed commit of the following:
sim audio: call alsa to playback/capture data
sim/audio: correct the format capability
sim/audio: add pause/resume support
sim/audio: add auto stop when meet AUDIO_APB_FINAL
sim/audio: fix abort when set small buffer_size
sim/audio: move sim_audio.c to sim_alsa.c
Change-Id: I8e00ece79159e844ca17fd4c363480b985ee0490
Signed-off-by: ligd <liguiding1@xiaomi.com>
In the current compilation environment, the recursive assignment(=) for compile
flags will be delayed until every file is actually need to be compile.
For example:
--------------------------------------------------------------------------------
arch/arm/src/Makefile:
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)chip}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)common}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)$(ARCH_SUBDIR)}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)sched}
CPPFLAGS += $(INCLUDES) $(EXTRAFLAGS)
CFLAGS += $(INCLUDES) $(EXTRAFLAGS)
CXXFLAGS += $(INCLUDES) $(EXTRAFLAGS)
AFLAGS += $(INCLUDES) $(EXTRAFLAGS)
--------------------------------------------------------------------------------
All compilation options will be included recursively,
which will be delayed until the compilation options are actually used:
tools/Config.mk:
--------------------------------------------------------------------------------
define COMPILE
@echo "CC: $1"
$(Q) $(CC) -c $(CFLAGS) $($(strip $1)_CFLAGS) $1 -o $2
endef
--------------------------------------------------------------------------------
All compile flags to be reexecuted $(INCDIR) as long as one file needs to be compiled,
but in fact, the compilation options have not changed in the current directory.
So the we recommand to change the syntax of assignment
From
Recursive (=)
To
Simple (:=)
In this way, we can ensure that all compilation options are expanded only once and reducing repeated works.
Signed-off-by: chao.an <anchao@xiaomi.com>
## Summary of changes
Disable CONFIG_NSH_ARCHINIT to prevent the boardctl() logic to call
multiple times the oneshot_register() function. The boardctl logic is
already called from nxwm_main.
Signed-off-by: Sebastian Ene <sene@apache.org>
Follow the POSIX description.
SIGTSTP should be sent when the Ctrl-Z characters is encountered, not SIGSTP.
Testing:
Built with hifive1-revb:nsh (CONFIG_SERIAL_TERMIOS=y, CONFIG_SIG_DEFAULT=y and CONFIG_TTY_SIGTSTP=y)