smbus访问SPD

来源:互联网 发布:linux windows双系修复 编辑:程序博客网 时间:2024/06/01 07:19

通常有IO和MMIO两种方式访问SMBUS,但两种方式除了base address不同,访问方法相似。


IO方式简化流程:

1. 找出smbus base address(记为smbase)

2. smbase + 04h处填入  SPD设备地址+1 (例如,   A2h+1=A3h) 

3. smbase + 03h处填入  目标数据在SPD内的偏移地址

4. smbase + 02h处填入  48h ( 意思为指示smbus以byte为单位读取目标数据)

5. 到这一步,就可以从smbase + 05h处读出目标byte数据

PS:上面步骤均省略查看smbus忙状态,即smbase + 01h bit 0是否为1,为1即表示smbus还在忙,

不方便接受填值。

0 0
原创粉丝点击