KSZ9897中的以太网驱动中的fixed-link和Generic PHY
1:fixed-link的常用配置
&fec1 {pinctrl-names = "default";pinctrl-0 = <&pinctrl_fec1>;fsl,magic-packet;status = "okay";phy-mode = "rgmii";fsl,magic-packet;#phy-handle = <ðphy0>;status = "okay";fixed-link {speed = <1000>;full-duplex;}; ethphy0: ethernet-phy@0 {compatible = "Microchip KSZ989X Switch";reg = <0>;};
};
&i2c3 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";
i2c_ksz9897: ksz9897@5f {
compatible = "microchip,ksz9897";
reg = <0x5f>;
phy-mode = "rgmii-txid";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ksz9897_irq>;
interrupt-parent = <&gpio1>;
interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
label = "lan1";
};
port@1 {
reg = <1>;
label = "lan2";
};
port@2 {
reg = <2>;
label = "lan3";
};
port@3 {
reg = <3>;
label = "lan4";
};
port@4 {
reg = <4>;
label = "lan5";
};
port@5 {
reg = <5>;
label = "cpu";
ethernet = <&fec1>;
fixed-link {
speed = <1000>;
full-duplex;
};
};
port@6 {
reg = <6>;
label = "lan6";
fixed-link {
speed = <1000>;
full-duplex;
};
};
};
};
上面的配置中,我们需要关注:phy-mode = "rgmii"; phy-handle = <ðphy0>; phy-handle = <ðphy0>; 这些节点的定义,这个在imx的驱动中会对其进行解析,Ethernet对应的驱动程序如下
2:Generic PHY
这个是通用的PHY芯片的处理接口,在系统中找不到特定PHY对应的驱动设备的时候,使用此驱动程序。
在imx8mm的平台中接入KSZ9897的芯片,注意在没有加载9897的驱动i2c-ksz9897.ko的时候,可以只加载Generic PHY]来达到网络通,但是switch的功能完全没有利用起来。
上面的这些信息中,完全没有ksz9897的驱动的加载及初始化的信息。
同时请务必去除imx8mm中不相关的驱动程序,不然网络是不同的,
其对比内核配置以及启动过程,其主要差异在于下面:NXP PHY: loading NXP PHY driver: [autonomous mode]
KSZ9897中的以太网驱动中的fixed-link和Generic PHY相关推荐
- 在U-boot中添加以太网驱动-Nazgul
当定义CONFIG_CMD_NET和CONFIG_CMD_PING,编译之后执行ping命令,告警没有找到以太网. 因此,需要打开U-boot的网络功能, u-boot-sunxi-sunxi中没有找 ...
- Network 之二 Ethernet(以太网)中的 MAC、MII、PHY 详解
结构 从硬件的角度看,以太网接口电路主要由 MAC(Media Access Control,MAC)控制器和物理层接口 PHY(Physical Layer,PHY)两大部分构成.如下图所示: ...
- Linux 设备驱动开发 —— 设备树在platform设备驱动中的使用
关与设备树的概念,我们在Exynos4412 内核移植(六)-- 设备树解析 里面已经学习过,下面看一下设备树在设备驱动开发中起到的作用 Device Tree是一种描述硬件的数据结构,设备树源(De ...
- 电脑中Realtek网卡驱动安装不了如何解决
近日驱动人生收到用户咨询说,在电脑中安装Realtek网卡驱动安装不了,弹出错误窗口,显示The Realtek Network Controller was not found 现在小编就来说一下如 ...
- imx6 驱动中mipi csi 与 parallel选择
在imx6q这款芯片中使用mipi csi或者parllel来传输数据给imx6q是需要对寄存器做一定的修改的 否则数据会没办法传输 在36.4.2中的寄存器GPR (IOMUXC_GPR1)的20和 ...
- ALSA声卡驱动中的DAPM详解之四:在驱动程序中初始化并注册widget和route
前几篇文章我们从dapm的数据结构入手,了解了代表音频控件的widget,代表连接路径的route以及用于连接两个widget的path.之前都是一些概念的讲解以及对数据结构中各个字段的说明,从本章开 ...
- linux设备驱动第五篇:驱动中的并发与竟态
目录[-] 综述 信号量与互斥锁 Completions 机制 自旋锁 其他的一些选择 不加锁算法 原子变量与位操作 seqlock(顺序锁) 读取-拷贝-更新(RCU) 小结 综述 在上一篇介绍了l ...
- 【整理】Linux驱动中,probe函数何时被调用
声明:以下主要内容参考自: 关于struct device_driver结构中的probe探测函数的调用 http://blog.chinaunix.net/u2/71164/showart.php? ...
- 在C#中使用官方驱动操作MongoDB
MongoDB的官方驱动下载地址:https://github.com/mongodb/mongo-csharp-driver/releases 目前最新的版本是2.10,支持.NET 4.5以上.由 ...
最新文章
- Android--向SD卡读写数据
- 《深入Linux设备驱动程序内核机制》中的mmap_demo.c例程
- new star program
- 你还在代码里做读写分离么,试试这个中间件吧!
- 小公司出身的我,是如何拿下知名独角兽公司 Offer?
- spring3.1 profile 配置不同的环境
- P-Associated-URI处理流程
- matlab如何实现隔直滤波器,matlab的滤波器仿真——低通滤波器与插值滤波器
- MPC的终结——二次规划求解约束极值问题
- java实行图片上写字
- 每一代内存的读写速度
- 【P4lang】P4数据平面编程实验basic_tunnel
- Runtime源码剖析-对象
- OpenGL ES SDK for Android - 3
- 《Fooled by Randomness》读书笔记
- 何朝曦:构建云化安全能力的三个建议
- Android CardView使用详解
- 美使馆9年pm2.5数据分析:雾霾到底是不是加重了?
- 图像数据增强2_albumentation 标注框同时修改(VOC、YOLO)
- Day595.普利姆算法 -数据结构和算法Java