RK3568 学习笔记 : u-boot 下通过设置 env ethact 设置当前工作的以太网设备

本文主要是介绍RK3568 学习笔记 : u-boot 下通过设置 env ethact 设置当前工作的以太网设备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

  • 正点原子 :RK3568 开发板 atompi-ca1 默认有两个网口,通过 u-boot mii 命令,可以查看 网口信息
=> mii device
MII devices: 'ethernet@fe010000' 'ethernet@fe2a0000'
Current device: 'ethernet@fe010000'
  • u-boot 下的以太网,不同于 Linux 内核的以太网,默认同时只能有一个用于网络通信,比如 运行 ping 或者 tftp 命令

  • 如果当前网线接的网口,不是默认的网口,就会等待超时,然后自动切换到另一个网口设备上

=> ping 192.168.10.10
ethernet@fe010000 Waiting for PHY auto negotiation to complete......... TIMEOUT !
phy_startup() failed: -110FAILED: -110ethernet@fe2a0000 Waiting for PHY auto negotiation to complete. done
Using ethernet@fe2a0000 device
host 192.168.10.10 is alive
  • 此时可以通过 env printf ethact 查看当前的默认网口,不过 u-boot 重启 reset 后,依旧会还原,因为没有 saveenv 保存 ethact 的设置
=> env print ethact
ethact=ethernet@fe2a0000
  • 如果指定好用于 u-boot 下用于网络通信的网口设备后,就可以使用 mii 查看一下 网络设备信息,并使用 setenv ethact 'ethernet@fe2a0000' 命令,设置 ethact env 环境变量,此时 saveenv,保存一下,重启后,网络通信的接口就会指定到 设置的网口设备。
=> mii device
MII devices: 'ethernet@fe010000' 'ethernet@fe2a0000'
Current device: 'ethernet@fe010000'=> setenv ethact 'ethernet@fe2a0000'=> 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=> saveenv
Saving Environment to MMC...
Writing to MMC(0)... done

在这里插入图片描述

  • 【备注】 mii device 命令也可以更改当前的网络设备,不过网络通信功能,依赖 ethact env 环境变量,通过 设置 ethact 即可解决多个网口使用指定网口的问题。

小结

  • u-boot env 功能还是比较的方便,灵活设置 env 环境变量,让 u-boot 的启动引导功能更强大,使用更方便。

  • u-boot 网络功能除了设置

=> setenv ipaddr 192.168.10.120
=> setenv netmask 255.255.255.0
=> setenv gatewayip 192.168.10.1
=> setenv serverip 192.168.10.10
  • 如果是多个网口,可以指定一个网口,设置 ethact,比如 setenv ethact 'ethernet@fe2a0000'

这篇关于RK3568 学习笔记 : u-boot 下通过设置 env ethact 设置当前工作的以太网设备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

Spring Boot中的路径变量示例详解

《SpringBoot中的路径变量示例详解》SpringBoot中PathVariable通过@PathVariable注解实现URL参数与方法参数绑定,支持多参数接收、类型转换、可选参数、默认值及... 目录一. 基本用法与参数映射1.路径定义2.参数绑定&nhttp://www.chinasem.cnbs

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建

Spring boot整合dubbo+zookeeper的详细过程

《Springboot整合dubbo+zookeeper的详细过程》本文讲解SpringBoot整合Dubbo与Zookeeper实现API、Provider、Consumer模式,包含依赖配置、... 目录Spring boot整合dubbo+zookeeper1.创建父工程2.父工程引入依赖3.创建ap

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Spring Boot集成Druid实现数据源管理与监控的详细步骤

《SpringBoot集成Druid实现数据源管理与监控的详细步骤》本文介绍如何在SpringBoot项目中集成Druid数据库连接池,包括环境搭建、Maven依赖配置、SpringBoot配置文件... 目录1. 引言1.1 环境准备1.2 Druid介绍2. 配置Druid连接池3. 查看Druid监控

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

linux hostname设置全过程

《linuxhostname设置全过程》:本文主要介绍linuxhostname设置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录查询hostname设置步骤其它相关点hostid/etc/hostsEDChina编程A工具license破解注意事项总结以RHE

Spring Boot @RestControllerAdvice全局异常处理最佳实践

《SpringBoot@RestControllerAdvice全局异常处理最佳实践》本文详解SpringBoot中通过@RestControllerAdvice实现全局异常处理,强调代码复用、统... 目录前言一、为什么要使用全局异常处理?二、核心注解解析1. @RestControllerAdvice2

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)