今天,完成了OMAP35X EVM 下,Graphics SDK的实现。由于板子买回来,自带的只有SDK,根本没有涉及到显卡,DSP,ISP(视频处理器)的相关功能。对于这个芯片来说,不用这些功能简直是暴殄天物。
好在TI把GDK(包含SGX显卡的驱动和OPENGL的支持),DVSDK(摄像头,视频处理),以及DSP Link(双核通信)的源代码都开放了。大家可以自己去下载。提供几个网址下载各种资源,过期了可能就没了:
http://code.google.com/p/omapminiboard/downloads/list
http://software-dl.ti.com/dsps/dsps_registered_sw/sdo_sb/targetcontent/
下面言归正传,介绍我今天的成果:
一、因为GDK,DVSDK等等每个源码包里面都提供了一个文件系统,所以要是每一个文件系统我们都进行烧录的话,十分的麻烦,不过UBOOT的功能是强大的。我们可以利用UBOOT,修改linux启动参数,让其直接用NFS挂载根文件系统。
1.使用NFS,我们首先要是自己的PC(我的是fedora)有NFS功能。
1)先关闭防火墙
2)在网络里设置IP,网关等,使其和下位机匹配
3)在服务设置->NFS 下设置NFS共享的目录。
或者直接修改/etc/exports 文件
4)在服务中,启动nfs。
注意这里要是有nfslock选项的话,要禁用这个服务,我开始的时候没注意这
个,结果怎么都挂不上。
测试nfs有没有好:自己挂自己
mount 192.168.1.100:/root/workdir/filesys /mnt
成功的话,就说明NFS打通了,我这里NFS的设置不是很详细,大家自己参考自己linux的设置方法,大同小异。
2.进入minicom,超级中断,启动板子,进入Uboot 命令行
注意:这时不能用windows的超级中断,因为你的NFS服务在linux下
1)将GDK提供的文件系统copy到/root/workdir/filesys 目录下,解压缩
2)在Uboot中设置环境变量:
setenv bootargs_nfs mem="128M" console="ttyS0",115200n8 noinitrd rw root="/dev/nfs" nfsroot="/mnt/nfs",nolock
setenv addip setenv bootargs \$(bootargs) ip=\$(ipaddr):\$(serverip):\$(gatewayip):\$(netmask):\$(hostname):eth0:on
setenv boot_nfs run get_kernel\; setenv bootargs \$(bootargs_nfs)\; run addip\; bootm 0x80000000
run boot_nfs
成功的话,板子就不会跑nand上的文件系统了,而是直接自己PC上的。
3. 接下来就是测试我们的程序了:
1)cd /etc/init.d
2)./rc.pvr start //它会在内核自动插入各种驱动
3)测试自带的OPENGL的显示3D动画的demo,如下:
用户539229 2009-10-30 21:10