Commit Graph

1803 Commits

Author SHA1 Message Date
dongjiuzhu1 691f411331 sys/socket: adjust SO_RCVTIMEO/SO_SENDTIMEO to avoid s_options overflow
Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2026-04-21 01:35:56 +08:00
dongjiuzhu1 127832d19c net: adjust the option sort of level SOL_SOCKET, to save bit of socket_conn_s:s_options
Adjust the order of all options where the level is SOL_SOCKET. If an
option occupies a bit in socket_conn_s:s_options, place it at the front.
This is to save bits for options of other levels and prevent the 32-bit
overflow of socket_conn_s:s_options.

The definition of many options for other levels uses _SO_PROTOCOL as the
base value. If _SO_PROTOCOL is relatively small, more bits will be left
for options of other levels. Before adjustment, there were 16 bits
available; after adjustment, this number has increased to 23 bits.

Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2026-04-21 01:35:36 +08:00
dongjiuzhu1 b8a3b13800 Revert "nuttx: __SO_PROTOCOL was moved from 16 to 21 to avoid conflict."
This reverts commit 86bce2a9d657c6dc7054dd82e5265d8f882b9008.

Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2026-04-21 01:35:36 +08:00
wenquan1 ca0ae45122 net/pkt: support option SO_TIMESTAMPING and MSG_ERRQUEUE
Signed-off-by: wenquan1 <wenquan1@xiaomi.com>
2026-04-21 01:35:35 +08:00
guoshichao 5a8ccff3a9 ghs: fix the struct lifreq align build error
"/home/guoshichao/work_profile/vela_os/vela_car_dev_1/nuttx/libs/libc/net/lib_getifaddrs.c", line 215: error #1982-D:
          target stack alignment is insufficient to guarantee alignment of
          this variable
        struct lifreq req;
                      ^

Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2026-04-21 01:34:27 +08:00
OceanfromXiaomi 8ecb353f4f nuttx: __SO_PROTOCOL was moved from 16 to 21 to avoid conflict.
Signed-off-by: OceanfromXiaomi <zhaohaiyang1@xiaomi.com>
2026-04-21 01:34:19 +08:00
guanyushuai1 036bc131b7 docs/doxygen: update network docs
Signed-off-by: guanyushuai1 <guanyushuai1@xiaomi.com>
2026-04-21 01:30:58 +08:00
nuttxs d1eaae79eb sys/socket.h: Since `ss_family` is of type `uint16_t` (2-byte alignment),
packing the internal substructures will reduce the overall alignment of
`sockaddr_storage` to 2, which triggers an unaligned access warning
in 32-bit systems.
Add an overall 8-byte alignment to the outermost layer of the structure.

Related commit: 855336bf
Refer to https://datatracker.ietf.org/doc/html/rfc2553#section-3.10

Signed-off-by: nuttxs <zhaoqing.zhang@sony.com>
2026-04-21 01:28:31 +08:00
gaohedong 08fec6965f net/ethernet: add timestamp for socket packet
add timestamp for socket packet

Signed-off-by: gaohedong <gaohedong@xiaomi.com>
2026-04-21 01:20:48 +08:00
zhanghongyu fbf9af57b3 icmp/icmpv6: fix the level parameter type
Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2026-04-21 01:20:20 +08:00
guoshichao 0da6e3863b net: make the sendmsg param type consistent with posix specification
To ensure consistency, in all places where the "sendmsg" function is used
either directly or indirectly, the type of the "struct msghdr *msg" parameter
needs to be modified to "const struct msghdr *msg".

Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2026-04-21 01:19:18 +08:00
mazhuang 18f0f4ac15 rmpsgsockst:set priority
Signed-off-by: mazhuang <mazhuang@xiaomi.com>
2026-04-21 01:19:10 +08:00
guoshichao 34f10cc290 sys/socket: add SOL_PACKET packet operation type definition
Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2026-04-21 01:14:47 +08:00
Xiang Xiao aed311fdd0 Replace __attribute__((packed)) with [begin|end]_packed_struct
since the different compiler express the packed structure in the different way
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-04-21 01:13:28 +08:00
nuttxs 0001393df0 sys/socket: use __attribute__((packed)) to avoid changes in
the size of struct sockaddr_storage due to struct alignment
2026-04-21 01:13:27 +08:00
ouyangxiangzhen 727625cd2a userspace: Exclude nuttx/arch.h
This patch fixed userspace headers conflict. Architecture-related definition and API should not be exposed to users.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2026-04-21 01:13:27 +08:00
openvela-robot 77f0bea7f5 Merge branch 'master' into vela
apache/nuttx commit id: eb27ebba8adfe29644a7b890f86e6f16941921dc

Signed-off-by: ligd <liguiding1@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-04-21 01:12:27 +08:00
openvela-robot 87c6ff19cf mm: Fix some typos
Signed-off-by: xuxingliang <xuxingliang@xiaomi.com>
2026-04-21 01:12:20 +08:00
openvela-robot b2f5ba0753 syslog: convert \n to \r\n in syslog framework layer
Signed-off-by: yangsong8 <yangsong8@xiaomi.com>
2026-04-21 01:12:15 +08:00
openvela-robot 24c239f8f5 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>
2026-04-21 01:12:09 +08:00
openvela-robot 44ed68d400 fs/rpmsgfs: return real err value when open failed
Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2026-04-21 01:12:00 +08:00
openvela-robot 85912ed402 syslog/channel: rename syslog_channel() to syslog_channel_register()
Change syslog API naming more reasonable:

1. rename syslog_channel() to syslog_channel_register()
2. rename syslog_channel_remove() to syslog_channel_unregister()

Signed-off-by: chao an <anchao@lixiang.com>
2026-04-21 01:11:54 +08:00
openvela-robot 0fdd165dfa Fix disable msi when msi capability not exist issue
Signed-off-by: yezhonghui <yezhonghui@xiaomi.com>
2026-04-21 01:11:48 +08:00
openvela-robot 61f4f9411d openamp: sync with community
Comminity has upgrade the openamp to the last commit (near 2024.05 Release),
sync back to vela.

Only modify the makefile and upgrade the patch, should be no impact in any
features.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-04-21 01:11:43 +08:00
openvela-robot 4ea93dbabf add a flag of lin internal sleep/wakeup state
Signed-off-by: wangxiaoxin <wangxiaoxin@xiaomi.com>
2026-04-21 01:11:35 +08:00
openvela-robot 5081b31bd0 cmake(sync):sync CMakeLists.txt conflict of libc with github
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-21 01:11:30 +08:00
openvela-robot 39fce4b20d arch/x86_64: Resolving NUC Boot Failure Issue
The segment of the Xen PVH boot protocol was not specified during linking and was placed before .loader.text, causing the boot to fail

Signed-off-by: liwenxiang1 <liwenxiang1@xiaomi.com>
2026-04-21 01:11:24 +08:00
openvela-robot d2e613094f arm64/makefile: No longer using hwasan pile insertion
Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2026-04-21 01:11:19 +08:00
openvela-robot a3dd40b0d9 mm: call sched_note within mm lock
Signed-off-by: xuxingliang <xuxingliang@xiaomi.com>
2026-04-21 01:11:12 +08:00
openvela-robot 8b787c52e2 sched: sync minor differences in community code
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2026-04-21 01:11:07 +08:00
openvela-robot bf0c4ea69a libc/modlib: Make modlib selectable from defconfig
since bootloader may call modlib functions directly
to load elf firmware without binfmt, dlfcn or module.

BTW, this patch also remove the duplicated selecttion

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-04-21 01:11:02 +08:00
openvela-robot d194b91929 Revert "math32.h: remove typeof depends"
This reverts commit 4e9f8176a08aa25c7173bc4c748e721b0841ddac.

Reason for revert:
This patch are using to fix the following build warning when build with greenhills compiler:
    CC:  syslog/vsyslog.c "pthread/pthread_create.c", line 443: warning #1931-D: operand of sizeof is
              not a type, variable, or dereferenced pointer expression
              ptcb->cmn.timeslice = MSEC2TICK(CONFIG_RR_INTERVAL);
                                    ^

    CC:  dirent/lib_closedir.c "sched/sched_profil.c", line 81: warning #1931-D: operand of sizeof is not a
              type, variable, or dereferenced pointer expression
        wd_start(&prof->timer, PROFTICK, profil_timer_handler, arg);
                               ^

    "sched/sched_profil.c", line 142: warning #1931-D: operand of sizeof is not a
              type, variable, or dereferenced pointer expression
        wd_start(&prof->timer, PROFTICK, profil_timer_handler, (wdparm_t)prof);
                               ^

    CC:  common/arm_modifyreg8.c "sched/sched_setscheduler.c", line 165: warning #1931-D: operand of sizeof is
              not a type, variable, or dereferenced pointer expression
                tcb->timeslice  = MSEC2TICK(CONFIG_RR_INTERVAL);
                                  ^

    CC:  misc/lib_utsname.c "sched/sched_unlock.c", line 275: warning #1931-D: operand of sizeof is not a
              type, variable, or dereferenced pointer expression
                rtcb->timeslice = MSEC2TICK(CONFIG_RR_INTERVAL);
                                  ^

    "sched/sched_roundrobin.c", line 119: warning #1931-D: operand of sizeof is
              not a type, variable, or dereferenced pointer expression
                tcb->timeslice = MSEC2TICK(CONFIG_RR_INTERVAL);
                                 ^

we need to keep the modification
2026-04-21 01:10:57 +08:00
openvela-robot ac82d776ab usb: Fix issue with the calculation descriptor length error
Signed-off-by: yangsong8 <yangsong8@xiaomi.com>
2026-04-21 01:10:47 +08:00
openvela-robot 0662b2ac02 rpmsgdev/blk: sync with communitfy, minor nxstyle fix
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-04-21 01:10:42 +08:00
openvela-robot 97534cf708 add lin status changes the format of the reported frame and add the macros that lin needs
Signed-off-by: wangxiaoxin <wangxiaoxin@xiaomi.com>
2026-04-21 01:10:37 +08:00
openvela-robot 492cec3ec5 nuttx/sim: Fix MacOs build error with argument unused during compilation: '-no-pie'
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2026-04-21 01:10:31 +08:00
openvela-robot 1f0a222301 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>
2026-04-21 01:10:25 +08:00
openvela-robot 80196e894b nuttx: Change the judgment of GCCVER version to greater equal.
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2026-04-21 01:10:19 +08:00
openvela-robot 6c85ce6822 vsprintf:fix bug when print int64 0x8000000000000000
stdio/lib_libvsprintf.c:1018:17: runtime error: negation of -9223372036854775808 cannot be
represented in type 'long long int'; cast to an unsigned type to negate this value to itself
    #0 0x3326a86 in vsprintf_internal stdio/lib_libvsprintf.c:1018
    #1 0x332926b in lib_vsprintf stdio/lib_libvsprintf.c:1363
    #2 0x3777978 in vfprintf stdio/lib_vfprintf.c:52
    #3 0x671b3a0 in printf stdio/lib_printf.c:44
    #4 0x37abc0c in hello_main /data/project/code/vela-pt/apps/examples/hello/hello_main.c:38
    #5 0x33201d3 in nxtask_startup sched/task_startup.c:70
    #6 0x3208ecb in nxtask_start task/task_start.c:134
    #7 0x3357a49 in pre_start sim/sim_initialstate.c:52

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-04-21 01:10:13 +08:00
openvela-robot 78d736af82 arm/toolchain.defs: sync the whole-archive config with community
Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2026-04-21 01:10:07 +08:00
openvela-robot 47daa79e0b nuttx/x86_64:Add _sinit and _einit initialization.
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2026-04-21 01:10:02 +08:00
openvela-robot 5d60745acb strptime.c:len is not defined.
Bring all code that uses the variable len under the CONFIG_LIBC_LOCALE

Signed-off-by: chenjiahua1 <chenjiahua1@xiaomi.com>
2026-04-21 01:09:56 +08:00
openvela-robot 679535b72f coredump: add architecture-specific registers dump, including NVIC and MPU
Signed-off-by: wanggang26 <wanggang26@xiaomi.com>
2026-04-21 01:09:50 +08:00
openvela-robot 1dbe459e5f Increase the chance for _assert to work early in the boot 2026-04-21 01:09:43 +08:00
openvela-robot db1bde8907 Doc: Migrate Versioning and Task Names
Migrate
https://cwiki.apache.org/confluence/display/NUTTX/Versioning+and+Task+Names
to the official wiki

Signed-off-by: Ludovic Vanasse <ludovicvanasse@gmail.com>
2026-04-21 01:09:38 +08:00
openvela-robot ac763890d3 mm/mempool: Merge two memory requests
Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2026-04-21 01:09:31 +08:00
openvela-robot 7e009970ce drivers/segger: inline note_sysview_get_timestamp
Avoid another layer of function call to get time.

Signed-off-by: xuxingliang <xuxingliang@xiaomi.com>
2026-04-21 01:09:12 +08:00
openvela-robot 154f6f9208 cmake(sync):sync cmake Toolchain change from github
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-21 01:09:02 +08:00
openvela-robot 36139bb0b5 arch/intel64: optimise context switch
We save interrupted TCB state on tcb->xcp.regs not interrupt stack now
which allows us to remove x86_64_savestate() from up_switch_context()
and other places.

Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2026-04-21 01:08:56 +08:00
openvela-robot 199768d644 note: sync minor differences in community code
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2026-04-21 01:08:50 +08:00