RK3568 学习笔记 : u-boot 千兆网络功能验证

2024-04-16 22:12

本文主要是介绍RK3568 学习笔记 : u-boot 千兆网络功能验证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

  • 开发板型号: 【正点原子】 的 RK3568 开发板

  • 使用 虚拟机 ubuntu 20.04 编译 RK3568 Linux SDK,生成镜像,烧写后,Linux 系统正常启动

  • 开启后可以使用 CTRL+C 进入 u-boot

  • 本篇验证一下 u-boot 下网络功能

  • 【正点原子】 rk3568 开发板资料与 Linux SDK 下载 http://www.openedv.com/docs/boards/arm-linux/RK3568Linux.html

  • u-boot 下网络如果通了,后面烧写 u-boot 或者 Linux 系统镜像,可以直接在 u-boot 模式使用网络功能,如 tftp 进行烧写

windows 电脑端设置网络

  • 网络使用 千兆网线 链接,USB 转千兆 网卡,这样通过 USB 转网卡直连电脑,不使用【路由器】或者交换机

  • windows 端会识别一个 USB 类型的千兆网卡(网络适配器),设置一下 IPV4 的 地址信息

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 这样 windows 端的 网卡设置完成

u-boot 端网络设置

  • 首先串口终端: CTRL+C 进入 u-boot 命令行,可以使用 u-boot setenv 命令,如 setenv bootdelay 5修改 bootdelay 引导延迟时间为 5秒,否则 CTRL+C 不及时,就是引导启动系统。

  • u-boot 下需要设置一下网络连接的参数

  • 当前 网卡的网段:192.168.10.xx,因此 u-boot 设置如下

setenv ipaddr 192.168.10.3
setenv netmask 255.255.255.0
setenv gatewayip 192.168.10.1
setenv serverip 192.168.10.10saveenv
reset
  • 【备注】当前的 RK3568 网络 MAC 默认无法更改,那就不用重新设置

  • 由于当前的 rk3568 的开发板有两个千兆的网口,因此可以使用 u-boot mii 命令查看与设置默认的连接网卡

  • 可以通过修改 u-boot env ethact 来更改默认的网口

在这里插入图片描述

  • mii 命令可以查看 当前的 phy 信息
=> mii
mii - MII utility commandsUsage:
mii device                            - list available devices
mii device <devname>                  - set current device
mii info   <addr>                     - display MII PHY info
mii read   <addr> <reg>               - read  MII PHY <addr> register <reg>
mii write  <addr> <reg> <data>        - write MII PHY <addr> register <reg>
mii modify <addr> <reg> <data> <mask> - modify MII PHY <addr> register <reg>updating bits identified in <mask>
mii dump   <addr> <reg>               - pretty-print <addr> <reg> (0-5 only)
Addr and/or reg may be ranges, e.g. 2-7.=> mii device
MII devices: 'ethernet@fe010000' 'ethernet@fe2a0000'
Current device: 'ethernet@fe010000'=> mii device 'ethernet@fe2a0000'=> setenv ethact 'ethernet@fe2a0000'=> saveenv
Saving Environment to MMC...
Writing to MMC(0)... done=> mii dump
0.     (ffff)                 -- PHY control register --(8000:8000) 0.15    =     1    reset(4000:4000) 0.14    =     1    loopback(2040:2040) 0. 6,13 =   b11    speed selection = 10 Mbps(1000:1000) 0.12    =     1    A/N enable(0800:0800) 0.11    =     1    power-down(0400:0400) 0.10    =     1    isolate(0200:0200) 0. 9    =     1    restart A/N(0100:0100) 0. 8    =     1    duplex = full(0080:0080) 0. 7    =     1    collision test enable(003f:003f) 0. 5- 0 =    63    (reserved)

在这里插入图片描述

网络连通测试

  • u-boot 下可以使用 ping 命令进行测试网络连通性,如果网络正常连接,可以使用 tftp 等命令进行镜像的传递

  • 如果出现 host 192.168.10.10 is alive 这样的信息,说明网络是通的。

=> ping 192.168.10.10
ethernet@fe2a0000 Waiting for PHY auto negotiation to complete. done
Using ethernet@fe2a0000 device
host 192.168.10.10 is alive
  • 如果网络不通,需要确认 网络设置是否正确

  • 当前验证 RK3568 开发板 两个网口在 u-boot 下 均能正常的连通

# 切换到另一个网卡
=> setenv ethact 'ethernet@fe010000'
=> saveenv# ping PC 电脑端
=> ping 192.168.10.10
ethernet@fe010000 Waiting for PHY auto negotiation to complete. done
Using ethernet@fe010000 device
host 192.168.10.10 is alive

小结

  • 本篇主要验证两个问题:(1)rk3568 开发板 u-boot 下网络是否是通的 (2)通过 USB 转网卡直连开发板是否存在问题,是否不需要路由器

  • 验证的结果: (1)【正点原子】 的 RK3568 开发板 ATK-DLRK3568,u-boot 下 两个网口均正常工作 (2)使用 USB 转千兆网卡,只需要设置好网卡的 IP 地址,就可以正常工作,不需要额外的路由器。

这篇关于RK3568 学习笔记 : u-boot 千兆网络功能验证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/910038

相关文章

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

如何在 Spring Boot 中实现 FreeMarker 模板

《如何在SpringBoot中实现FreeMarker模板》FreeMarker是一种功能强大、轻量级的模板引擎,用于在Java应用中生成动态文本输出(如HTML、XML、邮件内容等),本文... 目录什么是 FreeMarker 模板?在 Spring Boot 中实现 FreeMarker 模板1. 环

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

Android使用ImageView.ScaleType实现图片的缩放与裁剪功能

《Android使用ImageView.ScaleType实现图片的缩放与裁剪功能》ImageView是最常用的控件之一,它用于展示各种类型的图片,为了能够根据需求调整图片的显示效果,Android提... 目录什么是 ImageView.ScaleType?FIT_XYFIT_STARTFIT_CENTE

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Spring Boot 整合 SSE的高级实践(Server-Sent Events)

《SpringBoot整合SSE的高级实践(Server-SentEvents)》SSE(Server-SentEvents)是一种基于HTTP协议的单向通信机制,允许服务器向浏览器持续发送实... 目录1、简述2、Spring Boot 中的SSE实现2.1 添加依赖2.2 实现后端接口2.3 配置超时时

Spring Boot读取配置文件的五种方式小结

《SpringBoot读取配置文件的五种方式小结》SpringBoot提供了灵活多样的方式来读取配置文件,这篇文章为大家介绍了5种常见的读取方式,文中的示例代码简洁易懂,大家可以根据自己的需要进... 目录1. 配置文件位置与加载顺序2. 读取配置文件的方式汇总方式一:使用 @Value 注解读取配置方式二