野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3585|回复: 4

[经验\资料] 只保留eth1网口入坑出坑记录

[复制链接]
发表于 2023-5-19 09:50:07 | 显示全部楼层 |阅读模式
1.引言
  参考帖子:https://www.firebbs.cn/forum.php ... peid%26typeid%3D267
   有现成的设备树源码和应用,可以直接用何乐而不为?
   但是我有强迫症,容不下源码里面还保留74LV595和eth2提示,新手站在大神肩上不达目的不罢休,开干!
2.明确任务:

   取消74LV595驱动和eth2驱动;
3.根据参考帖子,打开/arch/arm/boot/dts/imx6ull-mmc-npi.dts
    野火论坛202305190929193450..png
  打开后,删除
野火论坛202305190930213509..png
4.看到这目录下好多设备树例子,忍不住多参考参考,留意到imx6ul-liteboard.dts文件,非常简洁:
    野火论坛202305190932032877..png
    野火论坛202305190932237011..png
5.参考大神帖子和上面的设备树,修改如下:
   野火论坛202305190933296896..png
野火论坛202305190933441731..png
注意这里删除了&fec2节点!!
6.编译设备树源码
在内核源码顶层目录右键菜单打开终端,并输入:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-npi_v7_defconfig
make ARCH=arm -j4 CROSS_COMPILE=arm-linux-gnueabihf- dtbs
如下下图所示
野火论坛202305190935099162..png
7.拷贝到目标板上测试
  编译出来的设备树生成在arch/arm/boot/dts/imx6ull-mmc-npi.dtb位置,拷贝出来
  先拷贝imx6ull-mmc-npi.dtb文件到开发板的/home/ubuntu目录下
  接着用mv指令移动到指定目录/usr/lib/linux-image-4.19.35-imx6/
   野火论坛202305190938566075..png
8.断电重启,查看效果
    野火论坛202305190939383496..png
坑大了!!开发板起不来了!!掉坑了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
开始疯狂分析原因:
(1)删除了sound设备树,可能是系统启动时候加载驱动无法通过;
(2)删除了74LV595驱动,也有这个可能;
(3)eth2删除呢?
那问题很可能出现在uEnv.txt上,野火教程有提到过这文件在UBOOT上有加载驱动的作用。
9.开发板重新烧录固件,进入/boot下,打开uEnv.txt,屏蔽相关驱动:
野火论坛202305190944445212..png
10.重复步骤7操作,替换设备树,然后断电重启,看结果
   野火论坛202305190946015721..png
继续
   野火论坛202305190946209612..png
问题解决!!
   imx6ull_mmc_npi - 副本.rar (11.12 KB, 下载次数: 3)

  
回复

使用道具 举报

 楼主| 发表于 2023-5-19 10:20:47 | 显示全部楼层
需要开启余下7路串口的,需要修改/boot/uEnv.txt文件,修改如下:
野火论坛202305191020016335..png
然后重启板子,就会发现串口可用了
野火论坛202305191020443802..png
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-5-19 10:55:14 | 显示全部楼层
uart1~uart5正常测试可以通讯,uart6~uart8在开发板测试无法接收,估计猜测是引脚不应不上,开发板原理图表明如下:
野火论坛202305191052108533..png
但是找源码+测试实际的引脚为:
野火论坛202305191052457508..png
野火论坛202305191052599024..png
野火论坛202305191053052310..png
有2中途径解决:
1.用沿用设备树的驱动;
2.修改设备树源码,位置:
野火论坛202305191055087885..png
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-5-19 11:28:50 | 显示全部楼层
我对于设备树的学习是昨天开始的,一知半解吧,瞎蒙,一边学习一边写帖子:
1.明确目标:
   着手修改uart6引脚
2.首先查看\i.MX6ULL系列\2-硬件资料\ebf_6ull_hardware_20230306\hardware\开发板引脚分配说明\野火_EBF6ULL S1邮票孔核心板_V1.0引脚分配.xlsx文件
  跟单片机一样,UART6肯定是复用引脚:
野火论坛202305191111536796..png
野火论坛202305191114495836..png
3.明确这点后,接着看设备树源码
  查看源码imx-fire-uart6-overlay.dts,顺便把涉及到的头文件也都打开:
   野火论坛202305191127102721..png
4.瞎子过河:
   野火论坛202305191128082669..png
野火论坛202305191128456231..png



  
回复 支持 0 反对 1

使用道具 举报

发表于 2023-5-19 20:26:16 | 显示全部楼层
本帖最后由 おおおじ。 于 2023-5-19 21:44 编辑

真不错啊

排那个设备树节点报错重新烧固件很麻烦吧,可以在家目录留个可以的主设备树,然后用这个主设备树引导启动的
在uboot命令行模式下输入
run args_mmc_old
load mmc 1:1 0x80800000 kernel/vmlinuz-4.19.35-imx6
load mmc 1:2 0x83000000 /home/debian/imx6ull-mmc-npi.dtb
bootz 0x80800000 - 0x83000000
手动加载/home/debian/下的主设备树引导启动。此时只加载了内核和主设备树,即使原来的主设备树有问题或者uEnv.txt有冲突也能启动。。可以抢救一下。

mmc 1:1 是emmc里面第二个分区,第一个分区是mmc 1:0存放boot,第二个分区是存放内核那个分区,系统启动后会挂载到/boot  
mmc 1:2 是emmc的第三个分区,存放根文件系统

如果是sd卡这是mmc 0:1 和mmc 0:2



回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 07:38 , Processed in 0.032682 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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