在 Linux 主机上烧录 Ubuntu 系统
Ubuntu 系统的烧录需要使用联发科提供的 Genio Tools 烧录工具,Genio Tools 包含以下工具:
genio-config
检查 Linux 或 Windows 主机是否已正确设置genio-flash
提供镜像写入功能genio-board
允许以编程方式重置联发科评估板
测试过的 Ubuntu 主机:
- Ubuntu20
- Ubuntu22
Genio Tools 环境配置
1. 安装必要软件
$ sudo apt update
$ sudo apt install -y git python3 python3-pip
运行以下命令来检查 Python 和 pip 版本:
$ python3 --version
Python 3.9.2
$ pip3 --version
pip 21.2.4 from /usr/bin/pip3 (python 3.9)
如果 pip3 版本低于 20.3。请通过运行以下命令进行升级:
$ pip3 install --upgrade pip
2. Fastboot 安装
$ sudo apt update
$ sudo apt install -y android-tools-adb android-tools-fastboot
如果主机运行的是 Ubuntu 以外的 Linux 发行版,请参阅 Android SDK Platform-Tools 安装 fastboot。
3. 配置 USB 设备规则
为了让主机能够通过 USB 与设备通信而无需 root 权限,我们需要创建一个 udev 规则来授予用户访问设备的权限:
$ echo -n 'SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="201c", MODE="0660", TAG+="uaccess"
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="0003", MODE="0660", TAG+="uaccess"
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", MODE="0660", TAG+="uaccess"
SUBSYSTEM=="gpio", MODE="0660", TAG+="uaccess"
' | sudo tee /etc/udev/rules.d/72-aiot.rules
$ sudo udevadm control --reload-rules
$ sudo udevadm trigger
另外,如果使用 adb 连接到开发板,请添加新的 udev 规则并将您的用户帐户添加到 plugdev 组:
$ echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="201c", MODE="0660", $ GROUP="plugdev"' | sudo tee -a /etc/udev/rules.d/96-rity.rules
$ sudo udevadm control --reload-rules
$ sudo udevadm trigger
$ sudo usermod -a -G plugdev $USER
udev 是 Linux 内核的设备管理器。它可用于授予用户或组访问设备的权限。在本例中,我们添加了一条 udev 规则,将 plugdev 组分配给新创建的 SoC USB 设备。为了访问 SoC,主机的用户帐户必须是 plugdev 组的成员。
4. Genio Tools 安装
$ pip3 install -U genio-tools
提示
安装 genio-tools 后请注销并重新登录。这可确保 PATH 环境变量得到正确更新。
重新登录后,请使用 genio-config 检查您的安装。
$ genio-config
fastboot: OK
udev rules: OK
更多信息请参考联发科官方文档