omapl138的DVSDK安装与使用(二)

来源:互联网 发布:房地产项目总 软件 编辑:程序博客网 时间:2024/06/06 04:46

在  omapl138的DVSDK安装与使用(一)中,说在运行setup.sh的时候最后生成了一个minicom的脚本,文件名叫做setup_uimage-tftp_fs-nfs.minicom。

这个脚本打开后看代码,会发现其实是对uboot的配置,

本人对uboot的配置还处于混沌状态,只能对其中一部分的配置有所了解,幸好有这个脚本,让我暂时不用仔细研究uboot了。不过以后还是要弄懂的。

先说下minicom加载脚本的方法:

启用minicom,ctrl+a,再按o,选择c,然后输入脚本名称及路径。

建议先cd到脚本目录之后再开启minicom这样可以不输入路径。

加载了setup_uimage-tftp_fs-nfs.minicom脚本之后,将串口、网线都连接到omapl138上并打开电源。我这里直接将目标板和主机使用一根网线连接。

脚本里的配置会自动写入uboot中,并且自动启动目标板。

如果不出意外, 目标板的启动会卡在:发送dhcp请求这里。

有以下三种解决办法:
1:打开ubuntu的dhcp服务器功能。(实验成功)
2:重新编译内核,在配置时不选择dhcp功能(,因为要重新编译内核,所以未实验过)
3:配置uboot 的ip 为ip=<clinet-ip>:::::eth0:off 注意冒号的个数(实验成功)。命令为:setenv ip <clinet-ip>:::::eth0:off

这里讲一下如何打开ubuntu的dhcp服务器功能(此处参考网上资料,经过自己实践和补充)。

打开ubuntu dhcp服务器的方法如下:
安装软件包
sudo apt-get install dhcp3-server
修改配置文件
(1)选择网卡用于监听DHCP服务[默认 监听的是eth0]可以通过编辑
/etc/default/dhcp3-server这个文件来改变这个默认值。
先备份:sudo cp /etc/default/dhcp3-server /etc/default/dhcp3-server_backup
然后修改权限:sudo chmod 646 /etc/default/dhcp3-server

先用ifconfig查看你的网卡,一般是eth0
sudo gedit /etc/default/dhcp3-server在 INTERFACES="eth0"中改成需要的网卡并保存。(一般只有一个网卡的不用改)
(2)修改/etc/dhcp3/dhcpd.conf文件
先备份
sudo cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_backup
更改权限sudo chmod 646 /etc/dhcp3/dhcpd.conf
打开sudo gedit /etc/dhcp3/dhcpd.conf
搜寻下列文字
# option definitions common to all supported networks...
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600;
max-lease-time 7200;
...
用下面这几行取代 (即将下列几行注释掉)
# option definitions common to all supported networks...
#option domain-name "example.org";
#option domain-name-servers ns1.example.org, ns2.example.org;
#default-lease-time 600;
#max-lease-time 7200;


然后
搜寻这一段文字 
# A slightly different configuration for an internal subnet.
#subnet 10.5.5.0 netmask 255.255.255.224 {
# range 10.5.5.26 10.5.5.30;
# option domain-name-servers ns1.internal.example.org;
# option domain-name "internal.example.org";
# option routers 10.5.5.1;
# option broadcast-address 10.5.5.31;
# default-lease-time 600;
# max-lease-time 7200;
#}
用下面这几行取代 (即更改ip,子网掩码,分配的ip段等等,其中关于dns的几行刻意注释掉,下列ip均为本机的设置)
# A slightly different configuration for an internal subnet.
ssubnet 202.200.84.0 netmask 255.255.255.0 {
range 202.200.84.170 202.200.84.190;
# option domain-name-servers 202.200.84.180;
# option domain-name "main";
# option routers 202.200.84.180;
option broadcast-address 202.200.84.255;
default-lease-time 6000;
max-lease-time 7200;
}
备注:默认default-lease-time 600标识600秒,太短,可以适当延长
保存编辑过的文件
重启:  sudo /etc/init.d/dhcp3-server restart
这回,打开minicom并且打开目标板电源。不出意外的话。已经可以进入目标板进行操作了。

我将DVSDK里的例子都跑了一遍。


配置uboot ip的方法:
其格式为ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>

client-ip:
你正在使用的这块板子,你要为它设置的ip
server-ip:
提供nfs服务的服务器的ip地址。如不需要NFS服务于板子,则此项可以空置
gw-ip:
网关的ip地址,如果nfs与目标板在同一个网段内,则此项可以空置
netmask:
子网掩码,如此项为空,则子网掩码为默认值255.255.255.0
hostname:
你希望给目标板设置的主机名,在linux的shell中的如bash,命令行最开始有一个形如 blacksword@laptop2:~ $ 这样的一个提示符,blacksword指当前的用户,而laptop2就是一个hostname.此项可以留空
device:
如果目标板上仅一个网卡,且只接了一个PHY,同时电路的设计没有将PHY拉出两个地址来,则此项为空。 如果不指有一个网卡,则可以指定要设置的ip地址是作用于哪一个网卡的。 如指定给第一块网卡,则该参数为eth0. 第二块为eth1,依此类推。
autoconf:
自动配置未明确指定参数的方式,可以是dhcp, rarp, bootp。如果不希望使用自动配置则可以使用off值来关闭 autoconf参数可以独立作用于ip参数,如ip=dhcp即表示由dhcp服务器给内核的ip参数提供所有数据。 ip=off则表示所有参数都不配置,留待系统启动进行配置。
最稳妥而简化的指定静态ip的方法为 ip=<clinet-ip>:::::eth0:off 请注意中间冒号的个数。其他各项可以根据自己的实际情况来指定相应的值。