chao an
c6591c0f49
driver/serial: remove return value of up_putc()
...
modify the prototype of up_putc(): remove the return value
The architecture code does not care about the return value of up_putc(), so removing it saves two statements:
Before: After:
de4c: e52de004 push {lr} @ (str lr, [sp, #-4]!) | de4c: e52de004 push {lr} @ (str lr, [sp, #-4]!)
de50: e24dd014 sub sp, sp, #20 | de50: e24dd014 sub sp, sp, #20
de54: e58d0004 str r0, [sp, #4 ] | de54: e58d0004 str r0, [sp, #4 ]
de58: e30030f8 movw r3, #248 @ 0xf8 | de58: e30030f8 movw r3, #248 @ 0xf8
de5c: e3423000 movt r3, #8192 @ 0x2000 | de5c: e3423000 movt r3, #8192 @ 0x2000
de60: e58d300c str r3, [sp, #12 ] | de60: e58d300c str r3, [sp, #12 ]
de64: e59d1004 ldr r1, [sp, #4 ] | de64: e59d1004 ldr r1, [sp, #4 ]
de68: e59d000c ldr r0, [sp, #12 ] | de68: e59d000c ldr r0, [sp, #12 ]
de6c: ebfffe66 bl d80c <pl011_putc> | de6c: ebfffe66 bl d80c <pl011_putc>
de70: e59d3004 ldr r3, [sp, #4 ] | de70: e28dd014 add sp, sp, #20
de74: e1a00003 mov r0, r3 | de74: e49df004 pop {pc} @ (ldr pc, [sp], #4 )
de78: e28dd014 add sp, sp, #20 |
de7c: e49df004 pop {pc} @ (ldr pc, [sp], #4 ) |
Signed-off-by: chao an <anchao@lixiang.com>
2024-10-26 13:21:29 +08:00
fangxinyong
f2cc9e8410
fs: support VFS-based named event group
...
This extension for the event group, to establish a connection between
named event groups and a task. The task may reference the event group
associated with a VFS-based name. Then the event group can be used
in subsequent calls to nxevent_wait() or nxevent_post().
This is an internal OS interface and should not be used by applications.
Signed-off-by: fangxinyong <fangxinyong@xiaomi.com>
2024-10-09 01:40:00 +08:00
Petro Karashchenko
d499ac9d58
nuttx: fix multiple 'FAR', 'CODE' and style issues
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2024-08-25 19:22:15 +08:00
chao an
75fac7dbc6
sched/nxevent: add support of kernel event group
...
Events groups are synchronization primitives that allow tasks to wait
for multiple conditions to be met before proceeding. They are particularly
useful in scenarios where a task needs to wait for several events to occur
simultaneously.
Signed-off-by: chao an <anchao@lixiang.com>
2024-08-23 17:00:35 +08:00
Yanfeng Liu
c577abe222
docs/os: fix typos
...
This fixes a few typos in conventions.rst and libc/index.rst.
Signed-off-by: Yanfeng Liu <yfliu2008@qq.com>
2024-04-21 11:06:46 +08:00
Zhe Weng
da536bed9c
Documentation: Move nat.rst and netdev.rst to net/
...
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2024-02-23 08:32:49 +01:00
Saurav Pal
93d03d0418
fs: Add VFS docs
...
This commit adds VFS docmentation, and details about the VFS interface.
Signed-off-by: Saurav Pal <resyfer.dev@gmail.com>
2024-02-20 18:28:09 -08:00
raiden00pl
56cb0450cc
Documentation: fix warning
2023-11-08 15:54:54 +08:00
Zhe Weng
6403965075
Documentation: Add netdev description with multiple IPv6 addresses
...
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2023-11-07 19:30:36 +08:00
raiden00pl
b7f94fbf22
Documentation: various cosmetic changes
2023-10-30 20:29:54 +08:00
Alan Carvalho de Assis
468e9fcde5
Documentation: Fix typos
...
I used codespell to find typos in the documentation.
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2023-10-29 10:35:51 +08:00
raiden00pl
d72c6802c1
Documentation: add dummy pages for missing filesystems and drivers
2023-10-27 13:21:40 -03:00
Nathan Hartman
5a50800a9f
Documentation: Minor fixes in Tickless OS documentation
...
* Documentation/reference/os/time_clock.rst:
Add missing Kconfig code-block, found at CWIKI [1].
Fix some typos.
References:
[1] https://cwiki.apache.org/confluence/display/NUTTX/Tickless+OS
2023-05-24 10:31:56 +08:00
Brennan Ashton
4d3ce8f706
docs: Fix sphinx warnings listed in issue #9306
...
Fixes these errors:
```
/home/bashton/nuttx-wrk/nuttx/Documentation/components/drivers/special/lcd.rst:52: WARNING: duplicate label ttgotdisplayesp32, other instance in /home/bashton/nuttx-wrk/nuttx/Documentation/components/drivers/special/framebuffer.rst
/home/bashton/nuttx-wrk/nuttx/Documentation/platforms/sim/sim/boards/sim/index.rst:370: CRITICAL: Unexpected section title.
/home/bashton/nuttx-wrk/nuttx/Documentation/platforms/sim/sim/boards/sim/index.rst:394: CRITICAL: Unexpected section title.
/home/bashton/nuttx-wrk/nuttx/Documentation/platforms/sim/sim/boards/sim/index.rst:1494: ERROR: Inconsistent literal block quoting.
/home/bashton/nuttx-wrk/nuttx/Documentation/platforms/sim/sim/boards/sim/index.rst:1569: WARNING: Literal block expected; none found.
/home/bashton/nuttx-wrk/nuttx/Documentation/platforms/xtensa/esp32s2/boards/esp32s2-kaluga-1/index.rst:207: WARNING: download file not readable: /home/bashton/nuttx-wrk/nuttx/Documentation/platforms/xtensa/esp32s2/boards/esp32s2-kaluga-1/tone.wav
checking consistency... /home/bashton/nuttx-wrk/nuttx/Documentation/reference/os/newreno.rst: WARNING: document isn't included in any toctree
/home/bashton/nuttx-wrk/nuttx/Documentation/guides/zerolatencyinterrupts.rst:117: WARNING: unknown document: <nestedinterrupts.rst>
```
2023-05-20 12:40:52 +08:00
hujun5
81bdb97536
libc/misc: add fdsan api doc
...
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2023-05-17 10:24:42 +08:00
liqinhui
f61dc72892
net/tcp:Add NewReno congestion control.
...
- NewReno congestion control algorithm is used to solve the problem
of network congestion breakdown. NewReno congestion control includes
slow start, collision avoidance, fast retransmission, and fast
recovery. The implementation refers to RFC6582 and RFC5681.
- In addition, we optimize the congestion algorithm. In the conflict
avoidance stage, the maximum congestion window max_cwnd is used to
limit the excessive growth of cwnd and prevent network jitter
caused by congestion. Maximum congestion window max_cwnd is updated
with the current congestion window cwnd and the update weight is
0.875 when an RTO timeout occurs.
Signed-off-by: liqinhui <liqinhui@xiaomi.com>
2023-05-16 12:35:01 -03:00
Xiang Xiao
5ce5d01d75
signal: Remove configurable assignment of signal numbers
...
please reference the issue here for more information:
https://github.com/apache/nuttx/issues/8898
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-03-26 08:31:36 -06:00
Lucas Saavedra Vaz
c961edbe6c
Documentation: Fix compilation warnings
2023-03-25 12:23:35 +02:00
Ville Juven
f4b82b6405
sched/addrenv: Remove up_addrenv_restore
...
The function is not relevant any longer, remove it. Also remove
save_addrenv_t, the parameter taken by up_addrenv_restore.
Implement addrenv_select() / addrenv_restore() to handle the temporary
instantiation of address environments, e.g. when a process is being
created.
2023-02-08 02:51:23 +08:00
Ville Juven
42d0e356c2
arch/addrenv: Change group_addrenv_t to arch_addrenv_t
...
This is preparation for moving address environments out of the group
structure into the tcb.
Why move ? Because the group is destroyed very early in the exit phase,
but the MMU mappings are needed until the context switch to the next
process is complete. Otherwise the MMU will lose its mappings and the
system will crash.
2023-01-27 23:17:01 +08:00
Xiang Xiao
8bf693b362
libc/pthread: Implement pthread_condattr_[set|get]pshared
...
https://pubs.opengroup.org/onlinepubs/009696799/functions/pthread_condattr_getpshared.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Xiang Xiao
c11cd7f103
libc/pthread: Implement pthread_attr_[set|get]stackaddr
...
https://pubs.opengroup.org/onlinepubs/009696799/functions/pthread_attr_getstackaddr.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Xiang Xiao
36b74bab02
libc/pthread: Implement pthread_rwlockattr API
...
https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlockattr_getpshared.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Xiang Xiao
679544cd32
Documentation: Remove the supported function from the unsupported list
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Jukka Laitinen
f33dc4df3f
Change FIOC_MMAP into file operation call
...
- Add mmap into file_operations and remove it from ioctl definitions.
- Add mm_map structure definitions to support future unmapping
- Modify all drivers to initialize the operations struct accordingly
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2023-01-02 11:23:20 -03:00
田昕
96a45e2c75
sched/misc:add linux-like reboot notifier list
...
Signed-off-by: 田昕 <tianxin7@xiaomi.com>
2022-12-29 19:18:42 +08:00
zhangyuan21
45394eb6dc
arch: save user context in assert common code
...
This is the work continue with #7875
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2022-12-24 13:02:56 +08:00
Zhe Weng
902a6dcad2
net/nat: Support isolation between multiple WAN devices by saving external ip
...
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-24 12:05:20 +08:00
Zhe Weng
45b7debe13
doc/nat: update config options
...
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-22 20:20:12 +08:00
chao an
6e380c0978
mm/iob: add a helper function to get iob count in chain
...
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-21 01:40:24 +08:00
chao an
4f239e145e
Revert "mm/iob/contig: enhance iob contig to support iob chain"
...
This reverts commit 56a4e90dc4
.
2022-12-19 01:32:05 +08:00
chao an
56a4e90dc4
mm/iob/contig: enhance iob contig to support iob chain
...
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-18 21:15:47 +08:00
zhangyuan21
632d87ee71
arch: remove up_release_pending function
...
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2022-12-16 21:29:57 +08:00
chao an
881c9d9fac
mm/iob: add support of partial bytes clone
...
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-14 21:37:20 +08:00
chao an
d6d56c3372
mm/iob: add support of nonblock iob_clone
...
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-14 21:37:20 +08:00
Zhe Weng
9aefd6717c
net/nat: Add support for ICMP Error Message
...
Support DEST_UNREACHABLE, TIME_EXCEEDED and PARAMETER_PROBLEM ICMP types in NAT.
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-01 22:45:22 +08:00
zhangyuan21
d8051ba979
nuttx/sched: merge up_block_task and up_unblock_task
2022-11-22 22:59:08 +08:00
zhangyuan21
5c1b518314
nuttx/sched: move reprioritize process to public function
2022-11-22 15:29:00 +09:00
zhangyuan21
08f7152d9f
nuttx/sched: remove nxsched_remove_readytorun from up_block_task
...
It takes about 10 cycles to obtain the task list according to the task
status. In most cases, we know the task status, so we can directly
add the task from the specified task list to reduce time consuming.
2022-11-22 15:29:00 +09:00
zhangyuan21
e54b602208
nuttx/sched: remove nxsched_remove_blocked from up_unblock_task
...
It takes about 10 cycles to obtain the task list according to the task
status. In most cases, we know the task status, so we can directly
delete the task from the specified task list to reduce time consuming.
2022-11-22 15:29:00 +09:00
Zhe Weng
b1ad547deb
Documentation: add NAT description
...
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-11-11 14:36:55 +08:00
Xiang Xiao
28947517ca
sched/spawn: Rename task_spawnattr_[get|set]stack[size|addr] to posix_spawnattr_[get|set]stack[size|addr]
...
since they can be not only used in task_spawn but also in posix_spawn
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-01 09:51:18 +09:00
Miguel Herranz
819ebe7356
libc/stdio: Add stdio file locking functions
...
Add flockfile(), ftrylockfile() and funlockfile() functions [1].
[1] POSIX.1-2008 / System Interfaces / flockfile
https://pubs.opengroup.org/onlinepubs/9699919799.2008edition/functions/flockfile.html
Signed-off-by: Miguel Herranz <miguel@midokura.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-22 23:34:45 +08:00
anjiahao
1c416b1712
Documentation:add nxmutex Description
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-10-22 14:50:48 +08:00
Petro Karashchenko
d247e8d1d2
sched/semaphore: fix priority boost restoration for priority inheritance
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-10-03 15:14:24 -03:00
Xiang Xiao
764540267e
sched/clock: Rename g_system_timer to g_system_ticks
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-27 17:45:44 -03:00
Xiang Xiao
ba9486de4a
iob: Remove iob_user_e enum and related code
...
since it is impossible to track producer and consumer
correctly if TCP/IP stack pass IOB directly to netdev
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-08-15 08:41:20 +03:00
Michał Łyszczek
a5bcb2dc46
Documentation: fix multiple errors and warnings
...
Multiple files were badly formatted, which resulted in many
warnings. This made it harder to check for errors in newly
written documentation.
What's worse, badly formatted text resulted in butchered
output in generated html.
This patch fixes most of the errors, but alas, not all of
the errors can be fixed. Anyway, this should be way easier
to spot errors in newly written docs now.
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
2022-06-08 03:02:32 +08:00
anjiahao
09c6b02017
Documentation:fix error describe on message queue
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-26 16:09:37 +08:00
Xiang Xiao
ef1a98dd00
Remove the unneeded void cast
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 23:32:05 +03:00