Commit graph

55706 commits

Author SHA1 Message Date
Bowen Wang
bc97e73aee include/.gitignore: add openlibm to gitignore
avoid git add incorrect files

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-13 02:27:28 +08:00
yintao
e435fca0e2 fs_file.c: modify files_countlist comments
Signed-off-by: yintao <yintao@xiaomi.com>
2024-10-13 02:27:02 +08:00
wangmingrong1
c9db6e8173 CI: CI Docker adds Python package installation
1. Add Python tool 'install CI' to MSYS2 platform
2. CI Python Add Package Construction

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-13 02:25:29 +08:00
xuxin19
7def0983f6 cmake:sync arm sub arch CMake scripts missing sources
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-13 02:25:06 +08:00
xuxin19
4667163152 cmake:add driver thermal CMake scripts
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-13 02:25:06 +08:00
xuxin19
351781d601 cmake:refine nuttx cmake build system fix CMake build missing part
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-13 02:25:06 +08:00
Xiang Xiao
a5aea61537 driver: Post sempahore only when it's value is smaller than one
to avoid waking up the waiting thread redundantly.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2024-10-13 02:12:01 +08:00
Bowen Wang
c86f4d66da tools/showsize.sh: support pass custom nuttx executable
Use showsize.sh to show custom elf file top10 size
tools/showsize.sh vela_ap.elf
tools/showsize.sh vela_audio.elf

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-13 02:11:12 +08:00
Xiang Xiao
17cb6ed63d sched/instrument: rename stack_record.c to stack_monitor.c
to align with gprof naming convention.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2024-10-13 02:10:41 +08:00
lipengfei28
e7326cfa62 arch/arm64: add CONFIG_ARCH_VMA_MAPPING
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-13 02:09:38 +08:00
xuxin19
2a51f4e394 cmake(feat):support define additional config option for CMake
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-13 02:08:38 +08:00
xuxin19
7b807a3947 cmake:fix x86_64 cmake configured warning
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-13 02:08:38 +08:00
yinshengkai
0132d98e41 sched: delete the dump file list when the thread exits
Accessing the filelist of other tasks when the thread exits may cause a crash

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-13 02:06:38 +08:00
yinshengkai
c23878e442 sched: modify CONFIG_DUMP_ON_EXIT to CONFIG_SCHED_DUMP_ON_EXIT
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-13 02:06:38 +08:00
wangchen
be17bf2f86 net:when work_cancel_sync is excuted,it releases net_lock
the modification is to solve the deadlock caused by work cancel not releasing netlock

Signed-off-by: wangchen <wangchen41@xiaomi.com>
2024-10-13 02:05:26 +08:00
wangchen
b791e27a8d igmp_group.c:add work_cancel_sync in igmp_grpfree
Signed-off-by: wangchen <wangchen41@xiaomi.com>
2024-10-13 02:05:26 +08:00
wangchen
78b64cc220 igmp_leave:add check of dev status in igmp_leavegroup
Signed-off-by: wangchen <wangchen41@xiaomi.com>
2024-10-13 02:05:26 +08:00
fangpeina
3f1fd42f73 drivers/input: fix complie err about undefined
There will be compilation errors about undefined reference to `enter_critical_section'.
Fixed by include irq.h

Signed-off-by: fangpeina <fangpeina@xiaomi.com>
2024-10-13 02:03:40 +08:00
wangchen
7dcbd235fc netdev:In netdev_default,If there is only one loopback network devices, it returns NULL
Referring to Linux,if there is only a loopback network device and the destination address does not belong to the loopback address, then the loopback network devices is not selected

Signed-off-by: wangchen <wangchen41@xiaomi.com>
2024-10-13 02:02:54 +08:00
Bowen Wang
b5b0430c39 net/vsock: add AF_VSOCK address family
Add AF_VSOCK address family support, This is the vsock framework
preparation patch.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-13 02:02:03 +08:00
hujun5
7ab27ec1c8 sched: replace sync pause with async pause for sched_backtrace
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-13 01:54:14 +08:00
buxiasen
4b7493901e sched_backtrace: fix when dump running thread in other-core
Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2024-10-13 01:54:14 +08:00
p-szafonimateusz
4e69a3d2db include/nuttx/arch.h: MSI alloc API should be always available
MSI-like interrupts delivery can be used also for other devices than PCI, e.g HPET

Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
2024-10-13 00:33:29 +08:00
yangguangcai
80f2890c17 systick:when isr_handle is NULL will be crash.
Signed-off-by: yangguangcai <yangguangcai@xiaomi.com>
2024-10-13 00:32:55 +08:00
xuxin19
1bba720c2f build.yml:disable CMake Ninja for Msys2
CI in the msys2 environment, the CMake ninja generator
will have a problem with parameters being too long

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-10-12 22:02:52 +08:00
Marco Casaroli
a2b129fb1d ci: use venv for check
To avoid the following CI error:

This environment is externally managed
--> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.

    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

    See /usr/share/doc/python3.12/README.venv for more information.
2024-10-12 20:46:47 +08:00
wangmingrong1
b12bf1ef33 arm/cmake: fix cmake compile error
1. The -c parameter should not be added during the link phase, otherwise the link will fail.
2. If it is the clang compiler, its toolchain library should use --print-file-name to find it, otherwise an error will occur

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-12 20:37:43 +08:00
ska
3b273b1e3e Revert "nuttx/arch: Enabling ARCH_MATH_H is required when compiling sim with …"
This reverts commit 57e901e5ea.
2024-10-12 19:45:25 +08:00
raiden00pl
23d7e176c5 Documentation: cosmetic fixes to follow documentation convention 2024-10-12 18:12:10 +08:00
Bowen Wang
9363033356 tlsr82/nsh: set LIBC_RAND_ORDER be 0 to fix compile error
tc32-elf-ld generated: In function `nrand_r':
/data/project/code/vela-pt/nuttx/libs/libc/stdlib/lib_srand.c:241: undefined reference to `__fixunsdfsi'

telink compiler do not support float point, so set LIBC_RAND_ORDER
to be 0 to avoid function srand() use float point.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-12 18:11:58 +08:00
Jinliang Li
36c63705db armv8-r/gicv3: disable 64bits access gic 64bits registers
When neon is enabled, compiler may optimize 64bits access to vstr, that
will cause data aborts.
Split 64bits access to double 32bits access for GIC_IROUTER/GICR_TYPER,
just like linux.

Signed-off-by: Jinliang Li <lijinliang1@lixiang.com>
Signed-off-by: chao an <anchao@lixiang.com>
2024-10-12 18:11:00 +08:00
Bowen Wang
e040a747aa board/qemu-armv7a: use fdt_pci_ecam_register() to register pci ecam
Now qemu-armv7a can use the pci drivers

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-12 18:10:19 +08:00
Bowen Wang
3caf47942e board/qemu-armv7a: use fdt_virtio_mmio_devices_register() to register mmio devices
Use common implementation to register mmio device

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-12 18:10:19 +08:00
wangmingrong1
6e12b3d74b libc/utsname: Only store version in RAM, use rodata for all others
Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-12 15:36:28 +08:00
wangmingrong1
f233c5860c libc/lib_utsname: Store version number for debugging and preventing optimization
In order to directly read the version information of the current file from elf or bin files, memory files, etc., for easy debugging and one-to-one correspondence.

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-12 15:36:28 +08:00
wangmingrong1
c565996b45 mps/cmake: add cmake build
1. fix comments
2. mps2-an500:add mps2-an500 cmake build
3. mps2-an521:add mps2-an521 cmake build

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-12 15:35:16 +08:00
anjiahao
82d82c5aec mps3-an547:add mps3-an547 cmake build
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 15:35:16 +08:00
liwenxiang1
056aa3c816 libs/libc: Optimize the stack space of lib_vsprintf by splitting arglist into type and value
Dynamically apply for memory based on numargs

Signed-off-by: liwenxiang1 <liwenxiang1@xiaomi.com>

libs/libc: Resolve the issue of undefined behavior when UBSAN is enabled on SIM

If numargs equals 0, it is set to 1 by default

Signed-off-by: liwenxiang1 <liwenxiang1@xiaomi.com>
2024-10-12 14:35:49 +08:00
ligd
90afe58ad7 tools/configure.sh: add relative path
support #include "../ap/defconfig" in defconfig

Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-12 14:27:58 +08:00
zhanghongyu
3c3865bce0 netdb: fix may add duplicate DNS servers
struct sockaddr_in
{
  sa_family_t     sin_family;
  in_port_t       sin_port;
  struct in_addr  sin_addr;
  uint8_t         sin_zero[8];
};

sin_zero is probably a random number.

struct sockaddr_in6
{
  sa_family_t     sin6_family;
  in_port_t       sin6_port;
  uint32_t        sin6_flowinfo;
  struct in6_addr sin6_addr;
  uint32_t        sin6_scope_id;
};

sin6_flowinfo and sin6_scope_id is probably a random number.

Random numbers cause the same server configuration check failed,
so let's initialize it.

Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2024-10-12 14:20:08 +08:00
xuxingliang
38858b6cc3 arch: set current regs firstly in undefinedinsn
Need to save the regs firstly in case syslog triggers another crash.
Otherwise we may loose the register contents for the first exception.

Signed-off-by: xuxingliang <xuxingliang@xiaomi.com>
2024-10-12 14:19:36 +08:00
Ludovic Vanasse
35f8b082a7 Doc: Migrate debugging/flashing NuttX with hw debugger
Migrate debugging/flashing NuttX with hw debbuger documentation from
Confluence to official documentation

Signed-off-by: Ludovic Vanasse <ludovicvanasse@gmail.com>
2024-10-12 14:03:42 +08:00
fanjiangang
d8b042126e arch/arm: fix the bug of armv8-r macro GET_MPIDR
should be core not cpu

Signed-off-by: fanjiangang <fanjiangang@lixiang.com>
Signed-off-by: chao an <anchao@lixiang.com>
2024-10-12 14:00:32 +08:00
fanjiangang
044ee68e80 arm/armv8-r: add implements of arm_get_mpid()
Signed-off-by: fanjiangang <fanjiangang@lixiang.com>
Signed-off-by: chao an <anchao@lixiang.com>
2024-10-12 14:00:32 +08:00
zhangyuan29
ed8007ac40 sched/signal: exit sig action when tcb group is null
nxsig_action will use tcb group when group release,
so check tcb group when do sig action.

[ap] dump_assert_info: Assertion failed : at file: signal/sig_action.c:205 task: ofonod process: Kernel 0xec89d5
[ap] sched_dumpstack: backtrace:
[ap] sched_dumpstack: [29] [<0x66e2e2>] backtrace_unwind+0x105/0x108
[ap] sched_dumpstack: [29] [<0x660272>] sched_backtrace+0x41/0x48
[ap] sched_dumpstack: [29] [<0x61c4dc>] sched_dumpstack+0x33/0x80
[ap] sched_dumpstack: [29] [<0x6023e4>] _assert+0x19b/0x39c
[ap] sched_dumpstack: [29] [<0x61b7e4>] __assert+0x7/0x10
[ap] sched_dumpstack: [29] [<0x6071a2>] nxsig_action+0x119/0x248
[ap] sched_dumpstack: [29] [<0x6072d8>] sigaction+0x7/0x24
[ap] sched_dumpstack: [29] [<0x66a072>] signal+0x4d/0x80
[ap] sched_dumpstack: [29] [<0x100fd36>] signalfd_file_close+0x35/0x60
[ap] sched_dumpstack: [29] [<0x64a7d8>] file_close+0x1b/0x44
[ap] sched_dumpstack: [29] [<0x649ac0>] files_putlist+0x2b/0x70
[ap] sched_dumpstack: [29] [<0x60491a>] group_leave+0x99/0xe4
[ap] sched_dumpstack: [29] [<0x605df8>] nxtask_exithook+0x4f/0xf4
[ap] sched_dumpstack: [29] [<0x603ca0>] _exit+0x33/0x3c
[ap] sched_dumpstack: [29] [<0x61ecf0>] abort+0x7/0xc

Signed-off-by: zhangyuan29 <zhangyuan29@xiaomi.com>
2024-10-12 13:39:21 +08:00
hujun5
4c1c05164a sched/signal: There is no need to use sched_[un]lock
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-12 13:28:23 +08:00
hujun5
1ff49872a7 arch: There is no need to use sched_[un]lock
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-12 13:28:23 +08:00
hujun5
ef8d8ee627 rtc: There is no need to use sched_[un]lock
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-12 13:28:23 +08:00
hujun5
a4c9268a40 board: There is no need to use sched_[un]lock
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-12 13:28:23 +08:00
hujun5
b96a753747 libs/libc: There is no need to use sched_[un]lock
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-12 13:28:23 +08:00