[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: PCI config space and expansion ROM problem
Possibly too much expansion ROM space.
Although a "smart" BIOS should examine the
ROM in place, I think a dumb one might try
to copy it down to low memory before examining
it. If there is not enough room in low memory,
and the BIOS is dumb enough to copy anyway, it
could destroy existing information, which could
lead to the boot-time hang.
The video BIOS is guaranteed C0000, so (usually)
the earliest the NIC ROM could start would be
C8000. If the system BIOS copies 256K, that takes
it up to E8000, possibly within the system BIOS's
initialization code.
Are there different brands of BIOS on the different
systems?
Pat
Ajit Madhekar wrote:
>
> Hi there,
> I am experimenting with two network interface cards , lets call them card1
> and card2.
>
> Card1 :
> Asks for 1K memory mapped space
> Asks for 256 bytes I/O space
> No Expansion ROM space asked. and no support for exp ROM on the card
> seen.
> At PCI config address 0x10 I/O is asked.
> At PCI configaddress 0x14 memory is asked
> 64 bit addressing support.
>
> Card2 :
> Asks for 1K memory mapped space
> Asks for 256 bytes I/O space
> Asks for 256 K byte Exp ROM space.but no exp ROM on the card seen.
> At PCI config address 0x10 memory space is asked.
> At PCI config address 0x14 I/O space is asked
> 64 bit addressing support.
>
> Card1 boots in all the available systems with me. ( I tried on 8/9 systems
> with diff chip sets, diff O/S , diff. BIOSs)
> One system refuse to boot when Card2 is plugged into it. The same system
> with card1 boots.
>
> I tried to observe the cycles and found that at address 0x000E0000 ( memory
> read ) the DEVSEL# is given by some other target but no TRDY# is given.
> card2 just waits for the bus to become free as this cycle is not run onto
> it.
>
> With the card2 removed , the same cycle runs fine.
>
> What can be the problem ?
>
> I am suspecting 2 areas.
>
> 1) the large space asked by card2 for EXP. ROM (256 k )
> As the image will be copied into system RAM 0xC0000 to 0xDFFFF,
> And BIOS should copy video card exp ROM image 0xC0000 onwords .and then
> the NIC ROM will be copied.
> What can be the max space asked by a NIC expansion ROM ? In what space the
> Video Expansion ROM fits useually ?
>
> 2) I/O and memory address interchanged at 0x10, 0x14
> I tried with other 2-3 NIC cards of diff mfg and found that all
> implement 0x10 I/O and 0x14 memory at config space.
> Is it stated in PCI 2.1/2.2 or it is a rule of thumb to follow if I/O and
> memory both to be supported.
>
> can anybody help
>
> Regards,
> Ajit
--
Patrick Maupin
5216 Crooked Oak Cove
Austin, Texas 78749
512 891 6037