赞
踩
一言难尽,踩了不少坑,当时只是想学习驱动开发,发现必须要将第三篇系统移植弄好才可以学习后面驱动,现将移植好的文件分享出来:
仓库:https://gitee.com/wangyoujie11/imx6u-ll-uboot-kernel-rootfs.git
如果直接使用我移植好的四大组件,只需要完成以下配置
从emmc启动将红色拨码开关打到emmc启动,然后复位板子就可以正常进入了boot命令,先输入ls mmc 1:1查看是否是图中的信息,没问题就输入环境变量:
=>setenv bootargs 'console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw
=>setenv bootcmd ‘mmc dev 1;fatload mmc 1:1 80800000 zImage;fatload mmc 1:1 83000000 imx6ull-alientek-emmc.dtb;bootz 80800000-83000000;’
从SD启动将红色拨码开关打到SD启动。首先准备工作alientek-linux和alientek-uboot和alientek-rootfs下载到本地ubuntu下解压如下:
链接:https://pan.baidu.com/s/18e-UhGz_HCEF9-Z2ADEjlg
提取码:wjwj
7. 确定板子的信息是
首先将板子通过串口等方法连接电脑,启动板子,进入到boot命令下:配置板子的信息
# 设置开发板ip
=> setenv ipaddr 192.168.104.90
# 设置子网掩码
=> setenv netmask 255.255.255.0
# 设置网关
=> setenv gatewayip 192.168.104.1
# 设置服务器ip
=> setenv serverip 192.168.104.168
# 设置网卡1
=> setenv ethaddr b8:ae:1d:01:00:00
# 保存设置
=> saveenv
然后使用NFS挂载文件系统:开发板网线连接电脑,然后启动开发板进入uboot模式设置启动参数bootargs
```powershell
# 设置启动参数bootargs
# nfsroot后的参数为Ubuntu的nfs文件夹路径;格式为:nfsroot=NFS服务器IP:文件系统的绝对路径.
# ip后的参数为开发板网络信息:ip=开发板IP:服务器IP:网关,子网掩码::eth0:off.
setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs rw nfsroot=192.168.104.88:/home/wj/linux/nfs/rootfs
ip=192.168.104.90:192.168.104.88:192.168.104.1:255.255.255.0::eth0:off’
#设置从tftp网络加载zImage和xxx.dtb文件
setenv bootcmd 'tftp 80800000 zImage;tftp 83000000 imx6ull-alientek-emmc.dtb;bootz 80800000 - 83000000'
# 保存
=> saveenv
Saving Environment to MMC... Writing to MMC(0)... OK
# 复位重启
=> reset
重启板子之后就会出现:
然后在自己的ubuntu下找到一个编译好的驱动例程,使用如下命令就可以将程序拷贝到开发板的/lib/modules/4.1.15/路径下
sudo cp chrdevbase.ko chrdevbaseApp /home/wj/linux/nfs/rootfs/lib/modules/4.1.15/ -f
至此,所有的移植就完成了,可以愉快的驱动开发了
使用02_led驱动例程测试:
挂载之后就行点灯操作:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。