Commit graph

199 commits

Author SHA1 Message Date
Jiuzhu Dong
7df171eef7 rpserver/rpproxy: support set/get rtc time by rpmsg
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-03-30 22:41:12 -05:00
raiden00pl
05cf8b8ff5 boards/sim: remove dsptest configuration 2021-03-29 21:36:36 -03:00
Alin Jerpelea
e699b6f85f misc: : Author Gregory Nutt: update licenses to Apache
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>
2021-03-28 13:34:50 -07:00
YAMAMOTO Takashi
1821352993 sim: Enable the sanitizers in HOSTLDFLAGS as well
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)
```
2021-03-23 02:48:50 -07:00
Masayuki Ishikawa
9cce09e58a boards: Remove SCHED_INSTRUMENTATION from all SMP related configs
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>
2021-03-22 19:47:56 -07:00
mage1
6ff11d8c76 mm: add heap policy and anta logic to support mm debug on sim platform
since atan tool will enhance memory debug operation.

Change-Id: Ic953755faff156832e84b6a764452751dc14f0e3
2021-03-22 11:02:20 -07:00
Alin Jerpelea
70ca0014bd boards: sim: nxstyle fixes
Fixes to pass CI

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-03-17 08:40:08 -07:00
Alin Jerpelea
4e0202c659 boards: sim: Author Gregory Nutt: update licenses to Apache
Gregory Nutt has submitted the SGA and we can migrate the licenses
 to Apache.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-03-17 08:40:08 -07:00
Jiuzhu Dong
e96c8b9283 fs: allocate file/socket dynamically
Change-Id: I8aea63eaf0275f47f21fc8d5482b51ffecd5c906
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-03-17 06:46:42 -07:00
Jiuzhu Dong
59eb4fa8d6 fs: delete NFILE_DESCRIPTORS for allocating dynamically
Change-Id: Id06d215063796d222b9792d25ab2d6742167729f
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-03-17 06:46:42 -07:00
Gustavo Henrique Nihei
330eff36d7 sourcefiles: Fix relative path in file header 2021-03-09 23:18:28 +08:00
ligd
70442d1f9d net/socket_rpmsg: add net socket rpmsg support
Change-Id: Ie23ee4c0052cf2fc66972ea9bc5f11c070fbcf8a
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-03-07 01:45:51 -08:00
Alin Jerpelea
0a797f1e8b boards: Makefile: Author Gregory Nutt: update licenses to Apache
Gregory Nutt has submitted the SGA and we can migrate the licenses
 to Apache.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-03-05 04:08:55 -08:00
Jiuzhu Dong
3c0354aba6 net/socket: delete config CONFIG_NSOCKET_DESCRIPTORS
N/A

Change-Id: I7d10ec460c351e4fbcdc19b3a8284dcb77073722
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-03-03 19:01:41 -08:00
Xiang Xiao
9473434587 Ensure the kernel component don't call userspace API
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-03-01 09:23:09 +09:00
Xiang Xiao
39f96361a3 arch/sim: Rename bthcitty driver to btuart driver
align with other soc naming style

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-01-25 08:23:23 -08:00
Xiang Xiao
503780497a board/sim: Support NuttX BLE stack through uart shim driver
and add new btuart config to test it

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-01-24 19:04:37 -08:00
Xiang Xiao
aa37399c89 arch/sim: Extend hcitty_register to accept device name
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-01-18 11:20:06 -03:00
chao.an
328b7c06bc sim/hcitty: add hcitty adapter
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>
2021-01-16 21:32:10 -08:00
YAMAMOTO Takashi
4e6adefc2b sim: Use c++14 for LIBCXX
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:/#
2021-01-14 04:26:12 -06:00
YAMAMOTO Takashi
3fc06ff2d1 sim: Specify -fshort-wchar as NuttX wchar_t is 16-bit
* 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.
2021-01-14 04:26:12 -06:00
YAMAMOTO Takashi
374d05a05a Revert "board/sim: Remove the too strict warning"
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.
2020-12-24 21:57:39 -06:00
YAMAMOTO Takashi
d5a1c8cae8 boards/sim/sim/sim/src/etc/init.d/rcS: Make it conditional with FS_FAT
ifdef out the guts of the script because it doesn't make sense
without FAT enabled.
2020-12-21 20:12:05 -08:00
YAMAMOTO Takashi
ecd66eb90c sim: libcxx: Use __GLIBCXX__ ABI for non macOS 2020-12-20 23:16:11 -06:00
YAMAMOTO Takashi
f0e0e6ab4d sim: Make.defs: tweak CXXFLAGS for LIBCXX 2020-12-20 23:16:11 -06:00
Matias N
91c8d2bac6 sim: add "nimble" config, to test nimBLE on top of bthcisock 2020-12-19 08:00:38 -06:00
Masayuki Ishikawa
f3a81cb1b7 sim: Fix interrupt handling for SMP
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>
2020-12-10 08:33:42 +01:00
Matias N
f3712d2b8c sim: add support for simulated button device via mouse click 2020-11-30 03:35:37 -06:00
dongjiuzhu
630d5a5851 configs/rc: enable irtest tool
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-11-28 02:54:22 -06:00
Brennan Ashton
8d02bce8e5 Disable smp selftest for bt_null driver
Signed-off-by: Brennan Ashton <bashton@brennanashton.com>
2020-11-15 22:26:25 +01:00
Xiang Xiao
e70bff723b board/sim: Remove the too strict warning
The variable shadow is a frequently-used feature
(especially in c++), so let's disable this warning

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-15 08:28:36 -03:00
YAMAMOTO Takashi
3ccbcf3c28 sim: Add a config to test libcxx 2020-11-15 08:28:36 -03:00
Xiang Xiao
b827565396 [libc++] Move the toolchain's macros undefinition to Make.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-15 08:28:36 -03:00
Xiang Xiao
e5ab2e56f8 sim: Remove cxxtest specifial Make.defs
since the special c++ setup doesn't need anymore

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-12 14:37:59 +08:00
dongjiuzhu
2482052228 driver/sensor: user specifies device register number
N/A

Change-Id: Idd11461f933dd21b7271cd3ca87a2e33127a9d34
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-11-11 18:25:22 -08:00
dongjiuzhu
0d92e50c42 sim/sensor: add sensor defconfig
Change-Id: Ib9b6866951b46f34aa9faaa1c9a6edb0b217b719
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-11-11 18:25:22 -08:00
chao.an
c6fe82bfa1 boards/sim: enable run-time type identification
BTW, correct some cxx compilation options

Change-Id: Id3e3eab2020ef1991d2760426d81b40e6e5eff4e
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-11-09 18:52:28 -08:00
chao.an
80e372ad14 boards/sim: correct the ARCHDEFINES definition
ARCHDEFINESXX -> ARCHDEFINES

Signed-off-by: chao.an <anchao@xiaomi.com>
2020-11-09 18:51:21 -08:00
Juha Niskanen
5849d88288 boards/sim/sim/sim/src/sim_touchscreen.c: add missing nx_disconnect
Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com>
2020-11-08 15:25:10 -03:00
Brennan Ashton
ab176cf1d3 sim: Enable required CONFIG_SIM_FRAMEBUFFER 2020-11-07 22:59:42 -08:00
Brennan Ashton
05dc66ed29 Fix issue #2098 non functional sim:touchscreen
Signed-off-by: Brennan Ashton <bashton@brennanashton.com>
2020-11-07 22:59:42 -08:00
dongjiuzhu
9c19db6e14 rc/dummy: enable dummy driver and add rc defconfig
N/A

Change-Id: I760593ec578361deffea2db6d7c8a02d47c6f83b
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-11-05 11:38:28 -03:00
Brennan Ashton
54832f37f2 sim: Initial Linux i2c bus support
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>
2020-11-04 23:51:09 -08:00
ligd
73282fe2d8 arch/sim: add sim alsa support
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>
2020-11-04 05:48:14 -08:00
Matias N
fea3ee28f7 sim: support LCD emulation over X11; correctly decouple LCD/FB from X11/NX 2020-11-02 19:22:05 -08:00
chao.an
b88561299b make/expression: improving up asm/C/C++ compile times
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>
2020-11-02 07:53:53 -08:00
Sebastian Ene
2073730d1a arch/sim: Update defconfig for NXWM and disable CONFIG_NSH_ARCHINIT
## 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>
2020-10-31 07:17:15 -07:00
Matias N
3f21d902bc sim: add LVGL configuration which uses the X11 framebuffer and mouse 2020-10-29 23:48:12 -07:00
Yoshinori Sugino
c13f869432 Modify SIGSTP to SIGTSTP
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)
2020-10-29 01:12:43 -07:00
zhongan
c9dd19f4c9 sim:rpproxy/rpserver: force use 'CONFIG_SIM_M32' for 64bit system.
Change-Id: I3f240bd7761b42bddfb8c899dad63a0df5a6ac7f
Signed-off-by: zhongan <zhongan@xiaomi.com>
2020-10-28 10:08:47 -07:00