首页 > 其他分享 >uboot 下的指令

uboot 下的指令

时间:2023-02-07 12:14:04浏览次数:55  
标签:mii uboot 指令 寄存器 gpio i2c mmc 0x0c

一、i2c 指令

i2c --help: i2c指令帮助

i2c bus:获取i2c总线信息

i2c dev:查看当前i2c设备

i2c dev 0:将i2c0作为当前设备

i2c md 0x6A 0x06.1 0x01:0x6A-->设备地址,0x06.1-->寄存器地址为0x06,寄存器宽度为1个字节,0x01-->读取一个字节

i2c mw 0x6A 0x06.1 0x02:将0x02写入0x6A设备的0x06寄存器中

二、gpio 操作

gpio --help:获取gpio帮助

  

  

gpio status -a:查看所有gpio信息

  

  可以看到xilinx上有两组gpio,一个是ps端的gpio,地址是0xff0a0000,另外一组是pl端的axi gpio ,地址是0xa0070000

gpio set gpio@a00700000:将axi gpio的第一位置高电平

gpio clean gpio@a00700000:将axi gpio的第一位置低电平

gpio input gpio@a00700000:将axi gpio的第一位置设置为输入

 三、mii命令

mii命令是操作mii接口的命令,mii接口用来连接soc中的MAC控制器和外部的PHY芯片。

MAC与PHY参考链接:https://www.cnblogs.com/try-again/p/9179103.html

mii命令主要是通过mii接口中的MDIO来读写phy芯片的寄存器

针对DP83867芯片

mii info //查看mii信息

mii write 0x0c 0x00 0x2100 //设置phy芯片为百兆,0x0c为phy芯片地址,0x00为phy芯片寄存器地址,0x2100为向0x00寄存器写入的值

mii read 0x0c 0x00 //读取phy芯片0x00寄存器的值

寄存器地址>0x1F的配置方法,因为MDIO最多能范围的寄存器范围为0~0x1F,如果寄存器地址>0x1F那么需要通过0x0d和0x0e这两个寄存器间接访问

读0x31寄存器
mii write 0x0c 0x0d 0x1f
mii write 0x0c 0x0e 0x31
mii write 0x0c 0x0d 0x401f
mii read 0x0c 0x0e

写0x31寄存器
mii write 0x0c 0x0d 0x1f
mii write 0x0c 0x0e 0x31
mii write 0x0c 0x0d 0x401f
mii write 0x0c 0x0e 0x1031 //向0x31寄存器写入0x1031

四、MMC命令

mmc是uboot下查看磁盘的命令

mmc list:查看所有磁盘

可以看到有两个磁盘,0是emmc,1是sd卡

mmc dev 0:进入磁盘0

mmc info :查看磁盘0的信息

这里显示了emmc的一些信息

五、fat文件系统操作命令

  5.1 fatls 查看文件命令

  fatls命令如下所示:

  

  fatls mmc 0:1:查看emmc第一分区的内容,0表示哪个mmc设备,这里是emmc,1表示第一分区

  

  可以看到emmc的第一分区中有三个文件

  5.2 fatrm 删除文件命令

  fatrm mmc 0:1 image.ub:删除emmc第一分区中的image.ub

  5.3 fatwite 写文件

  fatwrite mmc 0:1 0x10000000 image.ub 0x7d1160,从内存拷贝Image.ub到emmc第一分区中,0x10000000 表示内存拷贝的起始地址,image.ub是文件名,0x7d1160是拷贝的长度

六、ext4文件系统操作命令

   6.1 ext4ls查看文件

  ext4ls命令格式与fatls一样,比如查看mmc0 第二分区中的文件:ext4ls mmc 0:2

  

  查看mmc0第二分区bin目录下的文件:ext4ls mmc 0:2 bin

  

标签:mii,uboot,指令,寄存器,gpio,i2c,mmc,0x0c
From: https://www.cnblogs.com/kn-zheng/p/17097921.html

相关文章

  • linux 安装jmeter使用以及涉及的指令
    一、jdk安装1、通过xftp将压缩包存放到指定文件夹2、解压:tar -zxvf 文件名3、编辑配置文件如果账号权限不够先执行指令:sudo-i3.1、vim/etc/profile打开配置......
  • 编译指令总结
    编译不过设置指令exportLC_ALL=C编译报错日志导出make-j82>&1|teebuild.log7.1编译指令sourcebuild/envsetup.shlunchmakeupdate-apimakesystemimage-j4......
  • 项目实战:Qt终端命令模拟工具 v1.0.0(实时获取命令行输出,执行指令,模拟ctrl+c中止操作)
    需求  在Qt软件中实现部分终端控制命令行功能,使软件内可以又好的模拟终端控制,提升软件整体契合度。<br>Demo演示      <br>功能描述v1.0.0  windows......
  • 项目实战:Qt终端命令模拟工具 v1.0.0(实时获取命令行输出,执行指令,模拟ctrl+c中止操作)
    需求  在Qt软件中实现部分终端控制命令行功能,使软件内可以又好的模拟终端控制,提升软件整体契合度。 Demo演示      运行包下载地址:  CS......
  • Docker常用指令
    run  创建一个新的容器。  #使用docker镜像nginx:latest以后台模式启动一个容器#并将容器命名为mynginxdockerrun--namemynginx-dnginx:latest#使......
  • LLVM intrinsic与assembly指令
    LLVMintrinsic与assembly指令什么是LLVMintrinsicLLVM支持“intrinsicfunction”的概念。这些函数具有众所周知的名称和语义,并且需要遵循某些限制。总的来说,这些intr......
  • vue实现自定义v-loading指令
    实现dom节点的局部loading效果,效果如element-ui的v-loading。实现代码:loading.js,其中@/components/loadingComponent/index.vue为自定义的一个loading组件,可自行实现。......
  • 常用vim快捷指令
    0或Home:光标移动到本行开头$或End:光标移动到本行末尾gg:光标移动到第一行G:光标移动到最后一行n:重复上一个查找操作d:向下删除本行,向上删除上一行dd:删除当前行yy:......
  • 通过uboot传参设置mtd分区流程源码分析
    因为公司同事反映他使用的开板无法将根目录下的ip_work目mounth成功,由于本人当时没有去现场查看问题,只是象征性的询问内核是否创建了/dev/mtdblock5设备节点,因为该开发板默......
  • Minecraft 兴趣开发 | 指令笔记
    运行之后会自动创建一个名字为namespace的存储空间,存入:a:1b /datamergestorageminecraft:namespace{a:1b}  创建挖掘榜计分板,id是dig,显示名称是'ABC挖掘榜'......