YanXiaowei
356ddee5b8
support trace_beginex and trace_endex
...
Signed-off-by: YanXiaowei <yanxiaowei@xiaomi.com>
2024-10-13 10:23:44 +08:00
chenrun1
9e81f5efac
Revert "sched/spinlock: remove nesting spinlock support"
...
This reverts commit 5aa13bc490
.
2024-10-13 09:41:59 +08:00
chenzhijia
505adfa277
nuttx:move "#define STRINGIFY(x)" to nuttx/macro.h
...
Franklin requirement, "#define STRINGIFY(x)" conflicts with https://github.com/mborgerding/kissfft define
Signed-off-by: chenzhijia <chenzhijia@xiaomi.com>
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-13 03:16:25 +08:00
yinshengkai
38e474b0c5
libc: add CRC-8-ROHC support
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-13 03:09:26 +08:00
yangshuyong
c1eee1cc29
Changed the i3c_priv_xfer's member to flags from rnw
...
Signed-off-by: yangshuyong <yangshuyong@xiaomi.com>
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-13 02:49:05 +08:00
Bowen Wang
143466baed
drivers/pci: fix pci framework warning in 32bit chip
...
In file included from pci/pci.c:30:
pci/pci.c: In function 'pci_setup_device':
pci/pci.c:449:66: warning: right shift count >= width of type [-Wshift-count-overflow]
449 | pci_write_config_dword(dev, base_address_1, res->start >> 32);
| ^~
pci/pci.c: In function 'pci_presetup_bridge':
pci/pci.c:541:51: warning: right shift count >= width of type [-Wshift-count-overflow]
541 | ctrl->mem_pref.start >> 32);
| ^~
pci/pci.c: In function 'pci_postsetup_bridge':
pci/pci.c:604:57: warning: right shift count >= width of type [-Wshift-count-overflow]
604 | (ctrl->mem_pref.start - 1) >> 32);
| ^~
CC: pthread/pthread_release.c pci/pci_ecam.c:71:12: warning: initialization of 'int (*)(struct pci_bus_s *, unsigned int, int, int, uint32_t *)' {aka 'int (*)(struct pci_bus_s *, unsigned int, int, int, long unsigned int *)'} from incompatible pointer type 'int (*)(struct pci_bus_s *, uint32_t, int, int, uint32_t *)' {aka 'int (*)(struct pci_bus_s *, long unsigned int, int, int, long unsigned int *)'} [-Wincompatible-pointer-types]
71 | .read = pci_ecam_read_config,
| ^~~~~~~~~~~~~~~~~~~~
pci/pci_ecam.c:71:12: note: (near initialization for 'g_pci_ecam_ops.read')
pci/pci_ecam.c:72:12: warning: initialization of 'int (*)(struct pci_bus_s *, unsigned int, int, int, uint32_t)' {aka 'int (*)(struct pci_bus_s *, unsigned int, int, int, long unsigned int)'} from incompatible pointer type 'int (*)(struct pci_bus_s *, uint32_t, int, int, uint32_t)' {aka 'int (*)(struct pci_bus_s *, long unsigned int, int, int, long unsigned int)'} [-Wincompatible-pointer-types]
72 | .write = pci_ecam_write_config,
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-13 02:28:32 +08:00
hujun5
444a9fbcd6
pthread: We should not directly include arch/spinlock.h as it may cause compilation errors in C++.
...
Instead, we should use nuttx/spinlock.h.
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-13 02:27:58 +08:00
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
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
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
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
anjiahao
434442d707
modlib:move modlib_findsection to common headfile
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
2be58054bb
modlib_bind:add new args export and nexport to modlib_bind
...
if modp is NULL, we can use export and nexport load externl symbol
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
1fc2cd7816
binfmt:use modlib api inside of elf api [1/2]
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
9c191e93b7
modilib:add new args to modp record init arry
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
e9550783d3
modlib:add new api to uninitialize modp
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
dfc5e4dd55
modlib:Move addrenv logic to modlib
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
52126aede1
coredump:Move coredump to sched/misc
...
1. move coredump form libelf to sched/misc
2. rename core_dump to coredump
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
9e868cadfb
coredump:Move private functions to internal header files
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
anjiahao
489223f0d5
modlib:move get file info logic to modlib
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
wangyongrong
24b0fa0072
pci.h: add pci_write/read_mmio_qword support
...
1. optimize the macro, add () for the marco arguments;
2. add pci_write_mmio_qword() and pci_read_mmio_qword() api;
Signed-off-by: wangyongrong <wangyongrong@xiaomi.com>
2024-10-12 12:16:25 +08:00
wangxiaoxin
1b8c17ff15
add lin error flags to lin.h
...
Signed-off-by: wangxiaoxin <wangxiaoxin@xiaomi.com>
2024-10-12 12:15:58 +08:00
wangyongrong
ad2e6fb2ba
pci_ivshmem.c: ivshmem_support_irq API support
...
ivshmem based driver can use this api to judge weather current
ivshmem device support irq or not, and use polling mode or irq
mode to process the event.
Signed-off-by: wangyongrong <wangyongrong@xiaomi.com>
2024-10-12 12:13:23 +08:00
chao an
5aa13bc490
sched/spinlock: remove nesting spinlock support
...
developers must be careful to hold spinlocks and ensure all
of protected code is under control, so remove support for nested
spinlocks to improve performance.
Signed-off-by: chao an <anchao@lixiang.com>
2024-10-12 11:18:10 +08:00
makejian
e8a890ef42
nuttx/syscall: export nxsem_getprioceiling and nxsem_setprioceiling via syscall
...
Signed-off-by: makejian <makejian@xiaomi.com>
2024-10-12 09:50:54 +08:00
ligd
5c29c18199
mm.h: remove depends on addrenv.h
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-12 09:29:37 +08:00
ligd
76e77ff184
assert: add header files to resolve compile failed
...
error: 'NULL' undecleard
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-12 09:29:37 +08:00
liaoao
82ef95b6e2
rpmsg_port_spi_slave: fix compile error when enable RPMSG_PORT_SPI_SLAVE only
...
Signed-off-by: liaoao <liaoao@xiaomi.com>
2024-10-11 21:20:45 +08:00
Bowen Wang
313d6df787
include/nuttx.h: replace all the align macros to nuttx version
...
1. add IS_ALIGNED() definitions for NuttX;
2. replace all the ALIGN_UP() and ALIGN_DOWN() to use common
align implementation;
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-11 16:55:43 +08:00
Yongrong Wang
4b77dd03db
rpmsg_ping.c: change msg cmd type for more compatible
...
Use bit mask method to represent the command, because it's more
convenient to express multiple characteristics simultaneously.
Signed-off-by: Yongrong Wang <wangyongrong@xiaomi.com>
2024-10-11 14:59:26 +08:00
cuiziwei
6ad06ba004
note:unified note filtering at runtime.
...
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-11 11:55:17 +08:00
yinshengkai
a70175ea06
note: make sched_note_start depend on INSTRUMENTATION_SWITCH
...
In some cases, we only need to use INSTRUMENTATION_DUMP to record custom data,
and we don't want the thread start and end information
Move this part to INSTRUMENTATION_SWTICH for recording
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 11:55:17 +08:00
yinshengkai
453cde945f
note: add note stream drivers
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 11:55:17 +08:00
yinshengkai
ec691cc5e4
tools: prasetrace.py supports parsing syslog
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 01:30:11 +08:00
yinshengkai
211a56910a
syslog: support syslog redirection to sched_note
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 01:30:11 +08:00
yinshengkai
2fe33f551c
assert: change the do-while of assert to a conditional expression
...
According to the standard definition, assert should return a void expression
https://pubs.opengroup.org/onlinepubs/007904875/basedefs/assert.h.html
This patch involves two changes:
If you define the NDEBUG macro, assert does not use any parameters and directly returns a void expression.
assert should return a void expression and cannot use do-while statements.
If the following code , a compilation error will occur.
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 00:51:20 +08:00
yinshengkai
ba2865f20a
sched: support backtrace record
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-11 00:37:27 +08:00
yinshengkai
02eb280302
arch/perf: modify the return value of up_perf_gettime to clock_t
...
When using alarm_arch implementation, 64-bit time can be returned. Using unsign long will cause precision loss.
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-10 23:17:14 +08:00
Neo Xu
d598da80e4
Rename group_argvstr to nxtask_argvstr
...
Now argument vector is stored to TLS, task_argvstr fits better.
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2024-10-10 23:13:37 +08:00
yinshengkai
d375a09c0a
libs: add gprof arm64 support
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-10 18:46:51 +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
Xiang Xiao
4944bfd56c
sched: Implement profil function
...
which is very useful for performance analysis:
https://man7.org/linux/man-pages/man3/profil.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2024-10-10 18:46:51 +08:00
anjiahao
f955eda358
uart_16550:fix bug, regincr is used multiple times
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-10 17:49:18 +08:00
hujun5
e249dd2672
arch: support customized up_cpu_index() in AMP mode
...
Some app with same code runs on different cores in AMP mode,
need the physical core on which the function is called.
Signed-off-by: hujun5 <hujun5@xiaomi.com>
Signed-off-by: fangxinyong <fangxinyong@xiaomi.com>
2024-10-10 02:38:40 +08:00
Bowen Wang
092bdec20b
drivers/serial: support force panic only when repeat the panic char
...
We can increase the panic repeat count to avoid abnormal crashes
caused by serial port interference.
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-10 02:38:12 +08:00
Bowen Wang
bbb7f436d4
serial.c: should protect the fds when calling poll_notify
...
1. Use critical_section to protect the fds array;
2. Use critical_section and sched lock to protect the poll notify, because
poll notify may cause context switch, delay the context swtich to
sched_unlock();
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-10 02:38:12 +08:00
Bowen Wang
39449c6069
sched/sched.h: add nxsched_lock/unlock_irq() function
...
These two macros can be called in interrupt context and:
1. Do nothing when called in interrupt;
2. Same behavior as sched_lock/unlock when called in thread;
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-10 02:38:12 +08:00
ligd
80079f35e4
signal: add sig_tgkill() kenrnel version support
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-10 02:38:12 +08:00
sunjikun
ee306d47fd
drivers/serial: Add 16550_DLF_SIZE option for DesignWare UART.
...
Signed-off-by: sunjikun <sunjikun@xiaomi.com>
2024-10-10 02:38:12 +08:00
Bowen Wang
89c49c53a7
virtio-mmio/pci: add alloc_buf/free_buf for mmio and pci transport layer
...
And remove the virtio_alloc/free_buf implementation in virtio.c, because
these two apis has been moved to the OpenAMP
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-09 23:32:58 +08:00