[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: PCI Memory/IO Address Mapping...
Hello Abraham,
I am sorry about the late answer.
> But i would be grateful if u could clarify some doubts
> that i have regarding ur posting...
>
> > It depends on an OS. There is no much need to keep
> >the whole
> >copy of the config space somewhere else. Information
> >in the
> >config. space may often change.
>
> when might information in the cofig. space change?
> during a wake-up?
1. There is so called Status Register in the config. space that
contains a few bits which may change any time (Signalled/Received
Target/Master Abort, parity error occured).
2. The resource allocation information as such may change not only
after a wake-up (i.e., CPU restart and execution of POST) but also
after a hot-plug (normal PCI boards are not hot-pluggable but they
can be located behind a hot-pluggable bridge (e.g. a docking station
containing a PCMCIA<->PCI bridge).
> >> I am afraid, I do not understand your question
> >well. I can
> >say only that you obviously do need to use some
> >memory for
> >storage of address range information.
>
> what i meant is: do we have to use additional memory
> for the purpose of using configuration registers ...
> can we adjust with just the PC memory.
Yes, you have to. You were speaking about a target only
board, such a board does not have access to the system
memory at all. The card shall have a way to respond to
a config. access cycle with no intermediate DMA (since
it has yet no information about bridges in the system). And
no need to say that implementing of such a hypothetical
machine is definitely a more complicated task than the
straghtforward way. Then, many of fields in the config
space registers should be hardcoded to appropriate values.
Then, at least you need to latch into your address decoding
logic the higher bits of values stored in BAR(s).
Regards,
Alexander
------------------
Get free mailbox 20 Mb at http://www.hotbox.ru