• Home
  • Annotate
  • current directory
Name Date Size #Lines LOC

..21-Aug-2025-

applications/21-Aug-2025-

driver/21-Aug-2025-

figures/21-Aug-2025-

.config A D21-Aug-202553.9 KiB1,7081,579

Kconfig A D21-Aug-2025608 3225

README.md A D21-Aug-20256.8 KiB198157

README_ZH.md A D21-Aug-20256.4 KiB195155

SConscript A D21-Aug-2025312 1511

SConstruct A D21-Aug-2025783 3022

Taishanpi-RK3566_CN.md A D21-Aug-202512.3 KiB375278

Taishanpi-RK3566_ZH.md A D21-Aug-202511.7 KiB373279

rtconfig.h A D21-Aug-202514.9 KiB661263

rtconfig.py A D21-Aug-20251.7 KiB5844

README.md

1# RK3568 BSP Introduction
2
3[中文页](./README_ZH.md) | English
4
5## 1. Introduction
6
7### Core Architecture
8
9- **CPU**: Quad-core 64-bit ARM Cortex-A55
10- **Process Node**: 22nm FinFET
11- **Clock Speed**: Up to 1.8GHz (boost)
12
13### Graphics Subsystem
14
15- **GPU**: ARM Mali-G52 MP2
16  - Graphics APIs:
17    - OpenGL ES 3.2/2.0/1.1
18    - Vulkan 1.1
19  - Display Outputs:
20    - HDMI 2.0b
21    - eDP 1.3
22    - MIPI-DSI (4 lanes)
23- **Video Processing**:
24  - Decoding: 4K@60fps (H.265/H.264/VP9)
25  - Encoding: 1080P@60fps (H.264/H.265)
26
27### Memory & Storage
28
29- **RAM Support**:
30  - Dual-channel LPDDR4/LPDDR4X
31  - Max Capacity: 8GB
32- **Storage Options**:
33  - eMMC 5.1 HS400
34  - SD 3.0 UHS-I
35  - Optional SATA III (6Gbps)
36- **High-Speed Interfaces**:
37  - USB 3.0 Type-A/C
38  - PCIe 2.1 (x1 lane)
39
40### AI Acceleration
41
42- **NPU**: 0.8 TOPS INT8
43  - Framework Support:
44    - TensorFlow Lite
45    - MXNet
46    - PyTorch Mobile
47
48### Connectivity
49
50- **Wired**:
51  - Dual Gigabit Ethernet (RGMII)
52- **Wireless**:
53  - Expansion via:
54    - PCIe-based WiFi6
55    - USB Bluetooth 5.0
56
57### Multimedia I/O
58
59- **Camera Input**:
60  - Dual 4-lane MIPI-CSI
61  - Supports up to 13MP sensors
62
63## 2. Compiling
64
65Use the RT-Thread Smart dedicated toolchain to compile:
66
67```plaintext
68wget https://github.com/RT-Thread/rt-thread/releases/download/v5.2.0/aarch64-linux-musleabi_for_x86_64-pc-linux-gnu_242520-979be38cba.tar.bz2
69
70sudo tar -xf aarch64-linux-musleabi_for_x86_64-pc-linux-gnu_242520-979be38cba.tar.bz2 -C /opt
71```
72
73After downloading, extract the toolchain to the /opt directory.Then configure your environment variables:
74
75```plaintext
76export RTT_CC="gcc"
77export RTT_EXEC_PATH="/opt/aarch64-linux-musleabi_for_x86_64-pc-linux-gnu/bin/"
78export RTT_CC_PREFIX="aarch64-linux-musleabi-"
79export PATH="$RTT_EXEC_PATH:$PATH"
80```
81
82Navigate to the rt-thread/bsp/rockchip/rk3500 directory and enter:
83
84```shell
85scons --menuconfig
86```
87
88Select and pull the zlib package in the menu:
89![zlib_pack](./figures/zlib_pack.png)
90
91Then run the following commands to fetch packages and build the project:
92
93```shell
94source  ~/.env/tools/scripts/pkgs --update
95
96scons
97```
98
99## 3. Execution
100
101The RK3566 SoC uses different methods to install the kernel depending on the board.It is recommended to install and boot from an SD card.The following steps take the Orange Pi Compute Module 4 as an example:
102
103Connect the serial port of the development board:
104![uart](./figures/uart.png)
105
1061. Open a serial terminal, select the correct serial port, and set the baud rate to 1500000.
107
1082. Copy the generated rtthread.bin file to the SD card.
109
1103. Power up the development board and press Ctrl + C on the keyboard to enter U-Boot command line mode.
111![uboot_cmd](./figures/uboot_cmd.png)
112
1134. Enter the following command to load and boot the Smart system:
114
115```shell
116fatload mmc 1:1 0x480000 rtthread.bin;booti 0x480000 - 0x8300000
117```
118
119```plaintext
120reading rtthread.bin
1211188080 bytes read in 102 ms (11.1 MiB/s)
122Fdt Ramdisk skip relocation
123## Flattened Device Tree blob at 0x08300000
124   Booting using the fdt blob at 0x08300000
125  'reserved-memory' linux,cma: addr=10000000 size=800000
126  'reserved-memory' ramoops@110000: addr=110000 size=f0000
127   Using Device Tree in place at 0000000008300000, end 000000000832048e
128Adding bank: 0x00200000 - 0x08400000 (size: 0x08200000)
129Adding bank: 0x09400000 - 0xf0000000 (size: 0xe6c00000)
130Adding bank: 0x1f0000000 - 0x200000000 (size: 0x10000000)
131== DO RELOCATE == Kernel from 0x00280000 to 0x00480000
132Total: 107148.892 ms
133
134Starting kernel ...
135
136[I/rtdm.ofw] Booting RT-Thread on physical CPU 0x0
137[I/rtdm.ofw] Machine model: Rockchip RK3566 Orange Pi CM4 Board
138[I/rtdm.ofw] Earlycon: uart8250 at MMIO/PIO 0x00000000fe660000 (options '')
139[I/rtdm.ofw] Memory node(1) ranges: 0x0000000000200000 - 0x0000000008400000
140[I/rtdm.ofw] Memory node(1) ranges: 0x0000000009400000 - 0x00000000f0000000
141[I/rtdm.ofw] Memory node(1) ranges: 0x00000001f0000000 - 0x0000000200000000
142[I/mm.memblock] System memory:
143[I/mm.memblock]            [0x0000000000200000, 0x0000000008400000]
144[I/mm.memblock]            [0x0000000009400000, 0x00000000f0000000]
145[I/mm.memblock]            [0x00000001f0000000, 0x0000000200000000]
146[I/mm.memblock] Reserved memory:
147[I/mm.memblock]            [0x0000000000110000, 0x0000000000200000]
148[I/mm.memblock]            [0x0000000000480000, 0x00000000006c7000]
149[I/mm.memblock]            [0x00000000006c7000, 0x00000000046c7000]
150[I/mm.memblock]            [0x00000000046c7000, 0x00000000048c7000]
151[I/mm.memblock]            [0x00000000048c7000, 0x00000000048e5000]
152[I/mm.memblock]            [0x0000000008300000, 0x000000000831e000]
153[I/mm.memblock]            [0x0000000010000000, 0x0000000010800000]
154[I/mm.memblock]            [0x00000000edf00000, 0x00000000ee367400]
155[I/mm.memblock]            [0x00000000eff00000, 0x00000000eff08000]
156[I/mm.memblock] physical memory region [0x0000000000200000-0x0000000000480000] installed to system page
157[I/mm.memblock] physical memory region [0x00000000048e5000-0x0000000008300000] installed to system page
158[I/mm.memblock] physical memory region [0x000000000831e000-0x0000000008400000] installed to system page
159[I/mm.memblock] physical memory region [0x0000000009400000-0x0000000010000000] installed to system page
160[I/mm.memblock] physical memory region [0x0000000010800000-0x00000000edf00000] installed to system page
161[I/mm.memblock] physical memory region [0x00000000ee368000-0x00000000eff00000] installed to system page
162[I/mm.memblock] physical memory region [0x00000000eff08000-0x00000000f0000000] installed to system page
163[I/mm.memblock] physical memory region [0x00000001f0000000-0x0000000200000000] installed to system page
164[I/mm.memblock] 4191 MB memory installed to system page
165[I/osi.psci] Using PSCI v1.1 Function IDs
166[I/clk.rk3568] set cpu_freq to 1800000000
167[I/rtdm.ofw] Console: uart0 (fiq-debugger)
168
169 \ | /
170- RT -     Thread Smart Operating System
171 / | \     5.2.1 build Apr 28 2025 09:19:08
172 2006 - 2024 Copyright by RT-Thread team
173lwIP-2.1.2 initialized!
174[I/sal.skt] Socket Abstraction Layer initialize success.
175[I/utest] utest is initialize success.
176[I/utest] total utest testcase num: (5)
177[I/drivers.serial] Using /dev/ttyS0 as default console
178Press any key to stop init process startup ... 3
179Press any key to stop init process startup ... 2
180Press any key to stop init process startup ... 1
181Starting init ...
182[I/rtdm.mnt] File system initialization done
183Hi, this is RT-Thread!!
184msh />I/TC: Secondary CPU 1 initializing
185I/TC: Secondary CPU 1 switching to normal world boot
186[I/cpu.aa64] Call cpu 1 on success
187I/TC: Secondary CPU 3 initializing
188I/TC: Secondary CPU 3 switching to normal world boot
189I/TC: Secondary CPU 2 initializing
190I/TC: Secondary CPU 2 switching to normal world boot
191[I/cpu.aa64] Call cpu 3 on success
192[I/cpu.aa64] Call cpu 2 on success
193
194msh />
195msh />
196
197```
198

README_ZH.md

1# RK3566 BSP 介绍
2
3中文页 | [English](./README.md)
4
5## 1. 介绍
6
7### 核心架构
8
9- **CPU**: 四核 64 位 Cortex-A55 处理器
10- **制程工艺**: 22nm 光刻技术
11- **主频**: 最高 1.8GHz
12
13### 图形处理
14
15- **GPU**: Mali-G52
16  - 支持 OpenGL ES 3.2/2.0/1.1
17  - 支持 Vulkan 1.1
18- **视频编解码**:
19  - 4K@60fps 解码 (H.265/H.264/VP9)
20  - 1080P@60fps 编码
21
22### 存储与扩展
23
24- **内存支持**:
25  - LPDDR4/LPDDR4X
26  - 最高 8GB 容量
27- **存储接口**:
28  - eMMC 5.1
29  - SDIO 3.0
30  - SATA 3.0 (可选)
31- **高速接口**:
32  - USB 3.0/2.0
33  - PCIe 2.1 (1x lane)
34
35### AI
36
37- **NPU**: 0.8TOPS 算力
38- **支持框架**:
39  - TensorFlow
40  - MXNet
41  - PyTorch
42
43### 网络连接
44
45- **有线网络**:
46  - 双千兆以太网 (RGMII)
47- **无线扩展**:
48  - 支持 WiFi6/蓝牙模块扩展
49
50### 多媒体接口
51
52- **显示输出**:
53  - HDMI 2.0
54  - eDP 1.3
55  - MIPI-DSI
56- **摄像头输入**:
57  - 双 MIPI-CSI
58  - 支持 4K 图像处理
59
60## 2. 编译
61
62使用RT-Thread Smart 专用工具链进行编译:
63
64```plaintext
65wget https://github.com/RT-Thread/rt-thread/releases/download/v5.2.0/aarch64-linux-musleabi_for_x86_64-pc-linux-gnu_242520-979be38cba.tar.bz2
66
67sudo tar -xf aarch64-linux-musleabi_for_x86_64-pc-linux-gnu_242520-979be38cba.tar.bz2  -C /opt
68```
69
70将工具链下载后,解压至/opt目录。并设置环境变量
71
72```shell
73环境变量配置为:
74export RTT_CC="gcc"
75export RTT_EXEC_PATH="/opt/aarch64-linux-musleabi_for_x86_64-pc-linux-gnu/bin/"
76export RTT_CC_PREFIX="aarch64-linux-musleabi-"
77export PATH="$RTT_EXEC_PATH:$PATH"
78```
79
80进入`rt-thread/bsp/rockchip/rk3500`目录下输入:
81
82```plaintext
83scons --menuconfig
84```
85
86选择并拉取zlib软件包
87![zlib_pack](./figures/zlib_pack.png)
88
89执行一下命令拉取软件包并编译
90
91```shell
92source  ~/.env/tools/scripts/pkgs --update
93
94scons
95```
96
97## 3. 运行
98
99RK3566 根据不同的板卡有不同的内核安装方法,建议安装到 SD 卡中,这里以Orange Pi Compute Module 4举例说明:
100连接开发板串口:
101![uart](./figures/uart.png)
102
1031. 打开串口工具,选择对应串口,设置波特率为1500000
104
1052. 将上述生成好的rtthread.bin放置sd卡中
106
1073. 开发板上电,键盘点击`ctrl + c`进入uboot命令行模式
108![uboot_cmd](./figures/uboot_cmd.png)
109
1104. 输入下述指令运行smart系统
111
112```shell
113fatload mmc 1:1 0x480000 rtthread.bin;booti 0x480000 - 0x8300000
114```
115
116```plaintext
117reading rtthread.bin
1181188080 bytes read in 102 ms (11.1 MiB/s)
119Fdt Ramdisk skip relocation
120## Flattened Device Tree blob at 0x08300000
121   Booting using the fdt blob at 0x08300000
122  'reserved-memory' linux,cma: addr=10000000 size=800000
123  'reserved-memory' ramoops@110000: addr=110000 size=f0000
124   Using Device Tree in place at 0000000008300000, end 000000000832048e
125Adding bank: 0x00200000 - 0x08400000 (size: 0x08200000)
126Adding bank: 0x09400000 - 0xf0000000 (size: 0xe6c00000)
127Adding bank: 0x1f0000000 - 0x200000000 (size: 0x10000000)
128== DO RELOCATE == Kernel from 0x00280000 to 0x00480000
129Total: 107148.892 ms
130
131Starting kernel ...
132
133[I/rtdm.ofw] Booting RT-Thread on physical CPU 0x0
134[I/rtdm.ofw] Machine model: Rockchip RK3566 Orange Pi CM4 Board
135[I/rtdm.ofw] Earlycon: uart8250 at MMIO/PIO 0x00000000fe660000 (options '')
136[I/rtdm.ofw] Memory node(1) ranges: 0x0000000000200000 - 0x0000000008400000
137[I/rtdm.ofw] Memory node(1) ranges: 0x0000000009400000 - 0x00000000f0000000
138[I/rtdm.ofw] Memory node(1) ranges: 0x00000001f0000000 - 0x0000000200000000
139[I/mm.memblock] System memory:
140[I/mm.memblock]            [0x0000000000200000, 0x0000000008400000]
141[I/mm.memblock]            [0x0000000009400000, 0x00000000f0000000]
142[I/mm.memblock]            [0x00000001f0000000, 0x0000000200000000]
143[I/mm.memblock] Reserved memory:
144[I/mm.memblock]            [0x0000000000110000, 0x0000000000200000]
145[I/mm.memblock]            [0x0000000000480000, 0x00000000006c7000]
146[I/mm.memblock]            [0x00000000006c7000, 0x00000000046c7000]
147[I/mm.memblock]            [0x00000000046c7000, 0x00000000048c7000]
148[I/mm.memblock]            [0x00000000048c7000, 0x00000000048e5000]
149[I/mm.memblock]            [0x0000000008300000, 0x000000000831e000]
150[I/mm.memblock]            [0x0000000010000000, 0x0000000010800000]
151[I/mm.memblock]            [0x00000000edf00000, 0x00000000ee367400]
152[I/mm.memblock]            [0x00000000eff00000, 0x00000000eff08000]
153[I/mm.memblock] physical memory region [0x0000000000200000-0x0000000000480000] installed to system page
154[I/mm.memblock] physical memory region [0x00000000048e5000-0x0000000008300000] installed to system page
155[I/mm.memblock] physical memory region [0x000000000831e000-0x0000000008400000] installed to system page
156[I/mm.memblock] physical memory region [0x0000000009400000-0x0000000010000000] installed to system page
157[I/mm.memblock] physical memory region [0x0000000010800000-0x00000000edf00000] installed to system page
158[I/mm.memblock] physical memory region [0x00000000ee368000-0x00000000eff00000] installed to system page
159[I/mm.memblock] physical memory region [0x00000000eff08000-0x00000000f0000000] installed to system page
160[I/mm.memblock] physical memory region [0x00000001f0000000-0x0000000200000000] installed to system page
161[I/mm.memblock] 4191 MB memory installed to system page
162[I/osi.psci] Using PSCI v1.1 Function IDs
163[I/clk.rk3568] set cpu_freq to 1800000000
164[I/rtdm.ofw] Console: uart0 (fiq-debugger)
165
166 \ | /
167- RT -     Thread Smart Operating System
168 / | \     5.2.1 build Apr 28 2025 09:19:08
169 2006 - 2024 Copyright by RT-Thread team
170lwIP-2.1.2 initialized!
171[I/sal.skt] Socket Abstraction Layer initialize success.
172[I/utest] utest is initialize success.
173[I/utest] total utest testcase num: (5)
174[I/drivers.serial] Using /dev/ttyS0 as default console
175Press any key to stop init process startup ... 3
176Press any key to stop init process startup ... 2
177Press any key to stop init process startup ... 1
178Starting init ...
179[I/rtdm.mnt] File system initialization done
180Hi, this is RT-Thread!!
181msh />I/TC: Secondary CPU 1 initializing
182I/TC: Secondary CPU 1 switching to normal world boot
183[I/cpu.aa64] Call cpu 1 on success
184I/TC: Secondary CPU 3 initializing
185I/TC: Secondary CPU 3 switching to normal world boot
186I/TC: Secondary CPU 2 initializing
187I/TC: Secondary CPU 2 switching to normal world boot
188[I/cpu.aa64] Call cpu 3 on success
189[I/cpu.aa64] Call cpu 2 on success
190
191msh />
192msh />
193
194```
195