Expansion ROM Base Address Register @0x38

This register is used to define the base address and range of an optional expansion ROM. The address bits [10:0] of the Expansion ROM Base Address are always set to 0. Thus, the ROM address space always starts at a 2 Kbyte boundary. The maximum allowed size of the expansion ROM address space is 16 Mbytes. The aperture of the Expansion ROM BAR can be set to any power of 2 in the range from 2 Kbytes to 16 Mbytes by programming the Expansion ROM BAR control field in the Root Complex BAR configuration register.

Table 1. i_expan_rom_base_addr
Bits SW Name Description Reset
0 R/W Address Decode Enable [ADE] This bit must be set to 1 by the configuration software to enable the expansion ROM. 0x0
10:1 R Reserved [R1] Reserved 0x0
11 R ROM Base Address [RBARO] Defines the base address and range of the expansion ROM address space. The number of writeable bits in this field determines the size of the range (BAR aperture). All other bits are not writeable, and are read as 0's. 0x0
31:12 R/W ROM Base Address [RBARW] Defines the base address and range of the expansion ROM address space. The number of writeable bits in this field determines the size of the range (BAR aperture). All other bits are not writeable, and are read as 0's. 0x0