• 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.10
    
    saveenv
    reset
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 【备注】当前的 RK3568 网络 MAC 默认无法更改,那就不用重新设置

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

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

    在这里插入图片描述

    • mii 命令可以查看 当前的 phy 信息
    => mii
    mii - MII utility commands
    
    Usage:
    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)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41

    在这里插入图片描述

    网络连通测试

    • 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
    
    • 1
    • 2
    • 3
    • 4
    • 如果网络不通,需要确认 网络设置是否正确

    • 当前验证 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
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    小结

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

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

  • 相关阅读:
    zabbix添加微信报警
    ffmpeg 视频转图片 图片集转视频
    Java面向对象:设计对象、注意事项
    音视频基础
    Android Fragment 基本概念和基本使用
    使用python+mongodb实现股票网格交易代码
    【大语言模型基础】图解GPT原理-60行numpy实现GPT
    1360. 日期之间隔几天
    2022-06-28管理心得
    javaSE - Arrays - 数组的定义与使用
  • 原文地址:https://blog.csdn.net/tcjy1000/article/details/137838559