0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

在u-boot中使用ethernet的方法

XILINX开发者社区 来源:XILINX开发者社区 作者:Davis Zhang 2022-07-21 10:25 次阅读

本文作者:赛灵思工程师 Davis Zhang

KV260 petalinux BSP在u-boot device tree中disable了GEM3,也就是说ethernet在u-boot中不建议使用ethernet。
如果有特殊需要在u-boot中使用ethernet,可以用以下方法来使能它。

1.在u-boot设备树种enable GEM3和它的phy node

KV260 Petalinux BSP使能了这个配置, petalinux-config --> u-boot Configuration --> u-boot-ext-dtb


就是说u-boot有自己单独的设备树,我们需要在它的设备数里enable GEM3和phy node。

project-spec/meta-user/recipes-bsp/uboot-device-tree/files/system-user.dtsi
配置GEM3 node如下,

&gem3 { /* required by spec */
status = "okay";
local-mac-address = [00 0a 35 00 22 01];
phy-handle = <&phy0>;
phy-mode = "rgmii-id";


phy0: ethernet-phy@1 {
reg = <1>;
ti,rx-internal-delay =;
ti,tx-internal-delay =;
ti,fifo-depth =;
ti,dp83867-rxctrl-strap-quirk;
};
};

2.除了设备树里的配置外,要让GEM3对应的

phy正常工作

我们还要disable MIO 71/73/75的internal pullup/pulldown,使用MIO38来复位一下PHY。

可以在u-boot里这样操作。

a. Check if MIO 71/73/75 internal pull up/down is disabled. With the value 0x0357ffff, it has been disabled by u-boot.

ZynqMP> md 0xFF180180 1
ff180180: 0357ffff


b. Check if MIO38 is set as output and enabled. U-boot configures MIO38 as input. We need change it manually.
ZynqMP> md 0xFF0A0244 1
ff0a0244: 00000000
ZynqMP> md 0xFF0A0248 1
ff0a0248: 00000000

c. Configure MIO38 as output and enable it. Assert MIO38 low and high. Then, gem3 will work with phy addr 0x1.

ZynqMP> mw 0xFF0A0244 0x1000
ZynqMP> mw 0xFF0A0248 0x1000
ZynqMP> mw 0xFF0A0008 0x0000
ZynqMP> mw 0xFF0A0008 0x1000
ZynqMP> setenv ipaddr 192.168.1.10
ZynqMP> ping 192.168.1.100

ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 1, interface rgmii-id
ethernet@ff0e0000 Waiting for PHY auto negotiation to complete....... done
Using ethernet@ff0e0000 device
host 192.168.1.100 is alive
ZynqMP>

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 赛灵思
    +关注

    关注

    32

    文章

    1794

    浏览量

    131193
  • u-boot
    +关注

    关注

    0

    文章

    120

    浏览量

    38209
  • Ethernet
    +关注

    关注

    3

    文章

    302

    浏览量

    55900

原文标题:开发者分享|KV260-SOM: 如何在u-boot里使用ethernet

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    U-boot的基本介绍

    从本文开始,将陆续推送“手把手教你移植U-boot”系列文章,目标是由浅入深地讲解U-boot的工作流程、原理、配置方法和移植方法,手把手教你完成U
    发表于 07-14 16:52 2826次阅读
    <b class='flag-5'>U-boot</b>的基本介绍

    U-boot的执行流程

    本文主要讲述了U-boot的执行流程。
    发表于 07-14 16:58 683次阅读
    <b class='flag-5'>U-boot</b>的执行流程

    嵌入式系统中U-Boot 基本特点及其移植方法

    介绍U-Boot 基本特点的基础上,结合U-Boot 移植经历,以MPC8xx 和嵌入式Linux 为背景,分析、探讨U-Boot 的移植方法
    发表于 04-15 09:25 17次下载

    嵌入式系统中U-Boot 基本特点及其移植方法

    介绍U-Boot 基本特点的基础上,结合U-Boot 移植经历,以MPC8xx 和嵌入式Linux 为背景,分析、探讨U-Boot 的移植方法
    发表于 05-16 14:52 12次下载

    U-Boot的启动及移植分析

    bootloader 开发是嵌入式系统必不可少而且十分重要的部分,U-Boot 为功能强大的bootloader 开发软件。本文详细分析了U-Boot 的启动流程,并结合其源码,阐述了U-Boot
    发表于 09-01 16:34 27次下载

    Porting U-Boot to the Control

    In this paper, the way of porting U-Boot to Control Computer Based MPC8349 will beintroduced
    发表于 01-25 15:45 13次下载

    一种U-BOOT中嵌入千兆网络功能的方法

    一种U-BOOT中嵌入千兆网络功能的方法摘 要:U-BOOT是一种开放源码的、用于多种嵌入式微处理器的引导加载程序,目前U-BOOT仅支持
    发表于 02-05 17:38 17次下载

    u-boot的Makefile分析

    u-boot的Makefile分析 U-BOOT是一个LINUX下的工程,在编译之前必须已经安装对应体系结构的交叉编译环境,这里只针对ARM,编译器系列软件为arm-linux-*。 U-BOOT的下载
    发表于 05-17 09:16 2058次阅读

    嵌入式U-BOOT的启动流程及移植

    摘要:嵌入式系统一般没有通用的bootloader,u-boot是功能强大的bootloader开发软件,但相对也比较复杂。文中对u-boot的启动流程作了介绍,详细给出了u-boot
    发表于 02-25 16:00 59次下载

    u-boot简介

    U-Boot是BootLoader的一种,是操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个
    发表于 10-14 11:17 3546次阅读

    U-Boot架构浅析

    导读:嵌入式Linux系统搭建,bootloader是必不可少的一环,而U-Boot已成嵌入式Linux事实标准。所以较为深入的分析U-Boot的设计,对于更...
    发表于 02-07 11:56 7次下载
    <b class='flag-5'>U-Boot</b>架构浅析

    Linux U-Boot开发指南

    介绍 U-Boot 的编译打包、基本配置、常用命令的使用、基本调试方法等, 为 U-BOOT 的移植及应用开发提供了基础。
    的头像 发表于 03-06 10:28 1279次阅读
    Linux <b class='flag-5'>U-Boot</b>开发指南

    U-boot的QSPI驱动移植方法及验证方法

    本文主要讲述了U-boot的QSPI驱动移植方法及验证方法。在产品调试阶段,U-boot的driver子系统包含了丰富的外设驱动,方便外设功能验证与调试。
    的头像 发表于 04-14 10:21 2906次阅读
    <b class='flag-5'>U-boot</b>的QSPI驱动移植<b class='flag-5'>方法</b>及验证<b class='flag-5'>方法</b>

    U-boot的DPU驱动移植方法

    本文以ARM Mali系列显示处理器驱动为例,讲述了U-boot的DPU驱动移植方法
    的头像 发表于 04-14 10:25 1339次阅读
    <b class='flag-5'>U-boot</b>的DPU驱动移植<b class='flag-5'>方法</b>

    u-boot armv8链接脚本

    u-boot armv8链接脚本 进行源码分析之前,首先看看u-boot的链接脚本,通过链接脚本可以从整体了解一个u-boot的组成,并且可以
    的头像 发表于 12-07 11:19 623次阅读