| Age | Commit message (Collapse) | Author |
|
sal_get_socket((int)file->vnode->data); (#9065)
* [components][drivers] added sensor device lookup function
* [components][drivers] modified the format
* [components][drivers] modified 'sensor.c' file format
* Update af_inet_at.c
|
|
* [libcpu] support for ARCH_REMAP_KERNEL
These changes introduce support for the ARCH_REMAP_KERNEL configuration,
which isolates kernel space in high virtual address regions. This feature
is necessary to enhance memory protection and management by segregating
user and kernel spaces more effectively.
Changes:
- Updated conditional macros to check for ARCH_REMAP_KERNEL instead of
ARCH_KERNEL_IN_HIGH_VA in board initialization files to reflect the new
configuration option.
- Modified qemu-virt64-riscv Kconfig and SConstruct files to include and
utilize ARCH_REMAP_KERNEL.
- Created a new linker script `link_smart.lds` for smart linking in qemu-virt64-riscv.
- Updated rtconfig.py to use a more flexible execution path setup.
- Enhanced user address space definitions in `lwp_arch.h` to support the
new virtual address mappings.
- Adjusted kernel memory initialization and mapping logic in `c906/mmu.c`
and `virt64/mmu.c` to account for high virtual address regions.
- Added Kconfig option to enable ARCH_REMAP_KERNEL for RISCV64 architectures.
- Enhanced memory setup functions to support new mapping scheme, including
updates to early page table setup and address relocation logic.
These modifications ensure that the system can utilize high memory
addresses for the kernel, improving memory isolation and system stability.
Signed-off-by: Shell <[email protected]>
* fixup: CI run failed
* bsp: default config without using smart
* fixup: static checks
* restore rt_hw_mmu_kernel_map_init for D1
---------
Signed-off-by: Shell <[email protected]>
|
|
|
|
整理 components/drivers 的 Kconfig
|
|
* GPIO驱动与QSPI驱动适配
* C++支持
* update
---------
Co-authored-by: 张衍 <[email protected]>
|
|
Update sd.c
|
|
* first
* second
* thrid
* Update SConscript
* tmpfs testcase default n
* Update dfs_tmpfs.c
* format document
---------
Co-authored-by: zhujiale <[email protected]>
|
|
|
|
* [utest] remove delay for on thread testing
The delay is introduced from 0dc7b9a5a26030a945723569c64f5be46bd70ae1.
Though this is unnecessary for on sync utest.
So this is removed by a new entry and delay for asynchronous utest only.
Signed-off-by: Shell <[email protected]>
* fixup: msh cmd prototype
---------
Signed-off-by: Shell <[email protected]>
|
|
Update sd.c
|
|
* [smart] fixup: precise mm fault type
Also, fixup arm64 read access fault
* arm64: using meaningful macro on trap
* fixup: renaming macro
|
|
|
|
There is no next-level directory under the components/mm/
directory. Do not need to enter the next-level directory
to process the SConscript file.
Signed-off-by: Chen Wang <[email protected]>
|
|
* [smart] add CPU usage tracing config
This patch introduces following features:
- Added CPU usage tracing functionality, enabled by default, for
applications like 'top'
- update time as smart independent
Signed-off-by: Shell <[email protected]>
* fixup: add ump idle thread
---------
Signed-off-by: Shell <[email protected]>
|
|
|
|
|
|
* [DM/feature] Implement PIC irq state { get; set }
There are some common state for irq:
1. Pending: IRQ was triggered, but software not ACK.
2. Active: IRQ was ACK, but not EOI.
3. Masked: IRQ was masked or umasked.
Signed-off-by: GuEe-GUI <[email protected]>
* [DM/pic] Support IRQ state { get; set } for ARM GICv2/v3
Signed-off-by: GuEe-GUI <[email protected]>
---------
Signed-off-by: GuEe-GUI <[email protected]>
|
|
fix compile err in pic-gic
|
|
This patch fixup the script execution capabilities on argv passing
and adds support for arguments larger than 4k.
According to POSIX, the script parameter is quiet different
from the current implementation. Especially on the way it inserts
the path of executables. At the end, when you execute a script
from `$PATH`, it always fails.
For the script, interpreter will be invoked with the following
arguments: `{interpreter [optional-arg] pathname arg...}`
where pathname is the pathname of the file specified as the first
argument of execve(), and arg... is the series of words pointed
to by the argv argument of execve(), starting at argv[1]. Note that
there is no way to get the argv[0] that was passed to the
execve() call.
The changes include:
- Separating argument, environment variable, and auxiliary vector
processing into a new lwp_args.c file.
- Fixing bugs in script argument processing and supporting arguments
larger than 4k.
- Updating lwp_execve to use the new argscopy function and removing
the old lwp_argscopy function.
- Making various modifications to lwp_load and elf_aux_fill to work
with the new argument processing.
- Removing unnecessary code related to dynamic loading and interpreter
scripts.
Signed-off-by: Shell <[email protected]>
|
|
* list_process can print tid
* fix-ci
* update list_process
* Update lwp_pid.c
|
|
|
|
* [Feature] Power domain for device
1.Support device power on/off.
2.Support attach/detach device.
3.Support power domain driver api.
Signed-off-by: GuEe-GUI <[email protected]>
* [DM/platform] Enhanced platform bus
1.Add power domain for device.
2.Support `remove` and `shutdown` bus interface.
Signed-off-by: GuEe-GUI <[email protected]>
---------
Signed-off-by: GuEe-GUI <[email protected]>
|
|
* 解决ktime部分函数计算时unsigned long溢出
* 恢复部分不需要ktime中部分rt_uint64_t类型的为unsigned long
|
|
- add parameter phy to specify multiple-phy instance
Signed-off-by: Jiading Xu <[email protected]>
|
|
Use _SYS_WRAP to fetch errno on return of mkdir to avoiding overriding
of it on other system APIs.
Signed-off-by: Shell <[email protected]>
|
|
Correct `sched_setaffinity()` to use the thread IDs (TIDs) instead of
process IDs (PIDs). The previous implementation used PIDs, which
caused issues since affinity settings need to be applied at the
thread level.
As the manual documented, the signature is:
> int sched_setaffinity(pid_t pid, size_t cpusetsize,
> const cpu_set_t *mask);
Yes, it's tricky, the identification passing in is called **'PID'**.
But when we talk about 'pid' from GNU libc, it's the **'task-id'**,
aka, `thread->tid` known in kernel.
Changes were made by updating the function signatures and logic in
`lwp.h`, `lwp_pid.c`, and `lwp_syscall.c` to accept TIDs. Specifically,
the `lwp_setaffinity` function and related internal functions now
operate using thread IDs and adjust thread affinity settings accordingly
Signed-off-by: Shell <[email protected]>
|
|
|
|
[OFW] io ranges use ptr array to storage without ofw data
ofw data is private data for every ofw node that
the drivers of ofw node will use item.
replace the ranges supported to a ptr array.
the ptr array size is config by `RT_USING_OFW_BUS_RANGES_NUMBER`
Signed-off-by: GuEe-GUI <[email protected]>
|
|
For some CPU memory access devices, that the drivers
will find memory and CPU affinity to config device.
Signed-off-by: GuEe-GUI <[email protected]>
|
|
Signed-off-by: Shell <[email protected]>
|
|
* [PIC] Make affinity helper interface
Signed-off-by: GuEe-GUI <[email protected]>
* [PIC/GIC] Fixup GIC affinity init
GICv2 is not support if current CPU is not startup,
but RT-Thread SMP is startup after the devices init
in the `main` thread.
This patch fixup the cpumask to init once and check
the init status in affinity interface.
Signed-off-by: GuEe-GUI <[email protected]>
---------
Signed-off-by: GuEe-GUI <[email protected]>
|
|
The OFW map id is always use in DMA, PCI, IOMMU
bus system to find the device identity. this is
a access interface.
Signed-off-by: GuEe-GUI <[email protected]>
|
|
`map_len` and `map_mask_len` is the count of elements,
not the bytes size of elements.
Signed-off-by: GuEe-GUI <[email protected]>
|
|
DFS mount auto by kernel parameters
1.Mount the rootfs options by parameters:
- root=: root device, like vda1, sda1, sd0p1, nvme0n0p1...
- rootfstype=: root file system type, like elm, ext, crom...
- rw/ro: root is readonly or all enable, if not have 'rw' flag,
the 'ro' flag is default.
- rootwait: always wait for root device status is OK.
- rootdelay=: mount rootfs delay amount of time (millisecond).
2.Mount the other fs options by `fstab.sh`, it will read the script
after root mount is OK, it's format is a list of mount cmds in MSH:
mount vda2 /mnt elm
mount 192.168.1.1:/ /mnt/remote nfs
Signed-off-by: GuEe-GUI <[email protected]>
|
|
|
|
- added SDR50, SDR104 and DDR50 support to SD driver
Signed-off-by: Fan YANG <[email protected]>
|
|
Signed-off-by: Shell <[email protected]>
|
|
* [libcpu] rv64: discard rt_current_thread
* arm: using rt_thread_self to fetch current TCB
|
|
- added HS400 supprt (both eMMC5.0 and eMMC5.1 flavor are supported)
Signed-off-by: Fan YANG <[email protected]>
|
|
init dm serial naming framework in a phase
|
|
Signed-off-by: Shell <[email protected]>
|
|
This change addresses a potential out-of-memory access issue in the
devfs filesystem component. The issue arises when the `rt_malloc`
function allocates memory for a path string without accounting for
the null terminator, leading to undefined behavior.
As the manual documented:
> DESCRIPTION
> The strlen() function calculates the length of the string pointed to
> by s, excluding the terminating null byte ('\0').
To fix this, the memory allocation size was increased by one byte
to ensure space for the null terminator. This prevents potential
out-of-memory access and ensures proper string termination.
Signed-off-by: Shell <[email protected]>
|
|
add isr statistics
|
|
* [smart] select console device dynamically
- Fixed compiler warning on terminal subsystem for
`components/lwp/terminal/terminal.h`
- Updated default console setup to dynamically select an appropriate tty
device based on the configured console device name.
Signed-off-by: Shell <[email protected]>
* fixup: remove useless codes
---------
Signed-off-by: Shell <[email protected]>
|
|
* fix specified network card not taking effect with msh's ping error
* fix specified network card not taking effect with msh's ping error
|
|
fix error in getting serial_tty settings
|
|
* fix ofw_alias_scan() bug
* fix tag_len
|
|
thread_local对象析构函数与实际内存释放动作顺序相反问题
|
|
fix compiler error in serial dm
|
|
Signed-off-by: Shell <[email protected]>
|