Jetson Nano 自定义启动图标kernel Logo cboot logo

Jetson Nano的启动图标分为两个部分,一个图标位于cboot内,注意不是uboot logo;一个在内核启动后文件系统内。

一、 cboot logo替换

Jetson Nano的cboot logo需要一种特殊格式的图片文件;
制作之前,需要下载英伟达的BSP驱动包和源码包(上一篇中);

1、 进入到工具目录

cd /Linux_for_Tegra/tools/bmp-splash

2、 编辑config

编辑config_file.example文件,并重命名为config_file,将里面的内容:
nvidia480.bmp nvidia 480;
nvidia720.bmp nvidia 720;
nvidia1080.bmp nvidia 1080
修改成自己的文件名字,例如
12.bmp nvidia 480;
12.bmp nvidia 720;
12.bmp nvidia 1080
如果要自己重写,需要在每行后面增加分号,除了最后一行。
将自定义图片(必须是24BPP的BMP图片)放在当前文件夹;
可以在linux下使用file指令查看文件格式;

3、 生成

运行指令:
OUT=$PWD ./genbmpblob_L4T.sh t210 ./config_file ./BMP_generator_L4T.py /usr/bin/lz4c my-bmp.blob
注意需要安装一个压缩工具包:

sudo apt-get install liblz4-tool

4、 替换

重命名my-bmp.blob,替换原Linux_for_Tegra/bootloader/bmp.blob文件

5、烧录

单独烧录:
sudo ./flash.sh -r -k BMP
官方工具里面是上述的提示,但是如果使用上面命令则会有错误如下:

*** Error: missing BMP image. Use option --image to specify the image to be flashed.

所以,正确的指令需要指定image的位置,如下:
nano的为:
sudo ./flash.sh -r -k BMP --image bootloader/bmp.blob jetson-nano-qspi-sd mmcblk0p1

二、内核设置

1、内核日志输出

Jetson Nano的内核日志会默认从串口和屏幕输出,如果要禁止从屏幕输出可以通过设置cbootargs来重定向输出流,两个方式:
①:nano启动以后,进入板子的/boot/extlinux/目录,编辑extlinux.conf文件
LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
将console=tty0删除。
② 上面的修改可能不起作用,然后可以尝试修改设备树
在bsp的驱动包里,
cd /Linux_for_Tegra
然后编辑p3448-0000.conf.common文件
找到

CMDLINE_ADD="console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0";

将console=tty0删除,重新编译设备树或者内核,烧录系统;

2、修补内核启动空白

经过上面步骤,可以显示自己的logo图片了,但是在内核启动的时候,即使将tty0去掉了,还是会有几行logo,并且会有一段内核启动的黑屏时间,我们要填补这部分黑屏时间,可以修改内核配置。
参考上一篇的内核裁剪
将.config文件中的
CONFIG_FRAMEBUFFER_CONSOLE=y
设置成n;即禁止内核启动的时候刷新logo显示的buffer,使得boot段的启动logo得以保存一直显示。
重新编译内核,并把内核上传的nano板子的boot目录下,覆盖Image文件。

3、修改内核启动logo

nano的内核启动起来会调用位于/usr/share/backgrouds/目录下的png图片作为开机logo
,这里有很多文件,有些是黑色底色,透明图标的,我们如果只修改显示的部分,可以只将NVIDIA_Login_Logo.png这个图片替换。重新开机即可看到新的图标;

4、禁用开机logo

如果开机不想进桌面,可以直接进命令行
命令:

sudo systemctl set-default multi-user.target

但是,这可能导致一些图形界面的程序无法正确运行。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蒙蒂锅巴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值