4
0
mirror of https://github.com/RT-Thread/rt-thread.git synced 2025-02-15 04:49:12 +08:00

16876 Commits

Author SHA1 Message Date
GuEe-GUI
aaf18e497c [DM/LED] Rename LED register/unregister
rt_hw_* is use for DM and not DM, but LED only use in DM.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:58:18 +08:00
GuEe-GUI
f506076281 [DM] Replace spinlock static init by RT_DEFINE_SPINLOCK
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:58:18 +08:00
GuEe-GUI
f20e8973be [DFS/ISO9660] Remove warning for ops
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:58:18 +08:00
GuEe-GUI
5a455cb615 [DM/PIN] Reset the value of PIN_NONE
PIN_NONE is '-1', is similar to '-RT_ERROR',
'-RT_EEMPTY' is better.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:58:18 +08:00
GuEe-GUI
578cfc0b2a [DM/CORE] Add IDA init in runtime
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:58:18 +08:00
GuEe-GUI
d41a0351db [AARCH64] Update kernel's boot link for ARM64
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:58:18 +08:00
GUI
1564735b5c
[DM/SPI] Make CS pin config fixed in system (#9977)
Make a max CS pin value (16) for SPI, that will not
alloc `*cs_pins` by malloc, because drivers call
`rt_device_unregister` may not free item.

Fixup the QSPI init configure member in DM mode.

Make SoC Kconfig import easy.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:54:59 +08:00
Rbb666
f820c1948a
[drivers/spi]修复spi configure会执行两次的问题 (#9972)
* [drivers/spi]修复spi configure会执行两次的问题
2025-02-11 13:04:31 +08:00
Supper Thomas
21ea7c675c 更新 bsp_buildings.yml 2025-02-11 10:59:41 +08:00
Chen Wang
4edfa4895c ci: remove spell_check
We often get wrong report when documentation related are
changed, such as:

```
Getting action download info
Error: This request has been automatically failed because
it uses a deprecated version of `actions/download-artifact: v3`.
Learn more: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/.
This request has been automatically failed because it uses
a deprecated version of `actions/upload-artifact: v3`.
Learn more: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/
```

Just remove this action till now.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-02-10 18:12:12 +08:00
GuEe-GUI
12fded19f5 [DM/FDT] Fixup earlycon loss old messages.
The `rt_fdt_scan_chosen_stdout` will init fdt_earlycon data
without `msg` only, the `msg_idx` should not clean, too.
Because we check if have old messages by `msg_idx`

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-10 15:55:54 +08:00
heyuanjie87
d3d33ff983
[dfs]mmap的文件在关闭后释放file指针 (#9917)
* [dfs]mmap的文件在关闭后释放file指针
2025-02-09 15:55:30 +08:00
Rbb666
d83d71cc05 [drivers/spi]统一软件SPI配置 2025-02-09 15:48:49 +08:00
heyuanjie87
6e3c9acd39 [lwp]修正kill(pid < -1)时的返回值错误 2025-02-08 14:32:20 +08:00
Rbb666
a63b97e316
[bsp][nxp]support FRDM-MCXA156 (#9971)
support FRDM-MCXA156

Co-authored-by: shannon <xxlong1999@163.com>
2025-02-07 09:45:56 +08:00
Rbb666
8629c9572a
[action]add online packages checking in rt-spark. (#9969) 2025-02-05 00:07:13 +08:00
Chen Wang
a77a86d6b2 bsp: cvitek: fix build error for aarch64
This patch fixed the error "bash: mksdimg.sh: No such file
or directory" when building cv18xx_aarch64.

The issue is introduced by commit "bsp: cvitek: removed
useless files after using rttpkgtool".

In addition, in order to unify the logic with riscv as much
as possible, the name of the "milkv-duo256m" directory under
cv18xx_aarch64 is uniformly changed to "duo256m".

This patch also improve the README, adding instructions to
install xz-utils.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-02-03 21:54:57 -05:00
Chasel
94952b18fc
[bsp][mm32f526x] 1.add mm32f526x bsp; (#9940)
[bsp][mm32f526x] 1.add a bsp for mm32f526x;
2025-02-03 23:29:27 +08:00
Kai
562e15b118
[bsp][stm32]Add an STM32H730 Board (#9962)
* Add an STM32H730 bsp
2025-02-03 21:04:49 +08:00
Kai
2fdb9381bb
ci: fix dep miss (#9965) 2025-02-03 16:42:49 +08:00
Supper Thomas
0cc4dc4a3d
[action] add ci menuconfig check (#9961) 2025-02-01 12:39:22 +08:00
qilian
ffe25c58b9
Update README.md (#9959)
Fixed the issue where the absence of the u-boot-tools package caused rttpkgtools to fail to compile normally.
2025-01-30 20:15:18 +08:00
BernardXiong
cfb44d1f7f [tools] Add requirements.txt for python packages
Add requirements.txt for python packages installation.
2025-01-29 20:56:23 -05:00
Chen Wang
c66374705a libcpu: riscv: rv64: fixed warnings
When building bsp/cvitek/c906_little, compiler reports:

```
.../rt-thread/libcpu/risc-v/rv64/trap.c:
In function 'handle_trap':
.../rt-thread/libcpu/risc-v/rv64/trap.c:106:13:
warning: implicit declaration of function 'rt_hw_tick_isr';
did you mean 'rt_hw_stack_init'? [-Wimplicit-function-declaration]
  106 |             rt_hw_tick_isr();
      |             ^~~~~~~~~~~~~~
      |             rt_hw_stack_init
.../rt-thread/libcpu/risc-v/rv64/trap.c:110:13:
warning: implicit declaration of function 'rt_hw_irq_isr';
did you mean 'rt_hw_soft_irq_isr'? [-Wimplicit-function-declaration]
  110 |             rt_hw_irq_isr();
      |             ^~~~~~~~~~~~~
      |             rt_hw_soft_irq_isr
```

rt_hw_tick_isr()/rt_hw_irq_isr() are implemented by bsp, but
libcpu/risc-v/rv64 doesn't declare them, so compiler warns.

There are three BSPs using 'rv64' (libcpu/risc-v/rv64):
- `bsp/cvitek/c906_little/rtconfig.py`
- `bsp/juicevm/rtconfig.py`
- `bsp/k210/rtconfig.py`

`handle_trap` in `libcpu/risc-v/rv64` is defined as weak.
BSP can use this function directly or define and overload
it by itself.
If bsp use this function directly, bsp need to pay
attention to the fact that three functions will be called
in this function:

- `rt_hw_soft_irq_isr`
- `rt_hw_tick_isr`
- `rt_hw_irq_isr`

In `libcpu/risc-v/rv64`, `rt_hw_soft_irq_isr` has a weak
definition, while the other two do not. This means that
if the bsp does not overload `handle_trap`, bsp must
define `rt_hw_tick_isr` and `rt_hw_irq_isr` itself.
This is also the practice of `bsp/cvitek/c906_little`.
There is also a similar bsp `bsp/k210`, and the form of
`bsp/juicevm` implements `handle_trap` by itself.

It seems that `rt_hw_tick_isr` and `rt_hw_irq_isr` are
not required to be implemented by all BSPs using
`libcpu/risc-v/rv64`. The premise for BSP to implement
them is that it does not overload `handle_trap`. So
declaring `rt_hw_tick_isr` and `rt_hw_irq_isr` with
extern in `libcpu/risc-v/rv64` is not proper.

In addition, the `rt_hw_tick_isr/rt_hw_irq_isr` are only
used by `libcpu/risc-v/rv64`, so it is not worth putting
the declaration in `./include/rthw.h`.

Sum up, the best solution is to add weak definition to
`rt_hw_tick_isr/rt_hw_irq_isr` as existing `rt_hw_soft_irq_isr`.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-29 20:28:38 -05:00
Chen Wang
2dfbae2853 libcpu: riscv: common: fixed build warnings
When building bsp/cvitek/c906_little, compiler warns:

```
.../rt-thread/libcpu/risc-v/common/trap_common.c:
In function 'rt_hw_interrupt_install':
.../rt-thread/libcpu/risc-v/common/trap_common.c:50:11:
warning: unused variable 'user_param' [-Wunused-variable]
   50 |     void *user_param = param;
      |           ^~~~~~~~~~
.../rt-thread/libcpu/risc-v/common/trap_common.c:
In function 'rt_rv32_system_irq_handler':
.../rt-thread/libcpu/risc-v/common/trap_common.c:77:25:
warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   77 |         s_stack_frame = (rt_hw_stack_frame_t *)mscratch;
      |                         ^
```

Fixed these warnings as per indication from gcc.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-29 20:28:38 -05:00
Chen Wang
3383352cdc bsp: cvitek: c906_littel: fixed build warnings for board.c
When building bsp/cvitek/c906_little, compiler warns:

```
board/board.c: In function 'rt_hw_board_init':
board/board.c:26:5: warning: implicit declaration of
function 'rt_hw_tick_init'; did you mean 'rt_hw_stack_init'?
[-Wimplicit-function-declaration]
   26 |     rt_hw_tick_init();
      |     ^~~~~~~~~~~~~~~
      |     rt_hw_stack_init
board/board.c:29:5: warning: implicit declaration of
function 'rt_hw_uart_init'; did you mean 'rt_hw_board_init'?
[-Wimplicit-function-declaration]
   29 |     rt_hw_uart_init();
      |     ^~~~~~~~~~~~~~~
      |     rt_hw_board_init
```

To remove these build warnings, include header files
which declare these functions.

Plus, remove the decalartion of `tick_isr()`, this
function does not exist.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-29 20:28:38 -05:00
kaidegit
d0fcb08611 [bsp][doc]use the default mpu conf of cubemx 2025-01-29 20:28:08 -05:00
yekai
b3bf4c6c3b [bsp][doc] add PeriphCommonClock_Config and MPU_Config 2025-01-29 20:28:08 -05:00
wumingzi
6481633ec6
[doxygen] add doxygen comment for clk.c and clk.h (#9950)
Accroding to #9947 and #9424, adding doxygen comment for function in .c files and data structure, macro in .h file is a solution.For this pr, I encountered problem following situations.
    - rt_clk_unprepare function return value type is different from rt_clk_ops so I change type of rt_clk_unprepare and its dependencies.
    - clk_get function may be similar as rt_clk_unprepare but I'm not sure so not modify.
    - clk_release implements may be incomplete, so I just marked in comment.

Signed-off-by: 1078249029 <1078249029@qq.com>
2025-01-27 15:54:13 +08:00
CYFS
599cefe834
[components][drivers]:fix spi bug and add software spi (#9944)
* fix:spi bus issue

* [components][drivers]add software SPI bus support
2025-01-27 08:35:11 +08:00
Supper Thomas
9be28dbc67 [tools/mdk5] 如果本地设置了UV4.exe 命令,则进行MDK编译 2025-01-26 11:34:50 -05:00
Chen Wang
40f3b6a569
doxygen: create framework to unify markdown and source code part (#9946)
* doxygen: adjust documentation directory structure

- Rename documentation/doxygen to documentation/0.doxygen and cleanup
  some unused files.

- Add/rename folders for each sub sections, such as
  1.introduction/...... Each sub section will be created as a subpage.

- Generate initial Doxyfile, this Doxyfile will be used to unify
  doxygen generated API documents and those markdown files under
  documentation folder. This patch just add the default Doxyfile
  generated by running "doxygen -g". It is used as baseline to add
  more features/configurations.

- Rename documentation/README.md to documentation/INDEX.md, and
  use it as mainpage.

- Move 0.doxygen/readme.md to documentation/README.md.

* doxygen: update configurations

These configurations are from old documentation/doxygen/Doxyfile.
Try best to compatible exixting design.

* doxygen: add run script

Add a script to automatic some operations.

Updated the README.md.

---------

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Co-authored-by: Supper Thomas <78900636@qq.com>
2025-01-26 11:44:39 +08:00
Chen Wang
c3e5152c13 bsp: cvitek: removed useless files after using rttpkgtool
Based on the patch "bsp: cvitek: use rttpkgtool
to replace cvitek_bootloader", continue cleanup useless files.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-26 10:55:44 +08:00
Chen Wang
7e0acaa254 bsp: cvitek: use rttpkgtool to replace cvitek_bootloader
Originally, for riscv big and little cores under bsp/cvitek,
after generating rtthread.bin, the cvitek_bootloader tool
would be used to package it and generate fip.bin and boot.sd
files that can be burned into sdcard. However, the
cvitek_bootloader tool repository is relatively large, and
it compiles and generates firmware such as fsbl, opensbi and
uboot from the source code level. And when using it, it
needs to be downloaded to the bsp/cvitek directory, which
will introduce pollution to source files in the RTT repository
under the original working path.

The new solution uses rttpkgtool, which is similar to
cvitek_bootloader, but it uses prebuilt firmware, so it is
very small and does not introduce pollution to the source file.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-26 10:55:44 +08:00
hydevcode
2a18d6873b
[bsp][nrf5x]added the cherryusb adapter for nrf52840 (#9939) 2025-01-24 23:12:25 +08:00
wumingzi
4d4c9660ce
[doxygen] add doxygen comment for blk.h (#9947)
Signed-off-by: 1078249029 <1078249029@qq.com>
2025-01-24 14:14:43 +08:00
Chen Wang
7432b0a019
Revert "[action] add cvitek/c906_little ci" (#9945)
Revert "[action] add cvitek/c906_little ci (#9901)"

This reverts commit 969e0e01ef603d3929a186e8bd03f3657ec8227c.
2025-01-23 10:37:56 +08:00
Supper Thomas
969e0e01ef
[action] add cvitek/c906_little ci (#9901)
* [action] add cvitek/c906_little ci

* Update bsp_buildings.yml

* Update rtconfig.py
2025-01-23 09:35:06 +08:00
Supper Thomas
d9947e50fa
[bsp/stm32f407-rt-spark/stm32l496zg-st-nucleo] add cherryusb support (#9929)
[bsp/stm32f407-rt-spark/l496zg] add cherryusb support
2025-01-23 09:32:38 +08:00
hydevcode
5886e262f9 [scons] ci.attachconfig.yml is used in combination with scons 2025-01-22 18:21:17 -05:00
Jamie
0800db1400
Add pm driver for F472 and add lVD unlock in board_init 2025-01-21 18:43:46 -05:00
heyuanjie87
ed3222c2f8
[lwp]修正无法通过文件名查找pid的问题 (#9935) 2025-01-21 13:01:58 +08:00
Evlers
45bb1ddac9 [components][netdev] add statistics and more inupt parameters to ping command 2025-01-20 16:55:40 +08:00
zhujiale
9c164882e8 fix when open samrt but using msh after run elf file the msh will down 2025-01-20 15:09:02 +08:00
imcu
680333fc18 [bsp][cvitek] fix c906_little build warning in cache.c
build warning: passing argument 1 of 'inv_icache_range' makes integer
from pointer without a cast [-Wint-conversion]

Analyze: The passed parameter type is void*, which is a pointer type,
but the required type is uintptr_t, which is an integer type. Therefore,
there will be a 'makes integer from pointer without a cast' warning.

Solution: casting the void* pointer to uintptr_t, ensure that the
function receives the correct type.

Signed-off-by: zdtyuiop4444 <ign7798540@gmail.com>
2025-01-20 14:26:50 +08:00
Jamie
77e95594db
[BSP] add some bsp drivers for F448, F472 and add bsp test codes 2025-01-19 22:13:22 -05:00
Chen Wang
ab1f438161 bsp: cvitek: optimze build operations for aarch64
For bsp/cvitek, duo256m, the operation process is
slightly different when building images for riscv
and arm64.

To improve the user experience, unify the building
process and steps of the two as follows:

- Enter c906_little and execute `scons`

- Enter cv18xx_riscv/cv18xx_aarch64 and execute `scons`

That's all. Finally, we can get `fip.bin` and
`boot.sd` under `bsp/cvitek/output/milkv-duo256m`.

Update the README.md accordingly.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-18 00:42:14 -05:00
hydevcode
4f40a740d2
[bsp/stm32] change the attach file of stm32f407-rt-spark to yml (#9926) 2025-01-17 21:16:29 +08:00
Chen Wang
2b82ab38a2
bsp/cvitek: print arch info. during boot-up (#9919)
Duo's CPU combination is more complicated:

| BSP           | B/L core| ISA             | UART  |
| ------------- | ------- |---------------- |-------|
| cv18xx_risc-v | Big     | RISC-V C906     | UART0 |
| c906-little   | Littel  | RISC-V C906     | UART1 |
| cv18xx_aarch64| Big     | ARM Cortex A53  | UART0 |

Printing ISA and big and small core information
during the boot process helps developers/testers
determine the CPU and serial port corresponding to
the current console.

In addition, the RTT logo printing has already
distinguished whether it is smart, so the bsp
printing no longer distinguishes.

Updated README to sync with this change.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-16 22:33:55 +08:00
Chen Wang
d3841c3109
lwp: Kconfig: LWP_DEBUG default as n (#9921)
LWP_DEBUG is debugging related, should be disabled
by default.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
2025-01-16 19:56:44 +08:00