项目场景:

在眺望电子TW-IMX6DL-EVM开发板上开机Logo默认是编译进内核的,更换起来很不方便,通过改写内核源码,可以实现应用层直接更换内核Logo。在此基础上,本文介绍通过两种方式在应用层更换开机Logo。

编译环境及开发包: 主机:ubuntu18.04
交叉编译器:arm-linux-gnueabihf-gcc
QT5.12.8:qt-everywhere-opensource-src-5.12.8
开发板:TW-IMX6DL-EVM
Linux:Linux-4.1.15

注意:本文章的所有命令涉及到的路径均为眺望电子官方环境路径,需根据自身实际环境改变。本文所演示的平台来自于眺望电子 iMX6 ARM嵌入式平台,这是一个基于NXP iMX6 ARM处理器,支持单核/双核Cortex-A9的核心板。


解决方案:

1.源码修改

1.1 u-boot修改

修改include/configs/mx6sabre_common.h后重新编译uboot。
目录:include/configs/mx6sabre_common.h
添加"loadlogo=mmc read 0x15000000 0x1000 0x2800;\0" \

新增

#define CONFIG_BOOTCOMMAND \
"mmc dev ${mmcdev};" \
"if mmc rescan; then " \
"run loadlogo; " \ /* 新增 */
"if run loadimage; then " \
"run mmcboot; " \
"else " \

1.2 kernel修改

修改内核源码drivers/video/logo/Kconfig,在最后新加一个LOGO_LINUX_CUSTOM_CLUT224的配置选项:

/* 在如下配置 */
config LOGO_LINUX_CUSTOM_CLUT224
bool "Custom 224-color linux logo"
default yendif # LOGO

将附件中的src/kernel/logo.c替换掉内核源码drivers/video/logo/logo.c,在然后重新编译内核。配置内核时,需要去掉logo路径下的其它选项,只保留Custom 224-color linux logo这一个选项。

然后,重新烧写生成的固件。根据芯片的类型,可以选择附件中image目录下的现有固件进行烧写测试。

2.图片格式修改

2.1 JPG格式图片修改方法

从网络上先下载一张JPG格式图片,注意图片分辨率最好和显示屏最佳分辨率保持一致。将附件解压到虚拟机,同时将图片放在解压后的Tools\jpgburn,如图所示。

执行目录中的makelogo.sh脚本,成功后将在burnlogo文件夹下生成mylogo.bin文件。如图所示。

该文件即为可以直接进行烧写的图像二进制文件。注意:执行脚本过程中可能报错,需要安装相关的图像处理工具。

$ sudo apt-get install netpbm
$ sudo apt-get install imagemagick

将生成的mylogo.bin文件和同一目录下的burnlogo.sh文件拷贝到开发板同一目录,执行burnlogo.sh脚本,烧写图像到emmc,重启后即可看到效果。

注意:loadlogo=mmc read 0x15000000 0x1000 0x2800;\0"
如果从emmc的0x1000读取logo,则需要修改burnlogo.sh中的seek,如下0x1000对应十进制4096

dd if=/dev/zero of=/dev/mmcblk3 bs=512 seek=4096 count=16384
dd if=mylogo.bin of=/dev/mmcblk3 bs=512 seek=4096
sync

2.2 BMP格式图片修改方法

因为Logo图片中所使用的颜色数不能超过224种,如果超过将无法正常显示,因此我们需要制作符合要求的图像。需要256 色位图的 bmp图片
 将成功保存的图片下载到开发板,使用附件中Tools\bmpburnbmpburn.sh脚本文件进行烧写。(注意:脚本中默认图像文件名为mylogo.bmp,如果不一致需要修改脚本文件。)重启后即可看到实际效果。
  内核默认设置成自动读取通过方式1或者方式2烧写进去的图像文件作为开机Logo,如果没有进行烧写,将会读取原来默认的小企鹅图标作为开机Logo。

NXP i.MX6 linux应用层替换开机logo相关推荐

  1. linux内核开机显示企鹅logo,批改linux内核kernel开机logo(小企鹅)

    修改linux内核kernel开机logo(小企鹅) 修改linux内核kernel的开机图片(原为小企鹅图片). 转载请注明出处:http://blog.csdn.net/wang_zheng_ka ...

  2. 制作Linux嵌入式系统开机LOGO(图片)

    内核:linux-2.6.22.6 ubuntu:Ubuntu 9.10 开发板: JZ2440(方法通用,不局限于JZ2440) 目的: JZ2440开机logo默认是一只可爱的小企鹅.我们把它替换 ...

  3. Linux内核启动去掉企鹅,修改linux内核kernel开机logo(小企鹅)

    修改linux内核kernel的开机图片(原为小企鹅图片). 转载请注明出处:http://blog.csdn.net/wang_zheng_kai 导航制导与控制实验室 2014年12月10日 本文 ...

  4. 去掉linux开关机图片,在Deepin Linux系统下去掉NVIDIA开机Logo的方法

    要实现在deepin Linux或其他Linux系统下去掉NVIDIA开机Logo非常的简单,只需要两步就可以了,可以运用命令操作,也可手动操作.安装NVIDIA请参考在deepin系统中安装英伟达N ...

  5. 高通平台android kernel 开机logo显示和传统linux一样

     由于高通8k平台lk下只有2s多点 故直接在kernel显示logo,这篇文章转载过来制作linux logo,其实这个当时学习就会,只不过忘记了.在这里重提一下ubuntu下的GIMP图片工具 ...

  6. 高通平台android kernel 开机logo显示和传统linux一样 .

    由于高通8k平台lk下只有2s多点 故直接在kernel显示logo,这篇文章转载过来制作linux logo,其实这个当时学习就会,只不过忘记了.在这里重提一下ubuntu下的GIMP图片工具真的很 ...

  7. Linux 开机Logo制作

    Linux 开机Logo制作 [从制作logo到LCD显示或者VGA显示logo] 1.制作logo的方法: 首先选择一个自己喜欢的图片,然后通过GIMP软件将该图片保存为.png格式, 变换方式这个 ...

  8. 修改linux开机logo

    修改linux开机logo 2014年12月03日 14:46:16 zhuangtim1987 阅读数:1257更多 个人分类: Linux Driver 编者:linux的开机默认logo是一只可 ...

  9. 制作Linux内核开机Logo

    一.前言 有关Linux开机Logo的制作,网上已经有很多例子了,方法都差不多.因为以前用的LCD屏幕分辨率为320*240,现在自己配置了一个480*640的竖屏当横屏用,为测试驱动是否配置成功,我 ...

最新文章

  1. Google Capture The Flag 2018 (Quals) - Beginner's Quest - Reverse - Firmware
  2. 《HTML 5与CSS 3权威指南 》 (第2版·下册)——第19章 19.3.2
  3. JPQL设置自增长、只读、文本类型等的注解
  4. [Python图像处理] 三十三.图像各种特效处理及原理万字详解(毛玻璃、浮雕、素描、怀旧、流年、滤镜等)
  5. Zookeeper基于Java访问-权限
  6. rem布局 html,移动端h5之rem布局/px2rem
  7. 第三次scrum冲刺
  8. osx+配置+php扩展,Mac系统升级到10.9(mavericks)时安装php扩展问题解决
  9. c52单片机控制l298n步进电机角度_【设计图文】单片机实现的步进电机控制系统(开题报告+论文+文献综述+外文翻译+DWG图纸)...
  10. Microsoft.System.Center.Operations.Manager.2007 中文版完整光盘下载地址
  11. 控制层@Value注解取不到值
  12. 如何在java输入_怎么在java中编写输入语句?
  13. 【论文】本周论文推荐(迁移学习、阅读理解、对话系统、图神经网络、对抗生成网络等)...
  14. 药品质量不合格统计机器人
  15. 阿里巴巴容器技术 Pouch 解析
  16. 4-5. do...while循环
  17. 免费版xshell下载地址
  18. 从MDK分散加载文件学习STM32启动流程
  19. 设计 - 收藏集 - 掘金
  20. Flutter 路由源码解析

热门文章

  1. Idea多行注释快捷键
  2. autojump env: python: No such file or directory
  3. 【Unity】【ARPG开发日志】【二】【05】骨骼变形(octopus现象)的原因及修改技巧
  4. python开发工程师必刷题型(长期更新)
  5. 互联网不再迷恋北上广
  6. 老鼠走迷宫(递归实现)
  7. (可能是)Magic Leap AR眼镜最技术的评测 | 同行相评
  8. 代码块(局部代码块、构造代码块、静态代码块)
  9. python 最短路径算法_最短路径python
  10. 在国内如何注册斯里兰卡公司?需要哪些流程?