野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 372|回复: 2

[经验\资料] 鲁班猫0无线版编译Linux RT内核相关问题及解决方案

[复制链接]
发表于 2023-11-21 11:50:03 | 显示全部楼层 |阅读模式
背景:

我需要调整内核参数,所以根据 https://doc.embedfire.com/linux/ ... /lubancat_sdk.html# 官网文档自行编译img。
但是启动后ifconfig 无法看到wlan0网口。

问题原因:
自行编译的rt img,因为在 lubancat-bin/ 下缺乏 RT 对应的initrd,导致 arch/arm64/boot/dts/rockchip/uEnv/boot.cmd 带有ramdisk的启动方式不成功,无法在第一次启动的时候释放linux-image-4.19.232-rt104_4.19.232-rt104-8_arm64.deb  内的驱动文件。

解决方案:
vim ./kernel-rt/arch/arm64/boot/dts/rockchip/uEnv/boot.cmd
  1. echo [boot.cmd] run boot.cmd scripts ...;

  2. if test -e ${devtype} ${devnum}:${distro_bootpart} /uEnv/uEnv.txt; then

  3.     echo [boot.cmd] load ${devtype} ${devnum}:${distro_bootpart} ${env_addr_r} /uEnv/uEnv.txt ...;
  4.     load ${devtype} ${devnum}:${distro_bootpart} ${env_addr_r} /uEnv/uEnv.txt;

  5.     echo [boot.cmd] Importing environment from ${devtype} ...
  6.     env import -t ${env_addr_r} 0x8000

  7.     setenv bootargs ${bootargs} root=/dev/mmcblk${devnum}p3 ${cmdline}
  8.     printenv bootargs

  9.     # 注释掉下面两行
  10.     # echo [boot.cmd] load ${devtype} ${devnum}:${distro_bootpart} ${ramdisk_addr_r} /initrd-${uname_r} ...
  11.     # load ${devtype} ${devnum}:${distro_bootpart} ${ramdisk_addr_r} /initrd-${uname_r}

  12.     echo [boot.cmd] loading ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} /Image-${uname_r} ...
  13.     load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} /Image-${uname_r}

  14.     echo [boot.cmd] loading default rk-kernel.dtb
  15.     load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} /rk-kernel.dtb

  16.     fdt addr  ${fdt_addr_r}
  17.     fdt set /chosen bootargs

  18.     echo [boot.cmd] dtoverlay from /uEnv/uEnv.txt
  19.     setenv dev_bootpart ${devnum}:${distro_bootpart}
  20.     dtfile ${fdt_addr_r} ${fdt_over_addr}  /uEnv/uEnv.txt ${env_addr_r}

  21.     echo [boot.cmd] [${devtype} ${devnum}:${distro_bootpart}] ...
  22.     echo [boot.cmd] [booti] ...

  23.     # 注释下面一行
  24.     #booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

  25.     # 新增下面一行
  26.     booti ${kernel_addr_r} - ${fdt_addr_r}
  27. fi

  28. echo [boot.cmd] run boot.cmd scripts failed ...;

  29. # Recompile with:
  30. # mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr
复制代码


回复

使用道具 举报

发表于 2023-11-23 08:39:25 | 显示全部楼层
强!     
回复 支持 反对

使用道具 举报

发表于 2024-3-19 08:56:47 | 显示全部楼层
请教:怎么把内核换成5.x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-3 04:59 , Processed in 0.117072 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表