TUI/CLI 工具,用于在运行时管理设备树插件。Go + Bubble Tea,单个静态二进制,零运行时依赖。
适用于任何 Linux 发行版(Ubuntu、Debian、Buildroot 等),只要 U-Boot 支持 overlay 加载。
工作原理
┌─────────────────────────────────────────────────────────┐
│ 用户执行: sudo ovtree │
│ ↓ │
│ overlays.ini ──(读写)── TUI / CLI │
│ ↓ │
│ .ubootenv ──(保存时自动生成)── │
│ ↓ │
│ U-Boot 启动 ──(读取 .ubootenv)── 加载 *.dtbo │
└─────────────────────────────────────────────────────────┘1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
所有文件集中在 /boot/overlays/
overlays.ini 格式
ini
# 互斥组 — 同组内同一时间只能启用一个 overlay
[group:dsi-display]
type = group
name_zh = DSI 显示屏
name_en = DSI Display
desc_zh = 同一时间只能使用一个 DSI 屏幕
desc_en = Only one DSI display can be active at a time
# Overlay 条目 — 段名必须与 .dtbo 文件名一致
[your-board-dsi-screen.dtbo]
enabled = false
name_zh = 10.1寸 MIPI 屏幕
name_en = 10.1" MIPI Display
desc_zh = 800x1280, 4-lane MIPI, GT9xx 触控
desc_en = 800x1280, 4-lane MIPI, GT9xx Touch
group = dsi-display1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| 字段 | 必填 | 说明 |
|---|---|---|
enabled | 是 | true 或 false |
name_zh | 是 | 中文显示名称 |
name_en | 是 | 英文显示名称 |
desc_zh | 否 | 中文描述 |
desc_en | 否 | 英文描述 |
group | 否 | 互斥组名称(留空 = 无约束) |
使用方法
TUI 模式(推荐)
在开发板终端执行:
bash
sudo ovtree # 首先选择语言
sudo ovtree --lang=zh # 直接进入中文
sudo ovtree --lang=en # 直接进入英文1
2
3
2
3
CLI 模式
在开发板终端执行:
bash
sudo ovtree list # JSON 列出所有 overlay
sudo ovtree status # 查看已启用的 overlay
sudo ovtree enable your-overlay.dtbo # 启用
sudo ovtree disable your-overlay.dtbo # 禁用
sudo ovtree disable-all # 全部禁用1
2
3
4
5
2
3
4
5
运行时添加新 Overlay
1、将新的 .dtbo 文件放入 /boot/overlays/
2、在 overlays.ini 中添加对应的配置段:
添加方式一:直接编辑
overlays.ini文件,按照格式添加新的 overlay 配置段,保存退出后即可在 TUI 中看到新添加的 overlay 了。添加方式二:进入 TUI 模式,选择 「添加新插件」 ,会自动打开
overlays.ini文件,写入相关信息,按照格式添加新的 overlay 配置段,保存退出后即可在 TUI 中看到新添加的 overlay 了。