通过Mac OS X启动Hawkboard
Hawkboard是一个基于Linux的开源硬件项目,它基于与Beagleboard相同的硬件。 Hawkboard设计文件可从Hawkboard.org获得,但我希望看到它们采用更详细的许可证,以便让从事衍生工作的人更容易进行尽职调查。 (也许下周的开放硬件峰会的结果将激励更多人采用开源硬件许可证)。 Hawkboard的人们非常友好地送我一块板来试验。
嵌入式Linux Wiki有很好的启动和运行Hawkboard的说明,但它们适用于使用Linux的人。虽然我有一台虚拟机可以方便地运行Linux,但我在Mac上完成了大部分工作,所以我研究了在Mac下启动Hawkboard所需的步骤。
要使其工作,您需要在Mac上运行TFTP服务器和NFS服务器。幸运的是,当前版本的Mac OS X内置了所有功能,即使在非服务器版本的操作系统上也是如此。
设置TFTP服务器首先,下载uImage内核。这在Embedded Linux Wiki上有所描述,但是我无法使用Mac OS X NFS服务器来使用默认的uImage内核。相反,我使用了Angstrom Linux提供的uImage,并将文件重命名为uImage-Angstrom。
接下来,打开Mac OS X终端(/ Applications / Utilities / Terminal),将文件复制到/ private / tftpboot目录,然后启动tftp服务器。这方面的命令如下所示。您需要以管理用户身份登录才能运行这些命令。如果系统提示您输入密码,请键入密码(您可能需要将“〜/ Downloads / uImage-Angstrom”更改为您下载uImage的确切位置):
cd / private / tftpboot / sudo cp~ / Downloads / uImage-Angstrom。 sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
设置NFS服务器接下来,下载根文件系统。虽然这在Embedded Linux Wiki上有描述,但由于我决定使用Angstrom Linux发行版,我使用在线图像构建器来创建具有以下选项的图像:
- 机器:鹰棋
- 选项的复杂性:先进
- 基础系统:定期
- / dev manager:kernel
- 图像类型:tar.bz2
- 用户环境:控制台
返回终端,创建一个目录来保存根文件系统,并将RootFS文件解压缩到该目录中(您需要更改“random-abccd17c”以匹配您实际下载的文件):
sudo mkdir / Hawkboard cd / Hawkboard sudo tar xvfp~ / tmp / random-abccd17c-image-hawkboard.tar.bz2
接下来,编辑/ etc / exports文件,并添加如下所示的行:
/ Hawkboard -mapall = root -network NETWORK -mask MASK
您需要使用网络的正确网络地址和子网掩码替换NETWORK和MASK。例如,在我的Mac上,我使用了:
/ Hawkboard -mapall = root -network 10.0.1.0 -mask 255.255.255.0
编辑/ etc中的文件最简单的方法是使用nano或vi文本模式编辑器。你可以用nano开始 sudo nano / etc / exports
和vi sudo vi / etc / exports
.
接下来,启动NFS服务器并确保最后一个命令显示/ Hawkboard条目:
sudo nfsd启用showmount -e
加载Linux内核现在,您已准备好使用以太网将Hawkboard连接到与Mac连接的网络。如果您决定将Hawkboard通过以太网直接连接到Mac,那么这将有效,但您需要在系统偏好设置 - >网络中检查Mac的自我分配的IP地址,并在配置/ etc / exports文件时使用它(例如,如果您的Mac显示的是自定义地址169.32.23.100,则可以安全地使用169.32.23.0作为网络,使用255.255.255.0作为掩码。
您还需要从Mac进行串行连接;对于串行终端程序,我建议使用CoolTerm。由于Mac没有内置RS232端口,因此您需要一个像这样的USB-RS232适配器。您还需要一个母对母DB9零调制解调器,如Cables2Go的1英尺DB9 F / F Null调制解调器电缆。
例如,要加载我下载的uImage文件,我点击了CoolTerm的选项按钮并选择了我的USB串口(PL2303-00001004),速度为115200 bps,然后单击确定。之后,我点击了Connect,启动了Hawkboard,然后输入了这些命令 hawkboard.org>
提示:
setenv serverip 10.0.1.3 setenv ipaddr 10.0.1.201 tftp c0700000 uImage-Angstrom
您需要做三件事:将10.0.1.3替换为Mac的IP地址,将10.0.1.201替换为Hawkboard将使用的未使用的IP地址,并且(如有必要)将uImage-Angstrom替换为您的文件名复制到本指南前面的/ tftproot中。你应该看到这样的事情发生:
来自服务器10.0.1.3的TFTP;我们的IP地址是10.0.1.201文件名'uImage_v1'。加载地址:0xc0700000加载:*。########################################## #######################。 ################################################## ###############。 ################################################## ###############。 ################################################## ###############。 ################################################## ###############。 ################################################## ###### done字节转移= 1934036(1d82d4 hex)
引导内核现在,您已准备好尝试使用wiki中从NFS引导的说明来引导内核。我给了Hawkboard以下命令:
然后我用命令启动了Hawkboard bootm c0700000
,并在一两分钟内,登录提示符,并可以root身份登录(无密码):
.-------。 | | .-。 | | | -----. ----- -----。| | ---- .. ----- -----。 | | | __ | ---“| “ - | .-'| | | | | | | | | --- || - “| | | '| | | | '---' ---' - “ - '--。 | -----''----'' - '''-----' - ' - ' - ' - '| '---'The Angstrom Distribution hawkboard ttyS2 Angstrom 2010.7-test-20100909 hawkboard ttyS2 hawkboard登录: