#关于 pcie bar的 配置 问题#
1 .bar reg寄存器 的配置
- 低 4bit表征了 该 bar的属性 ,prefetch与否,memory bar or io bar, 32位 or 64位 bar
- 紧接着的 是 不可操作的 bit位,也就是 被 mask的 位,决定了 bar size.这个不可操作的 位,由bar mask寄存器决定。
- 在往上 的 高bit位 为 可配的 bit
bar mask 寄存器的 配置
- bit0等于1代表 使能这个 bar
- 其他位 写 1代表mask的大小。
配置顺序问题
mask寄存器 是linkup之前 就 由 firmware配好,决定了 bar size,host 通过 写全f,然后 读,获得bar size,然后 配 基地址 。