pci host bridge address assignment question

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

    I am trying to figure out for a PCI host bridge how the address
assignment is generated, and I have this question.

    Let's say the host uses some other bus, bus foo, as the primary bus,
then use foo_to_pci as PCI host bridge to connect PCI world. Then in
assigning the system address map, the host may pre-allocate a big chunk
of IO and memory space to PCI. Let's just say the PCI memory space is
[0xA0000000:0xFFFFFFFF] and PCI IO space is [0x90000000:0x9FFFFFFF].

   Then the PCI init code in system bootup should assign all the PCI
device address map, IO and memory, to these 2 ranges respectively.

    So far it sounds all natural. But in reading some Linux document it
mentions that PCI IO address "always" starts at 0x0. Is it real? The
foo_to_pci bridge does have address alias functionality, then do I have
to alias IO space from [0x90000000:0x9FFFFFFF] to [0x0:0x0FFFFFFF]?


Site Timeline