【接上一章节明远智睿MY-IMX6-EK200 L3035测试手册(2)】 2.13 WIFI测试测试说明 MY-I.MX6 评估板使用的WIFI芯片型号为RTL8188EUS。 测试方法(test method) 1)加载WIFI模块驱动
示例命令如下:
$ insmod /lib/modules/wifi/wlan.ko 2)生成WIFI的config文件
参考命令如下:
$ wpa_passphrase MYZR_TP-LINK myzrd2302 > /etc/wpa_supplicant.conf
这条命令指定的WIFI名称是和密码是“MYZR_TP-LINK myzrd2302”,需要替换成自己可连接的WIFI名称和密码。 3)连接WIFI网络
示例命令如下:
$ wpa_supplicant -B –c /etc/wpa_supplicant.conf -iwlan0 4)自动获取IP
示例命令如下:
$ udhcpc -i wlan0
注意:这里需要确认所在的WIFI网络已启用DHCP功能。
5)测试WIFI网络连接
示例命令如下:
$ ping -I wlan0 www.baidu.com -c 2
6)测试结果
执行步骤5能ping通则表示WIFI模块工作正常。 附图2.14 IPU测试测试说明整个IPU测试过程完成需要十几分钟。 测试方法 1)执行测试
进入测试程序所在目录(一定要进入测试程序所在目录才能正常执行测试脚本)
$ cd /unit_tests/
执行测试脚本
$ ./autorun-ipu.sh
2)测试结果
在整个测试过程中,可以看到显示屏显示的内容在不停的变化。
测试完成后,在终端上可以看到类似如下信息:
test stop at Thu Jan 1 00:33:38 UTC 1970 附图2.15 GPU测试测试说明 测试具体内容请跟踪 /unit_tests/gpu.sh 文件。 测试方法 1)执行测试
进入测试程序所在目录(一定要进入测试程序所在目录才能正常执行测试脚本)
$ cd /unit_tests/
* 执行测试脚本
$ ./gpu.sh
2)测试过程
在整个测试过程中,可以看到显示屏显示的内容在不停的变化。
3)退出测试
终端输出“press ESC to escape...”,按ESC可退出测试。 附图2.16 VPU测试测试说明 测试过程将使用VPU解码视频文件并输出到显示设备。 测试方法(test method) 1)执行测试
进入测试程序所在目录(一定要进入测试程序所在目录才能正常执行测试脚本)
$ cd /unit_tests/
* 执行测试脚本
$ ./autorun-vpu.sh
2)测试过程
在整个测试过程中,从显示屏上可以看到VPU解码的视频。 附图3 显示功能测试 · 特别说明: 当U-Boot 版本u-boot-2016.03 svn315及以上 内核 版本 linux-3.0.35 svn31及以上 linux-3.14.52 svn369及以上 linux-3.14.52 svn368及以上 烧录工具 MfgTool-MYIMX6A9-L* svn181及以上 请参考《MY-IMX6-A9系列:显示功能测试》进行测试 · 一般情况下则按照如下方法测试 说明:每项显示功能测试都需要重启系统进入到u-boot命令行,输入命令并按确认键。
示例如下: 3.1 单屏显示 说明:输入命令并按确定键,观察系统启动过程中显示屏的显示内容,即可看到Linux **。 LVDS1 将显示屏排线插入LVDS1(位于底板正面“J22”位置,丝印名称为“LVDS1”),启动系统,进入u-boot命令行,输入下面命令并按确定键:
setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm LVDS0 将显示屏排线插入LVDS0(位于底板正面“J24”位置,丝印名称为“LVDS0”),运行系统进入u-boot命令行,输入下面命令并按确定键:
setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 ldb=sin0; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm HDMI setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm
提示:HDMI显示在启动过程中屏幕无Linux **显示。进入系统后可以使用gplay命令播放视频,可以看到视频转出在显示屏上。
视频播放命令示例如下:
$ gplay /unit_tests/akiyo.mp4 RGB 进入u-boot命令行,输入下面命令并按确定键:
setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=lcd,SEIKO-WVGA,if=RGB24; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm 3.2 双屏同步骤显示(dual screens synchronous display) 说明:输入命令并按确定键,在内核启动过程中可以看到两个屏幕都显示Linux **,并且其它对显示屏的操作也会同样显示在两个屏幕上。 LVDS1+LVDS0同步显示(LVDS1+LVDS0 synchronous display) setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 ldb=dul0 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm 3.3 双屏异步显示会用到的测试命令· 打开主显示屏的背光 $ echo 0 > /sys/class/graphics/fb0/blank · 打开第2显示屏的背光 $ echo 0 > /sys/class/graphics/fb2/blank · 播放指定的视频文件到视频设备(这里video17关联到主显示屏) $ gst-launch playbin2 uri=file:///unit_tests/akiyo.mp4 \
video-sink="mfw_v4lsink device=/dev/video17" · 播放指定的视频文件到视频设备(这里video18关联到第2显示屏) $ gst-launch playbin2 uri=file:///unit_tests/akiyo.mp4 \
video-sink="mfw_v4lsink device=/dev/video18" 测试方法说明1)进入u-boot命令行输入命令并按确认键待系统启动完成。
示例如下:
2)执行命令打开对应显示屏的背光。
示例如下:
3)执行视频播放命令播放视频到显示屏。
示例如下:
说明:双屏异步显示模式下,系统启动后第2显示屏的背光默认是关闭的,所以需要执行步骤2)。 LVDS1作为主屏· LVDS1+LVDS0双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm · LVDS1+RGB双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 video=mxcfb1:dev=lcd, SEIKO-WVGA,if=RGB24; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm · LVDS1+HDMI双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm LVDS0作为主屏· LVDS0+LVDS1双屏异步显示: setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 ldb=sep0 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm · LVDS0+RGB双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 ldb=sin0 video=mxcfb1:dev=lcd,SEIKO-WVGA,if=RGB24; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm · LVDS0+HDMI双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=ldb,LDB-1024X600,if=RGB666 ldb=sin0 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm RGB作为主屏· RGB+LVDS1双屏异步显示: setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=lcd,SEIKO-WVGA,if=RGB24 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm · RGB+LVDS0双屏异步显示: setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=lcd,SEIKO-WVGA,if=RGB24 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666 ldb=sin0; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm HDMI作为主屏· HDMI+LVDS1双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm · HDMI+LVDS0双屏异步显示 setenv bootargs console=ttymxc0,115200 ip=none root=/dev/mmcblk0p1 rootwait video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666 ldb=sin0; mmc dev 2; mmc read 0x10800000 0x800 0x2000; bootm 4 关于环境变量的说明 MY-IMX6系列开发板环境变量的特点 MY-IMX6 系列开发板的环境变量具有以下特点:
1. 从引导内核的介质来区说,有:eMMC、网络(tftp)。
2. 从引导文件系统的介质来说,有:eMMC、网络(NFS)。
3. 从显示设备的配置来说,有 LVDS0、LVDS1、HDMI、RGB,以及双屏不同的组合。
这时候,如果环境变量把上面三种都组合,会有不少于60条的 bootcmd 环境变量,所以我们对环境变量进行了抽象分离及重组。
再由于 bootargs 环境变量里包括 console、video、ip、root 等其它参数,所以每一种 bootcmd 对 bootargs 有很强的依赖性,以及不同的 bootcmd 之间的差别较大。无疑,bootargs 是不能通用的。 bootcmd_xxx 环境变量的流程 我们对 bootcmd 及 bootargs 按引导设备进行了抽象,抽象后 bootcmd_xxx 的流程是这样的:
1. 通过 bootargs_base 重设 bootargs,这样确保 bootargs 中不存在冲突;
2. 通过 bootargs_xxx 在 bootargs 后面添加与引导设备对应的参数;
再就 bootcmd_xxx 中“;”之后的内容就是大家很容易理解的了。 环境变量的正确设置方法 关于对环境变量正确设置的方法:
首先需要注意的是,正常情况下直接对 bootargs 设置是会无效的,因为 bootargs_base 会重设 bootargs。
需要把 bootargs 的设置写到 bootargs_base 的命令当中。
bootargs_base 所包含的内容应当只是 console 和 video,再其它的参数应当写到 bootargs_mmc 或 bootcmd_tftp 或 bootargs_nfs 中。 环境变量的正确设置方法举例如需要设置“HDMI+LVDS1双屏异步显示”并保存环境变量,则:
1. setenv bootargs_base 'setenv bootargs console=ttymxc0,115200 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-1024X600,if=RGB666'
2. saveenv
上面两条命令即可。
|