| Age | Commit message (Collapse) | Author |
|
Many modules' utests currently don't support enabling all
tests at once. Furthermore, some modules' tests are complex,
for example due to their numerous dependencies on other
modules. This makes it nearly impossible to enable all
tests with a single global switch. Consequently, the
previously defined `RT_UTEST_USING_ALL_CASES` has lost
its original meaning.
We recommend deprecating this configuration switch. If a
module needs to enable a group of functional tests through
its own configuration, this local enable all switch should
be implemented by the module itself, and a global RTT enable
switch will no longer be provided.
If such a requirement arises in the future, we recommend
careful design, especially considering how to ensure that
turning on a single switch enables all dependencies for
all involved modules for ease of use.
Signed-off-by: Chen Wang <[email protected]>
|
|
Requirement: The BSP for the k230 platform in the RT-Thread repository
does not yet have an RTC driver.
Solution: Provide RTC drivers for the k230 platform in the RT-Thread
repository, implementing timekeeping and alarm functionalities,
with interrupt support for the alarm feature.
Signed-off-by: Ze-Hou <[email protected]>
|
|
The names of the utest cases defined in their respective
modules have been updated.
Some utest case names are not yet in their respective modules
because their paths need to be finalized before their unique
names can be determined. Currently, these names do not
appear to conflict with the unified names. These include:
- utest cases still in examples
- bsp/qemu-virt64-riscv/applications/test/test_vector/test_vector.c.
The entire test case should probably be placed in libcpu/risc-v
rather than bsp.
Signed-off-by: Chen Wang <[email protected]>
|
|
Added pdma support for uart driver and a test file test_uart.c.
The test uses pdma to improve uart send speed,
to check if the driver works correctly.
Signed-off-by: XU HU [email protected]
|
|
Added a temperature sensor driver and a test file test_ts.c.
The test uses temperature sensor to measure the chip temperature,
to check if the driver works correctly.
Signed-off-by: XU HU [email protected]
|
|
Originally, the interrupt definitions of various peripherals
were distributed in various peripheral drivers, resulting
in duplicate definitions. Now they are defined in one place.
Signed-off-by: Chen Wang <[email protected]>
|
|
Fixes: 62f3fb4ce550: fix(kernel)/improve(utest):fix the legacy issue related to the length of the object name version #10537
After this patch, if length of object name exceeds (RT_NAME_MAX - 1),
RTT will assert and oops when runing, but not in period of building.
Though I don't think it's a good solution, but don't want to argue more
about this.
Old RT_NAME_MAX is 8 for k230, and some object names, such as
"hwtimer0", which name length is 8, breaking the new rule.
Just update configuration of k230 bsp and increase RT_NAME_MAX from
8 to 16, which should be long enough for k230.
Signed-off-by: Chen Wang <[email protected]>
|
|
This commit introduces the PDMA (Peripheral DMA) driver for K230 SoC,
providing essential DMA capabilities for peripheral data transfers.
Key features implemented:
1. PDMA channel request/release management
2. Channel start/stop control
3. Interrupt callback registration
4. Data transfer between device ports and DDR memory
The driver includes:
- Core driver implementation (drv_pdma.c/h)
- Build system support (SConscript)
- Basic test cases (test_pdma.c)
Tested with:
- PDMA channel request/release
- DDR to UART TX FIFO transfers
- UART RX FIFO to DDR transfers
Signed-off-by: eatvector <[email protected]>
|
|
Added a PWM driver and a test file test_pwm.c.
The test uses PWM to control the LED brightness,
to check if the driver works correctly.
Signed-off-by: XU HU <[email protected]>
|
|
|
|
Signed-off-by: Chen Wang <[email protected]>
|
|
Signed-off-by: Chen Wang <[email protected]>
|
|
K230 supports 3 GPIO groups:
group0: GPIO0 ~ GPIO31, support i/o and irq
group1: GPIO32 ~ GPIO63, support i/o and irq
group2: GPIO64 ~ GPIO71, only support i/o.
Signed-off-by: Chen Wang <[email protected]>
|
|
Signed-off-by: Chen Wang <[email protected]>
|
|
K230 support 6 general hardware timers and 3 stc timers.
This patch only implement drivers for general hw timers.
Signed-off-by: Chen Wang <[email protected]>
|
|
Use utest assert API for utest cases.
Signed-off-by: Chen Wang <[email protected]>
|
|
K230 has two watchdog timers.
Add unit tests based on utest framework.
Watchdog and test are both configuable, disabled by default.
Signed-off-by: Chen Wang <[email protected]>
|
|
scons --menuconfig will report:
```
warning: the choice symbol PKG_USING_ZLIB_LATEST_VERSION
(defined at /home/u/.env/packages/packages/misc/zlib/Kconfig:31)
is selected by the following symbols, but select/imply has no
effect on choice symbols
- BSP_ROOTFS_TYPE_CROMFS (defined at Kconfig:36)
warning: default on the choice symbol BSP_USING_SDIO0
(defined at board/Kconfig:20) will have no effect, as defaults
do not affect choice symbols
warning: default on the choice symbol BSP_USING_SDIO1
(defined at board/Kconfig:34) will have no effect, as defaults
do not affect choice symbols
```
Fix and remove these warnings.
Signed-off-by: Chen Wang <[email protected]>
|
|
Support sdio work for 01Studio board.
01Studio connect TF socket with sdio0, which is
different from standard canmv v1.0/v1.1 board
(which uses sdio1).
Updated configuration menu,
- SDIO devices are now a choice of two.
- Root file system types are also a choice of multiple.
Currently only cromfs and elmFAT are supported.
- Modified the default mount partition of the root file
system to sd0p1
Deleted the configuration BSP_SD_SDIO_DEV, and now
directly set mmcsd_change according to the selection of
the SDIO device.
Eliminated the warning of the drv_sdhci.c and
egularized the code format. The logic of this file
has not been essentially modified.
Sync and update the .config/rtconfig.h to the latest.
Signed-off-by: Chen Wang <[email protected]>
|
|
Add a script to call rttpkgtool's sdcard.sh.
Ths script encapsulate checking and downloading
of rttpkgtool and call ./script/sdcard.sh.
It also print new message so user need not
learn how to use sdcard.sh.
Update README.md.
Signed-off-by: Chen Wang <[email protected]>
|
|
Previously, `scons -c` did not clean up the build directory
and the automatically generated link.lds.generated.
This is fixed now.
Signed-off-by: Chen Wang <[email protected]>
|
|
Signed-off-by: Wang Chen <[email protected]>
|
|
SystemCtrl includes:
- boot
- clock
- power
- reset
These drivers are built-in by default.
Signed-off-by: Wang Chen <[email protected]>
|
|
This hardlock is required by some other drivers, such
as sysctl power.
This driver can be enable/disabled by configuration.
Signed-off-by: Wang Chen <[email protected]>
|
|
When run kconfig, see warnings as followings:
Kconfig:5: warning: BSP_ROOT has 'option env="BSP_DIR"',...
Kconfig:10: warning: RTT_ROOT has 'option env="RTT_DIR"',...
Kconfig:15: warning: PKGS_ROOT has 'option env="PKGS_DIR"',...
...
warning: the choice symbol PKG_USING_ZLIB_LATEST_VERSION (...)
is selected by the following symbols, but select/imply has no
effect on choice symbols
- BSP_ROOTFS_TYPE_CROMFS (defined at Kconfig:41)
warning: the value '0xF00000000' is invalid for C908_PLIC_PHY_ADDR...
Trying to cleanup Kconfig and re-run menuconfig to update.
Signed-off-by: Chen Wang <[email protected]>
|
|
The original method of packaging and burning kernel
depends on installing the K230 RTOS SDK. It is quite
cumbersome. Now the relevant logic is extracted and
a small tool rttpkgtool is created to package the
rtthread.bin.
Considering that rttpkgtool still needs to compile
opensbi when packaging k230, which means that a
separate cross-toolchain needs to be installed.
Therefore, in order not to affect the CI operation,
the current packaging logic is not integrated into
POST_ACTION in rtconfig.py, but requires kernel
developers to run the build script separately for
packaging.
Signed-off-by: Chen Wang <[email protected]>
|
|
Signed-off-by: Chen Wang <[email protected]>
|
|
Signed-off-by: Chen Wang <[email protected]>
|
|
The original code used immediate values directly when it
came to memory layout, which was not a good programming
habit.
Now we use macros and try to be compatible with SDK
configuration values in the SDK compilation environment.
The main changes are to clean up board.h, and extract
some memory layout constants to define a new header
file mem_layout.h.
Also update KERNEL_VADDR_START to the default value for
Smart, so we can use it as base to calculate other mapping
address.
Signed-off-by: Chen Wang <[email protected]>
|
|
For linker script, use constant macro defined from
rtconfig.h, not immediate value.
Also cleanup the link_statksize.lds, it is also not
needed when using new mechanism.
Signed-off-by: Chen Wang <[email protected]>
|
|
KERNEL_VADDR_START changed to 0xffffffc000020000.
__STACKSIZE__ changed to 65536.
Signed-off-by: Chen Wang <[email protected]>
|
|
Signed-off-by: Wang Chen <[email protected]>
|
|
Some changes to support canmv board, such as:
- Address constant, some may need be set as configuration later.
- link script
- build script
Signed-off-by: Wang Chen <[email protected]>
|
|
|
|
(#10033)
* 修复Kconfig中由RTT_DIR路径错误引起的无法编译问题
* 添加k230的ci检查
* revert Update bsp_buildings.yml
---------
Co-authored-by: Supper Thomas <[email protected]>
|
|
|
|
|