286| 1
|
[讨论分享] Slimbootloader 在 LattePanda上启动 Ubuntu |
这次带来是全网唯一的开源 X86 BIOS 方案,通过它能够在 Latte Panda Mu上引导启动 Ubuntu。 为了在Latte Panda Mu使用SlimBootLoader,还需要额外准备如下硬件: 1. 烧写IFWI的硬件工具,比如:SF100烧录器; 2. 查看串口Log 的工具,比如:CH343 串口转 USB工具,用于配置安装Ubuntu; 3. 准备2个U盘,一个用于制作 Ubuntu安装盘,我这边使用64GB 的金邦U盘,使用DiskGuinus格式化为 FAT32(注意不要使用 exFat)。将 Ubuntu 解压后全部放入 U盘根目录即可;另外U盘一个用于制作引导脚本。 第一步,生成能够启动的 Latte Panda Mu 的 IFWI。根据【参考1】,配置编译环境,首先确保能够编译通过 QEMU。 a.编译 BIOS 代码: Python BuildLoader.py build adln b.生成IFWI,这里没有使用 mFIT 而是直接使用代码替换原代码中的 BIOS Region。 python Platform/AlderlakeBoardPkg/Script/StitchLoader.py-i LattePanda.bin -s Outputs/adln/SlimBootloader.bin -o LattePanda_ifwi.bin -p0xAA000007 上述的命令中,LattePanda.bin 是DFRobot 提供的原始的IFWI,其中的BIOS是AMI CodeBase;SlimBootloader.bin 是前面从 SBL Build出来的BIOS;最后的LattePanda_ifwi.bin就是生成的新的 IFWI。 d.关机状态下,将USB 转串口工具连接到LattePanda Mu 的PCH UART0 上 c.使用 SF100或者其他烧录器将LattePanda_ifwi.bin烧录到 LattePanda Mu上 d.启动LattePanda Mu后,会很快完成启动显示SBL Logo。 这时候 SBL 并不会从屏幕和键盘进行交互,而是通过串口。在另外一台电脑上打开串口工具即可看到一个文本的Shell界面,输入 boot 命令,然后调整从USB 设备启动例如: 至此,Firmware 方面的准备已经完成。 第二步,安装 Ubuntu 以及设定【参考2】。 a. 其中需要一些时间,请耐心等待,之后进入下面这个界面。左边是直接在U盘提供的Live Linux 中工作,右边是进行安装,这里需要选择左侧按钮“Try Ubuntu” d.从左上角的 Activities 打开一个 Terminal a. 使用 lsblk列出当前的设备,LattePanda Mu 内置了 eMMC,这里是mmcblk0设备 a. 使用 sudo disk /dev/mmcblk0擦除硬盘,命令如下: sudo gdisk/dev/mmcblk0 x z y y a. 创建GPT分区 sudo gdisk /dev/mmcblk0 o y w y a. 接下来即可进行Ubuntu安装了 b. 分区需要特别处理,划分出一个500MB 的FAT32分区用于引导 a. 剩余容量减去4GB 左右,设定为 Ext4 分区 a. 最后创建一个 4GB 的分区作为 SWAP 分区 a. 接下来都选择 Continue b. 安装结束后,选择 Continue Testing a. 接下来使用 lsblk b. 输入如下命令: Mkdir root Sudo mount /dev/mmcblk0 root/ c. 插入另外的U盘其中放入三个脚本以及内容如下的 cmdline.txt echo "root=/dev/ mmcblk0 ro quiet splash" > cmdline.txt d. 运行如下批处理(其中的PEM文件来自编译SBL的代码中 )
a. 最终,拔掉U盘,即可启动 上述操作的完整视频: 这里只是简单的第一步,自行编译BIOS并且启动了X86的 Ubuntu,很多功能还没有调试,可能在使用中遇到问题(比如, X4 PCIE 支持, Audio 的支持)。如果你对性能和体积有一些要求,或者是对于BIOS定制有一些特别要求,不妨考虑 DFRobot推出的 LattePanda MU,它由一块核心板以及底板构成,厂家提供了电路图以及对应接口,可以很方便的实现定制。 参考: |
1.本文提到的代码可以在 https://gitee.com/willok/slimbootloader 下载到,由天杀提供。 2.本文“运行如下批处理(其中的PEM文件来自编译SBL的代码中 )”,可以在这里下载到 script.zip |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed