Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用户空间- SFP模块中缺少的I2c eeprom文件

用户空间- SFP模块中缺少的I2c eeprom文件
EN

Stack Overflow用户
提问于 2018-11-28 00:45:13
回答 1查看 1.5K关注 0票数 0

我有一些linux内核& SFP/I2C驱动程序问题。

我正在使用一个内置linux内核作为嵌入式板。

我需要能够读取SFP i2c设备.的eeprom文件。

1.工作案例:

当SFP模块从一开始(内核加载之前)插入到我的开发单元板中时,当启动完成时,我可以看到并读取路径中的eeprom文件:/sys/class/i2c-适配器/i2c-1/1-0050/eeprom。

  • 内核在启动时打印i2c设备扫描结果:

2.非工作情况:

如果启动时没有插入SFP模块,并且内核完成了引导过程,那么当我插入SFP模块时,我观察到路径:

/sys/class/i2c-适配器/i2c-1/1-0050/不包括eeprom文件.

  • sfp-eeprom代码的设备树部分:

我的猜测是SFP驱动程序负责SFP模块插入后应该发生的触发器,并且应该触发eeprom文件的创建。

想问你我错过了什么吗?一些来自sfp驱动程序的绑定代码来触发i2c扫描什么的?

有什么建议吗?

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-11-29 04:24:23

找到了解决这一问题的可能办法。

若要使用ethtool -m接口,请执行以下操作。

来自民族工具手册页:

-m --转储模块- EEPROM检索并在可能的情况下从插件模块(如SFP+、QSFP )解码

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53515362

复制
相关文章
Linux应用开发【第十二章】I2C编程应用开发
​ I2C(Inter-Integrated Circuit BUS)是I2C BUS简称,中文为集成电路总线,是目前应用最广泛的总线之一。和IMX6ULL有些相关的是,刚好该总线是NXP前身的PHILIPS设计。
韦东山
2021/12/15
3.9K0
Linux应用开发【第十二章】I2C编程应用开发
Linux系统驱动之编写APP直接访问EEPROM
从原理图可知,A2A1A0都是0,所以AT24C02的设备地址是:0b1010000,即0x50。
韦东山
2021/12/08
1.3K0
Linux系统驱动之编写APP直接访问EEPROM
[翻译]GPDB中的文件空间与表空间
GreenPlum是一个快速、灵活、纯软件的分析数据处理引擎,具有一些工具和特性可以充分利用任意个数硬件或者虚拟环境用来部署集群。这里讨论的一个特性是使用文件空间将数据加载和查询活动与底层的IO卷匹配。一旦在集群中创建了一个物理文件空间,它就会映射到一个逻辑表空间,然后创建表和索引时使用它。GP5的使用中可以参考下本文,GP6通过gpinitsystem工具创建文件空间并初始化集群,方便多了。
yzsDBA
2023/02/26
1.1K0
[翻译]GPDB中的文件空间与表空间
Linux TWI开发指南
介绍 Sunxi 平台上 TWI 驱动接口与调试方法,为 TWI 模块开发提供参考。
韦东山
2023/02/25
2.5K0
Linux TWI开发指南
树莓派I2C接口技术及Python SMBus串行I2C EEPROM应用编程
文章目录 一、I2C接口技术 1.I2C总线系统组成 2.I2C总线的状态及信号 3.I2C总线基本操作 4.启动和停止条件 5.I2C总线数据传输格式 二、I2C总线上拉电阻的估算与选取 三、树莓派与AT24C02接口实验电路及Python SMBus串行I2C EEPROM应用编程 1.启动RPi串行I2C接口及安装Python SMBus库 2. 树莓派与AT24C02 EEPROM接口实验电路 3. Python SMBus库函数介绍 4. 使用I2C Tools及Python SMBus读写AT24C02 EEPROM 一、I2C接口技术 I2C接口是嵌入式系统中常用的网络接口之一,它采用串行通信方式将MCU/传感器连接到系统总线,通过主机/从机的方式协调工作。 I2C/IIC(Inter-Integrated Circuit)总线是由PHILIPS公司于1982年针对MCU/传感器等应用需求而研制的一种两线式串行总线,用于连接MCU及传感器等设备。 I2C总线的主要特点如下: (1)I2C总线最主要的优点是其简单性和有效性。 (2)由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。 (3)I2C总线的长度可高达25英尺(约7.6m),并且能够以标准模式100Kbps的传输速率支持40个组件。新一代I2C总线还支持高速模式400Kbps传输。 (4)I2C总线的另一个优点是支持多主控(multi-mastering), 其中任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号传输和时钟频率。当然,在任何时间点上只能有一个主控。 1. I2C总线系统组成 I2C总线协议包含两层协议:物理层和数据链路层。 在物理层,I2C总线仅使用了两条信号线:一个是串行数据线SDA (Serial DAta line),它用于数据的发送和接收;另一个是串行时钟线SCL (Serial Clock Line)构成的串行总线,它用于指示何时数据线上是有效数据,即数据同步。MCU与被控IC之间、IC与IC之间进行双向传送,I2C标准模式最大传送速率为100kbps,I2C快速模式最大传输速率为400kbps。 在数据链路层,每个连接到I2C总线上的设备都有唯一的地址,设备的地址由系统设计者决定。在信息的传输过程中,I2C总线上并接的每一设备既是主设备(或从设备)又是发送器(或接收器),这取决于它所要完成的功能。 由I2C总线所构成的系统可以有多个I2C节点设备,并且可以是多主系统,任何一个设备都可以为主I2C;但是任一时刻只能有一个主I2C设备,I2C具有总线仲裁功能,以保证系统正确运行。主I2C设备发出时钟信号、地址信号和控制信号,选择通信的从I2C设备并控制收发。I2C总线要求:(1)各个节点设备必须具有I2C接口功能;(2)各个节点设备必须共地;(3)两根信号线必须接上拉电阻Rp。如图1所示。  图1 多I2C设备接口示意图 2. I2C总线的状态及信号 (1)空闲状态 SCL和SDA均处于高电平状态,即为总线空闲状态(空闲状态为何是高电平的道理很简单,因为它们都接上拉电阻)。 (2)占有总线和释放总线 若想让器件使用总线应当先占有它,占有总线的主控器向SCL线发出时钟信号。数据传送完成后应当及时释放总线,即解除对总线的控制(或占有),使其恢复成空闲状态。 (3)启动信号[S] 启动信号由主控器产生。在SCL信号为高时,SDA产生一个由高变低的电平变化,产生启动信号。 (4)结束/停止信号[P] 当SCL线高电平时,主控器在SDA线上产生一个由低电平向高电平跳变,产生停止信号。启动信号和停止信号的产生见图2所示。  图2 启动信号和停止信号的产生 (5)应答/响应信号[A/NA] 应答信号是对字节数据传输的确认。应答信号占1位,数据接收者接收1字节数据后,应向数据发出者发送一个应答信号。对应于SCL第9个应答时钟脉冲,若SDA线仍保持高电平,则为非应答信号(NA/ACK)。低电平为应答,继续发送;高电平为非应答,结束发送。 (6)控制位信号[R/nW] 控制位信号占1位,IIC主机发出的读写控制信号,高为读、低为写(对IIC主机而言)。控制位(或方向位)在寻址字节中给出。 (7)地址信号 地址信号为从机地址,占7位,称之为“寻址字节”(见表1)。 表1 寻址字节  下面对表1中的各字段进行说明。 器件地址(DA3-DA0):DA3-DA0是I2C总线接口器件固有的地址编码,由器件生产厂家给定,如AT24C××I2C总线EEPROM器件的地址为1010等。 引脚地址(A2、A1、A0):引脚地址由I2C总线接口器件的地址引脚A2、A1、A0的高低来确定,接高电平者为1,接地者为0。 读写控制位/方向位(R/n W):R/nW为1表示主机读,R/nW为0表示主机
用户7886150
2020/12/30
1.2K0
易天光通信SFP电口模块和10G SFP+电口模块介绍
电口模块:采用的传输媒质为 5 类非屏蔽双绞线,相比光纤传输方式来说,双绞线传输的传输距离较短,只适用于小范围组网环境。多用于水平布线和交换机互联,现在市场主要流行封装类型有SFP 和SFP+封装类型。
易天光通信
2019/03/04
1.4K0
易天光通信SFP电口模块和10G SFP+电口模块介绍
光模块7种标准:GBIC、SFP、SFP+、SFP28、QSFP、QSFP+、QSFP28有什么区别?
本文将为大家介绍什么是GBIC、SFP、SFP+、SFP28、QSFP、QSFP+和QSFP28以及它们之间的区别。
网络技术联盟站
2023/03/02
17.5K0
光模块7种标准:GBIC、SFP、SFP+、SFP28、QSFP、QSFP+、QSFP28有什么区别?
20.Linux-IIC驱动(详解)
  里面保存I2C总线驱动相关的文件,比如i2c-omap.c、 i2c-versatile.c、 i2c-s3c2410.c等。
嵌入式与Linux那些事
2021/05/20
2K0
SFP介绍
SFP是SMALL FORM PLUGGABLE(小型可插拔)的缩写,可以简单的理解为GBIC的升级版本。SFP模块体积比GBIC模块减少一半,只有大拇指大小。可以在相同的面板上配置多出一倍以上的端口数量。
碎碎思
2020/06/30
2.8K0
SFP介绍
优秀的 Verilog/FPGA开源项目介绍(十三)- I2C
I2C 总线规范是由飞利浦半导体编写的。这家公司后来成为 NXP Semiconductors,现在它是 I2C 总线规范的维护相关者。
碎碎思
2021/12/31
9510
优秀的 Verilog/FPGA开源项目介绍(十三)- I2C
28.Linux-IIC驱动(详解)
这篇文章介绍了一种基于I2C接口的EEPROM存储器读写方法,包括地址位、数据位以及控制命令的发送。作者通过一个例子详细展示了读写EEPROM的步骤和注意事项。此外,文章还介绍了如何使用I2C接口实现EEPROM存储器的硬件电路设计和驱动程序。
诺谦
2018/01/08
3.1K0
28.Linux-IIC驱动(详解)
pycharm缺少模块-解释器(interpreter)中已经包含还是提示ModuleNotFoundError
pycharm缺少模块 ,搞了好久,自己测试出来的, settings - project - project interpreter - 配置按钮中 - 添加even - 模块列表中已经显示出来了 但还是提示 ModuleNotFoundError
waki
2021/12/08
1.3K0
pycharm缺少模块-解释器(interpreter)中已经包含还是提示ModuleNotFoundError
EEPROM的页写
EEPROM的页写,EEPROM内部低位地址自动加1,高位地址还是由主器件程序发出。 低位地址正好对应页大小,如三位低位地址对应8个字节页地址0~7,这8个地址由EEPROM内部自动加1寻址。 所以主器件的程序控制,需要用取余运算计算出写入的首字节地址,开始时未按页大小对齐的字节数,以及最后剩余的不足一页大小的字节数,按字节写执行。而中间的N个满页大小的字节,按页写执行。 如果写完一页,主器件的程序控制没有把高位地址加1(也就是整个写地址加页大小),而没有发送停止信号且继续发送数据,那么EEPROM会重新刷写该页。 按页写的数据,不用每个字节都发送起始信号、写地址、停止信号等,提高了写入的速度。
风在等雪
2022/01/13
1.1K0
STM32Cube-13 | 使用硬件I2C读写EEPROM(AT24C02)
AT24C02的原理图如下(该原理图中有bug,A0的上拉电阻无效,实际A0为低电平):
Mculover666
2020/07/16
1.6K0
STM32Cube-13 | 使用硬件I2C读写EEPROM(AT24C02)
STM32通信模拟 I2C
I²C(Inter-Integrated Circuit),常读作“I方C”,它是一种多主从架构串行通信总线。在1980年由飞利浦公司设计,用于让主板、嵌入式系统或手机连接低速周边设备。如今在嵌入式领域是非常常见通信协议,常用于MPU/MCU与外部设备连接通信、数据传输。
韦东山
2022/05/09
1K0
STM32通信模拟 I2C
用户空间和内核空间
学习 Linux 时,经常可以看到两个词:User space(用户空间)和Kernel space(内核空间)。 简单说,Kernel space 是 Linux 内核的运行空间,User space 是用户程序的运行空间。为了安全,它们是隔离的,即使用户的程序崩溃了,内核也不受影响。 Kernel space可以执行任意命令,调用系统的一切资源;User space只能执行简单的运算,不能直接调用系统资源,必须通过系统接口(又称 system call),才能向内核发出指令。 str="my strin
企鹅号小编
2018/02/06
3.2K0
用户空间和内核空间
STM32F0单片机快速入门九 用 I2C HAL 库读写24C02
24C02 现在基本是开发板的标配,对于需要掉电存储的应用来说确是不二选择。现在单片机因为内部集成了Flash存储器,一般也都支持数据的掉电保存,但相对于 24C02 这种 EEPROM 来说,使用单片机内部的 Flash 有一些需要注意的问题:
用户2366192
2021/05/31
1.7K0
DSP+FPGA评估板 TI TMS320C6657 1.25GHz-DSP原理图
TI公司的TMS320C6655/57是不定点/浮点数字信号处理器(DSP),基于KeyStone多核架构,内核速度高达1.25GHz,集成了各种包括C66x内核,存储器子系统,外设和加速器在内的各种可编程子系统,非常适用于高性能可编程应用,如任务关键型,测试与自动化,医疗影像以及基础设施设备等领域。
Xines广州星嵌
2022/11/18
1.2K0
DSP+FPGA评估板 TI TMS320C6657 1.25GHz-DSP原理图
FUSE 用户空间文件系统 (Filesystem in Userspace)
FUSE (Filesystem in Userspace) is an interface for userspace programs to export a filesystem to the Linux kernel. The FUSE project consists of two components: the fuse kernel module (maintained in the regular kernel repositories) and the libfuseuserspace library (maintained in this repository). libfuse provides the reference implementation for communicating with the FUSE kernel module.
西湖醋鱼
2020/12/30
3.2K0
FUSE 用户空间文件系统 (Filesystem in Userspace)
创建表空间、用户、扩容、移动数据文件
SQL> create tablespace test_data   2  logging   3  datafile '/opt/oracle/oradata/bisal/test_data_01.dbf'   4  size 10M   5  autoextend on   6  next 10m maxsize 2000m   7  extent management local; Tablespace created.
bisal
2019/01/29
9200

相似问题

I2C与EEPROM的通信

11

从用户土地读取32k i2c eeprom

15

I2C EEPROM读写Cubieboard 2 Arch

12

PIC I2C与外部EEPROM的通信

14

I2C eeprom中的冗余值和冗余系统

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文