Commit graph

636 commits

Author SHA1 Message Date
Yongrong Wang
07c986905d sim/configs/rpserver/rpproxy_virtio: Change the sim 32bit to 64bit compilation
1.macOS doesn't support 32bit anymore(CONFIG_SIM_M32=y)
2.fix b4bit compile warning:
CC:  ioexpander/ioe_rpmsg.c ioexpander/ioe_rpmsg.c:368:14: warning:
cast to 'void *' from smaller integer type 'int' [-Wint-to-void-pointer-cast]
      return (FAR void *)(ret + 1);
             ^~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Yongrong Wang <wangyongrong@xiaomi.com>
2024-11-15 14:01:11 +08:00
xuxin19
71b169e5fd build(bugfix):pac sim elf ONLY in Linux platform
avoid SIM compilation post build issues on other platforms

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-11-15 12:21:24 +08:00
wangmingrong1
17ce9b86c1 gcov: Correct existing gcov configuration
1. add CONFIG_COVERAGE_ALL to replace CONFIG_SCHED_GCOV_ALL
2. Correct all SCHED_GCOV, SCHED_GCOV_ALL

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-11-15 01:05:16 +08:00
wangjianyu3
7e0ee8c74a sim:nsh: Enable PIPES to make nsh pipeline available
More details, please see https://github.com/apache/nuttx-apps/pull/2737

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-11-14 01:16:29 +08:00
wangmingrong1
b59e3616f4 gcov: Support for the most streamlined profile of LLVM-embedded-toolchain-for-Arm
1. Excerpted from: https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/blob/main/samples/src/cpp-baremetal-semihosting-prof/proflib.c
2. Since llvm profile supports more than just gcov, and some features have not yet been explored, two clang gcov implementations are supported after this patch
3. Using this lib only supports the gcov compilation options of "-fprofile-instr-generate -fcoverage-mapping"
4. This file is heavily dependent on the compiler clang version, and is currently aligned with ci, supporting 17.0.1 and below. 18 and above are not supported by this library due to different internal implementations of the compiler

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-11-13 05:33:00 +08:00
wangmingrong1
bf93c7840a gprof: move gprof function from sched to libbuiltin/libgcc
1. Enable interrupt gprof please config CONFIG_PROFILE_MINI
2. Enable instuction gprof please add compile opt "-pg" or config CONFIG_PROFILE_ALL

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-11-13 02:42:31 +08:00
Alin Jerpelea
88c8af0b6f boards/sim/sim: migrate to SPDX identifier
Most tools used for compliance and SBOM generation use SPDX identifiers
This change brings us a step closer to an easy SBOM generation.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2024-11-12 22:20:59 +08:00
wenlingyun1
1227203128 add defconfig for testing cmake compilation of quickjs
Signed-off-by: wenlingyun1 <wenlingyun1@xiaomi.com>
2024-11-12 12:10:42 +08:00
buxiasen
56c920ce5d sim/make: fix macos sim:nsh make break, no -mcmodel in clang
Will report clang: error: invalid argument 'medium' to -mcmodel=
-mcmodel=large will both support clang and gcc.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2024-11-11 11:07:54 +08:00
cuiziwei
f1d180d56e nuttx/sim: Remove math.h in sim.
The reason for removing math.h is that undefining __GLIBC__ does not take effect. By default, sim will use the toolchain's math library and undef __GLIBC__ in the source file.

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-11-06 02:56:24 +08:00
xuxin19
593b4bfbf5 cmake(bugfix):Do not package sim in MSVC environment
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-11-06 01:56:44 +08:00
xuxin19
480471f46c sim:support sim elf and dynamic libs package in post build
use the dynamic library .so of the binding compilation environment,
and then modify the dynamic loader of elf at runtime to run sim elf across system versions

1.add post-build for sim build
2.collect dynamic .so and dynamic interpreter
3.add execution script for the entire package sim elf

change text-segment to 0x50000000
because patchelf will modify the .dynamic section in elf,
the upward alignment of elf will be less than 0x3fffffff,
which will cause asan shadow memory overlap error

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-11-06 01:56:44 +08:00
yinshengkai
a14b97b98b sim: add note related configuration
Ensure that CI can cover all note code

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-11-01 17:00:11 +08:00
xuxin19
e60c60b691 cmake(sync):fix cmake SIM build error build nuttx upstream
/usr/lib/x86_64-linux-gnu/libSM.so  /usr/lib/x86_64-linux-gnu/libICE.so  /usr/lib/x86_64-linux-gnu/libX11.so  /usr/lib/x86_64-linux-gnu/libXext.so  -lpthread  -lrt  -lm  -lasound  -lmad  -lv4l2 && :
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libSM.so: error adding symbols: file in wrong format

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-30 22:14:40 +08:00
wangmingrong1
e3d7d23618 gcov: Fix typographical errors
1. CONFIG_ARCH_COVERAGE has been replaced by CONFIG_SCHED_GCOV
2. Delete the SIM-specific GCOV_ALL configuration and change it to a universal configuration for all architectures

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-30 14:45:23 +08:00
zhanghongyu
c3a0155374 arch/Kconfig: remove ARCH_MATH_H if LIBCXX
Because some libraries do require a full libm implementation.

Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2024-10-24 17:44:22 +08:00
cuiziwei
60e7a0074d nuttx/arch:Enabling ARCH_MATH_H is required when compiling sim with the 13.2 version of the toolchain.
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-23 20:10:43 +08:00
cuiziwei
002f3c75e4 nuttx/sim: Fix m64 build error.
LD:  nuttx
 nuttx.rel: in function `ff_dct32_float_sse2':
 (.text+0x66f9e): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_32' defined in .bss.ff_cos_32 section in nuttx.rel
 (.text+0x66fa7): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_32' defined in .bss.ff_cos_32 section in nuttx.rel
 (.text+0x672a6): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_16' defined in .bss.ff_cos_16 section in nuttx.rel
 (.text+0x672ae): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_16' defined in .bss.ff_cos_16 section in nuttx.rel
 nuttx.rel: in function `ff_imdct_calc_sse':
 (.text+0x67905): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_64' defined in .bss.ff_cos_64 section in nuttx.rel
 (.text+0x67948): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_128' defined in .bss.ff_cos_128 section in nuttx.rel
 (.text+0x67988): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_256' defined in .bss.ff_cos_256 section in nuttx.rel
 (.text+0x679c8): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_512' defined in .bss.ff_cos_512 section in nuttx.rel
 (.text+0x67a08): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_1024' defined in .bss.ff_cos_1024 section in nuttx.rel
 (.text+0x67a48): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_2048' defined in .bss.ff_cos_2048 section in nuttx.rel
 (.text+0x67a88): additional relocation overflows omitted from the output

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-23 20:09:55 +08:00
yinshengkai
d063ca46c7 sim: fix asan address space conflict
Modify the starting position of the elf segment to 0x5000000

==2561587==Shadow memory range interleaves with an existing memory mapping. ASan cannot proceed correctly. ABORTING.
==2561587==ASan shadow was supposed to be located in the [0x1ffff000-0x3fffffff] range.
==2561587==Process memory map follows:

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-23 10:27:13 +08:00
Bowen Wang
39560fd245 sim:rpserver_virtio and rpproxy_virtio: add rpmsg_virtio config for sim
add rpserver_virtio and rproxy_virtio to verify the rpmsg virtio transport

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-22 08:55:57 +08:00
jihandong
444ba4caa4 libcxx: optional localization.
Signed-off-by: jihandong <jihandong@xiaomi.com>
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-19 14:34:38 +08:00
raiden00pl
c393416580 libs/libxx: uClibc depends on CONFIG_ALLOW_GPL_COMPONENTS=y
uClibc is LGPL so it should depends on CONFIG_ALLOW_GPL_COMPONENTS=y
2024-10-16 07:56:50 +08:00
cuiziwei
4253001656 sim/m64:Fix ld error with .rodata can not be used when making a PIE object.
/usr/bin/ld: nuttx.rel: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: failed to set dynamic section sizes: bad value

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-15 14:45:42 +08:00
anjiahao
e5f9b42ea0 binfmt/libelf:Remove libelf implementation [2/2]
this commit is part two, all logic move to modlib, so we can remove it.
and change all use defconfig

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
cuiziwei
eb4d1a14b3 nuttx/libcxxtest: Fix build error.
libcxx/src/thread.cpp:123:2: error: #error "Thread.cpp needs to enable config of CONFIG_TLS_TASK_NELEM," " and CONFIG_TLS_TASK_NELEM > 0, please enable it"
  123 | #error "Thread.cpp needs to enable config of CONFIG_TLS_TASK_NELEM," \
      |  ^~~~~

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-12 11:48:44 +08:00
yinshengkai
cac90afe79 Revert "sim/note: add note related configuration"
This reverts commit 154cb4a860.
2024-10-11 21:30:19 +08:00
yinshengkai
154cb4a860 sim/note: add note related configuration
Ensure that CI can cover all note code

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 11:55:17 +08:00
yinshengkai
eb8449cb0c sched/gprof: add gprof support
gprof can analyze code hot spots based on scheduled sampling.
After adding the "-pg" parameter when compiling, you can view the code call graph.

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-10 18:46:51 +08:00
yinshengkai
034af29aab arch: adjust gcov configuration name
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-09 21:27:47 +08:00
anjiahao
9ed93c6b1e unify MODULE & ELF flag to Toolchain.defs
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-08 19:56:33 +08:00
raiden00pl
fb7fe185d8 boards/sim: update foc test config
Update FOC configuration so that it doesnt fail during initialization.
2024-10-05 18:45:12 +08:00
chenxiaoyi
26c7f80dc6 sim: add windows64 defconfig
Signed-off-by: chenxiaoyi <chenxiaoyi@xiaomi.com>
2024-10-04 08:21:35 +08:00
dongjiuzhu1
8bafb6520a sim/nsh: enable PSEUDOFS_FILE for sim:nsh
Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2024-10-01 20:39:05 +08:00
ligd
551e6ce3ab compile: add DEBUG_SYMBOLS_LEVEL allow custom the level
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-09-27 00:13:07 +08:00
anjiahao
c76e83beaa Debug option:change -g to -g3, add macro information to elf
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-09-27 00:13:07 +08:00
wangjianyu3
898a5d501f sim:thermal: Remove CPUFreq realted
CPUFreq has not upstreamed to apache:nuttx

Warning/Error:
  $ make distclean
  $ ./tools/configure.sh -l sim:thermal
  $ make savedefconfig
  $ diff defconfig boards/sim/sim/sim/configs/thermal/defconfig
  18a19
  > CONFIG_CPUFREQ=y
  73a75
  > CONFIG_THERMAL_CDEV_CPUFREQ=y
  74a77
  > CONFIG_THERMAL_DUMMY_CPUFREQ=y

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-09-23 08:57:29 +08:00
wangjianyu3
6442683359 sim:thermal: move etc romfs mount from nsh to sched/init
Ref: I7afe1047369e91662583c8ef9c98fffcf567fbb7
```
sched: move etc romfs mount from nsh to sched/init
```
Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-09-23 08:57:29 +08:00
wangjianyu3
2480f599c6 Add default config for thermal framework based on sim:nsh
Test: ./tools/configure.sh -l sim:thermal && make -j8

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-09-23 08:57:29 +08:00
wangjianyu3
012dcc41a2 sim/minmea: Fix defconfig warning
Warning/Error:
  $ ./tools/configure.sh -l sim:minmea
  $ make defconfig
  $ make savedefconfig
  $ diff defconfig boards/sim/sim/sim/configs/minmea/defconfig
  38d37
  < CONFIG_GNSSUTILS_MINMEA_LIB=y
  39a39
  > CONFIG_GNSSUTILS_MINMEA_LIB=y

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-09-19 13:49:55 +08:00
wangjianyu3
c652f41c87 nuttx/uorb: Rename GPS to GNSS
Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-09-19 03:44:49 +08:00
wangjianyu3
e607137142 boards: Update EXAMPLES_SOTEST_DEVMINOR to EXAMPLES_SOTEST_DEVMINOR_MAX
See https://github.com/apache/nuttx-apps/pull/2579 for more details

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2024-09-18 12:15:44 +08:00
ligd
ff1b54bff3 pthread_cleanup: move clenup down to tls
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-09-14 20:15:12 +08:00
Huang Qi
55e4a98df7 docs: Migrate network documentation of sim to Documentations
Move the docs in boards of sim to common place.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2024-09-13 01:41:10 +08:00
shizhenghui
17405d4c38 sim/alsa: update defconfig
CONFIG_AUDIOUTILS_LAME=y
CONFIG_AUDIOUTILS_LIBMAD=y

Signed-off-by: shizhenghui <shizhenghui@xiaomi.com>
2024-09-10 20:25:48 +08:00
yinshengkai
cec3b5c0fb boards: Add TLS_NELEM dependency to libcxxabi
Refresh all defconfig

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-09-06 09:52:33 +08:00
Saurav Pal
fc31c61730 boards/sim: Defconfigs for nand and mnemofs
Adds nand and mnemofs sim configs.

Signed-off-by: Saurav Pal <resyfer.dev@gmail.com>
2024-09-05 11:02:05 +08:00
SPRESENSE
d1c7e1816f libc/netdb: Separate IPv4 and IPv6 cache size limit
Some domains have a lot of IPv6 addresses. Because of that, it is
not possible to get the IPv4 address with getaddrinfo.

This change separate IPv4 and IPv6 cache size limit to enable to
get both IP addresses.
2024-09-02 06:16:50 -04:00
guoshichao
4c01594d5b nuttx: remove the unnecessary -pipe build option
Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2024-08-31 10:22:20 +08:00
Petro Karashchenko
d252b6229f nuttx: use sizeof instead of define or number in snprintf
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2024-08-25 19:22:15 +08:00
wangchen
f0cdaca660 nuttx-names.in:add popen & pclose assign to glibc interface
Signed-off-by: wangchen <wangchen41@xiaomi.com>
2024-08-23 20:20:25 +08:00