HCL:Khadas Vim
由 Khadas VIM 由 深圳韦森 制造,是一款单板计算机。
技术数据
- Amlogic S905X SoC
- 4x ARM Cortex-A53 CPU
- ARM Mali-450 GPU
- 2 GB RAM
- 8/16 GB eMMC
- 40-pin GPIO 连接器(不兼容 Raspberry Pi)
手动安装
U-Boot 安装
Khadas VIM 板自版本 v2018.01-rc1 起在官方 U-Boot 中受支持。当前版本 (v2019.01) 支持从 eMMC 和 SD 卡启动。
有一个 u-boot-khadas-vim 包可用。
为了能够在 OBS 中创建可引导镜像,应该修改 GitHub 上可用的 aml_encrypt_gxb 工具以支持 S905X SoC。
请按照 此处 可用的官方 README 来生成 U-Boot 镜像。在 GitHub 上也提供了一组工具,以简化 U-Boot 编译/生成。
请注意,您的 SD 卡或 eMMC 必须使用 MBR 分区 (而不是 GPT)。
GRUB2 与 U-Boot 中可用的 EFI 引导堆栈一起工作。
使用标准 DVD 安装 openSUSE Tumbleweed
使用 TW 以及 U-Boot 中实现的 EFI 引导协议,可以直接从 DVD 镜像在 Khadas VIM 上安装。
注意本指南假定
- 您已经在您的 PC 上安装了 Leap/Tumbleweed 操作系统
- 您熟悉 openSUSE 安装过程
要引导 DVD,有多种方法
- 将 ISO 刻录到 USB 密钥
- 通过网络引导 (PXE) 引导 ISO
对于每种情况,仍然需要使用 SD 卡或 USB 密钥来加载 U-Boot (SD 卡是首选方式)。
将使用 USB 密钥方法 (U-Boot 在 SD 卡上)。
通过 HDMI 的图形/文本模式安装部分有效,但可能会发生一些问题,因此如果可能,建议使用文本模式 ssh 安装。 此时,U-Boot shell 只能通过串行控制台访问。
注意: 要能够从 eMMC 执行 U-Boot,您需要使用 MBR 磁盘方案而不是默认的 GPT 方案。 为此,您“只需”执行自定义磁盘配置。 或者,您可以使用一个小 SD 卡并将 U-Boot 放在上面,S905X SoC 如果在 SPI/eMMC 上未找到引导程序,将从其启动。 因此,使用这种方法,您可以保留默认的 GPT 分区方案。
- 下载 Tumbleweed ISO 并将其“刻录”到 USB 密钥上 - 警告 设备上的所有先前数据都将被丢失!
# dd if=[image].iso of=/dev/<usb_key> bs=4M iflag=direct,fullblock oflag=direct
- 将 SD 卡和 USB 密钥插入您的板
- 通过串行端口将板连接到您的 PC (推荐;需要 USB-TTL 串行电缆)
- 将板连接到您的显示器 (通过 DVI/HDMI,如果您使用串行端口则可选)
- 打开板
- 按下一个键停止 U-boot 过程
- 强制从 USB 密钥启动
Hit any key to stop autoboot: 0 => run usb_boot
- 需要为安装设置一些参数,因此您必须编辑 GRUB 中的引导选项并添加以下选项
earlycon=meson,0xc81004c0 console=ttyAML0,115200 ssh=1 sshpassword=linux
- 一些可选参数也很有用
splash=verbose # can be useful to have all systemd messages on the console
- 您的板现在正在引导安装 DVD!
- 通过 SSH 连接到板并执行安装程序 (DISPLAY= 用于强制 YaST 使用文本模式)
# DISPLAY= yast.ssh
- 根据需要调整您的磁盘配置 (GPT 与 MBR),然后预计正常安装!
- 如果您想将 U-Boot 安装到 eMMC 上,请在重新启动前安装结束时暂停安装 (停止 选项),然后按照 在 eMMC 上安装 U-Boot 过程操作
注意: 安装后,串行控制台默认重置为 ttyAMA0,因此您需要在 /etc/defaut/grub 中将其再次设置为 ttyAML0 (不要忘记重新生成 grub.cfg 文件!)。
在 eMMC 上安装 U-Boot
在操作系统安装后,如果您想将 U-Boot 也安装到 eMMC 上,只需将 u-boot.bin 文件刻录到“MBR 间隙”中
dd if=u-boot.bin of=/dev/mmcblk1 bs=512 seek=1
然后重新启动您的板,而无需任何 SD 卡/USB 密钥。 U-Boot 应该直接从 eMMC 加载。 之后,无法从 SD 卡启动!
如果您首先想清除先前安装的 U-Boot,或者如果您想强制从 SD 卡启动,您可以擦除“MBR 间隙”
dd if=/dev/zero of=/dev/mmcblk1 bs=512 seek=1 count=2047