完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
iTOP-iMX6 开发板烧写好之后,默认是 android 系统 9.7 寸屏幕的系统参数和屏幕参数。如下图。本文档主要介绍如何修改默认启动参数。
70.1 重要的环境变量 比较重要的环境变量或者说经常使用的环境变量,已经在上图中的红色方框中。主要是:bootsystem、lcdtype 和 bootargs。这些参数都可以在 uboot 源码中进行设置。具体文件为:“iTOP-iMX6_android4.4.2/bootable/bootloader/uboot-imx/lib_arm/board.c”文件。 |
|
|
|
70.2 默认启动系统设置
默认启动系统参数是:bootsystem。打开“board.c”文件。搜索关键词“bootsystem”,找到如下代码: 通过修改“p = “android”;”语句,可以修改默认的启动系统参数。下面的程序中,可以看见用到了“boot_system_flags”标志位。搜索该标志位,可以找到如下内容。 70.3 默认屏幕设置 默认屏幕参数是:lcdtype。打开“board.c”文件。搜索关键词“lcdtype”。找到如下代码。 通过修改“p = “9.7”;”语句,可以修改默认屏幕设置。在上面截图的程序中可以看到,通过”sprintf();”函数设置了相应屏幕的“displayArgs”值。 70.4 认 默认 bootargs 参数设置 打开“board.c”文件。搜索关键词“bootargs”。找到如下代码。 可以在此处修改“bootargs”参数设置。 上面介绍到的详细代码如下: { p = getenv(“bootsystem”); if (NULL == p) { printf(“*** Warning use default bootsystem:android ***/n”); p = “android”; setenv(“bootsystem”, (char *)p); saveenv(); } printf(“Boot system :%s/n”, p); if(!strcmp(p, “android”)) { boot_system_flags = 0; } else if(!strcmp(p, “qt”)) { boot_system_flags = 1; } else if(!strcmp(p, “ubuntu”)) { boot_system_flags = 2; } p = getenv(“lcdtype”); if (NULL == p) { printf(“*** Warning use default lcdtype:9.7 ***/n”); p = “9.7”; setenv(“lcdtype”, (char *)p); saveenv(); } printf(“LCD type:%s/n”, p); if(!strcmp(p, “9.7”)) { lcd_type = 0; //sprintf(displayArgs, “video=mxcfb0:dev=ldb,LDB-XGA,bpp=32 video=mxcfb1《img sr smiliei borde al》ff video=mxcfb2《img sr smiliei borde al》ff fbmem=30M”); sprintf(displayArgs, “video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666,bpp=32 ldb=sin1 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb2《img sr smiliei borde al》ff fbmem=48M”); } else if(!strcmp(p, “7.0”)) { lcd_type = 1; //sprintf(displayArgs, “video=mxcfb0:dev=ldb,LDB-7inch,bpp=32 video=mxcfb1《img sr smiliei borde al》ff video=mxcfb2《img sr smiliei borde al》ff fbmem=30M”); sprintf(displayArgs, “video=mxcfb0:dev=ldb,LDB-7inch,if=RGB666,bpp=32 ldb=sin1 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb2《img sr smiliei borde al》ff fbmem=48M”); } else if(!strcmp(p, “4.3”)) { lcd_type = 2; //sprintf(displayArgs, “video=mxcfb0:dev=ldb,bpp=32 video=mxcfb1《img sr smiliei borde al》ff video=mxcfb2《img sr smiliei borde al》ff fbmem=10M”); sprintf(displayArgs, “video=mxcfb0:dev=lcd,VGA_480272,if=RGB24,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb2《img sr smiliei borde al》ff fbmem=48M”); } /* add by cym 20170814 */ else if(!strcmp(p, “1024x600”)) { lcd_type = 3; //sprintf(displayArgs, “video=mxcfb0:dev=ldb,bpp=32 video=mxcfb1《img sr smiliei borde al》ff video=mxcfb2:off fbmem=10M”); sprintf(displayArgs, “video=mxcfb0:dev=lcd,VGA_1024600,if=RGB24,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb2:off fbmem=48M”); } /* end add */ else if(!strcmp(p, “hdmi”)) { sprintf(displayArgs, “video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=48M”); } else { sprintf(displayArgs, “video=mxcfb0:dev=ldb,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=10M”); } if(0 == boot_system_flags)//Android { sprintf(bootargs, “console=ttymxc2,115200 init=/init %s vmalloc=400M androidboot.console=ttymxc2 androidboot.hardware=freescale androidboot.serialno=1a0d39d4e3013411”, displayArgs); // setenv(“bootargs”, bootargs); // sprintf(bootargs, “console=NULL init=/init %s vmalloc=400M androidboot.console=NULL androidboot.hardware=freescale androidboot.serialno=1a0d39d4e3013411”, displayArgs); setenv(“bootargs”, bootargs); p = getenv(“bootcmd”); if((p == NULL) || (strstr(p, “booti mmc3”)) || (strstr(p, “mmc dev 3; mmc read 0x10800000 0x800 0x3000; bootm”))) { setenv(“bootcmd”, “booti mmc3”); } } else if(1 == boot_system_flags)//QT { sprintf(bootargs, “console=ttymxc0,115200 %s root=/dev/mmcblk0p1 rootwait”, displayArgs); setenv(“bootargs”, bootargs); p = getenv(“bootcmd”); if((p == NULL) || (strstr(p, “booti mmc3”)) || (strstr(p, “mmc dev 3; mmc read 0x10800000 0x800 0x3000; bootm”))) { setenv(“bootcmd”, “mmc dev 3; mmc read 0x10800000 0x800 0x3000; bootm”); } } else if(2 == boot_system_flags)//Ubuntu { sprintf(bootargs, “console=ttymxc0,115200 %s root=/dev/mmcblk0p1 rootwait bootsystem=%s”, displayArgs, getenv(“bootsystem”)); setenv(“bootargs”, bootargs); p = getenv(“bootcmd”); if((p == NULL) || (strstr(p, “booti mmc3”)) || (strstr(p, “mmc dev 3; mmc read 0x10800000 0x800 0x3000; bootm”))) { setenv(“bootcmd”, “mmc dev 3; mmc read 0x10800000 0x800 0x3000; bootm”); } } } |
|
|
|
只有小组成员才能发言,加入小组>>
495 浏览 0 评论
1030 浏览 1 评论
2411 浏览 5 评论
2733 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2550 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
586浏览 9评论
588浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
697浏览 6评论
564浏览 5评论
604浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-30 05:17 , Processed in 0.907965 second(s), Total 80, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号