FWH_SEL1 的说明

2 篇文章 0 订阅

之前执导FWH_SEL1是用来选FWH 的片子,但是太清楚这么具体。spec上也没有说清楚

============================================================================

Q:小弟之前做的一个案子,对于FWH_SEL1的设置是这样的:
在南桥初始化的时候, 往这个32BIT的register里填值:0x00 00 00 0E,
按照SPEC来看, 是选两个512K的FWH memory range.那么就是1M了。
原文如下:“
FWH_C0_IDSEL — R/W. IDSEL for two 512-KB Firmware Hub memory ranges. The IDSEL programmed in this field addresses the following memory ranges:
FFC0 0000h – FFC7 FFFFh
FF80 0000h – FF87 FFFFh ”

所以小弟想要请教的是:
这里为什么要选FWH的memory range 呢, 是为了BIOS ROM 吗?

 

A:你这个设置 0x00 00 00 0E肯定是随便设的,但是一般不会出问题,这个设定不是for FWH的memory range,而是FWH的idsel,这个寄存器的值默认为0x00112233,每个数字管512K的FWH的空间的idsel,如果你只有一个bios片子,那么它的idsel就是0,因此默认值就是F8和F0段都译码到idsel为0的片子,e8和e0都译码到idsel为1的片子,依次类推。
因此,你设为0x0000000e就是说,F8,F0, E8, E0, D8, D0, C8段都设为译码到idsel为0的片子,而c0段译码到idsel为0xe的片子,你给第一个片子分配的空间是3.5M,因此不会出问题,而如果你的BIOS大小是4M的话,你的设定就有问题,会发生起不来的情况。而且你把最后一个512K的idsel设为0xe更是莫名其妙。
注释:F8段的意思就是FFF8 0000到 FFFF FFFF,
F0段的意思就是FFF0 0000到FFF7 FFFF,依次类推。
这个寄存器的设定只对FWH的bios有效,对spi是无效的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值