This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: PCI arbiter settings
- From: Jonathan Larmour <jifl at eCosCentric dot com>
- To: Nick Garnett <nickg at ecoscentric dot com>
- Cc: mohanlal jangir <mohanlaljangir at hotmail dot com>,mailing-list ecos <ecos-discuss at sources dot redhat dot com>
- Date: Fri, 01 Aug 2003 01:32:29 +0100
- Subject: Re: [ECOS] PCI arbiter settings
- References: <Law11-OE5440sP2Bk870000ac29@hotmail.com> <3F27A7C0.9060703@eCosCentric.com> <Law11-OE36oELCMIAw20000ad7b@hotmail.com> <m3n0ewgobc.fsf@miso.calivar.com> <Law11-OE34j7sKRrBad0000c0de@hotmail.com> <m3fzkn9cee.fsf@miso.calivar.com>
Nick Garnett wrote:
Also I see BAR[0] contains 0 but sebsequent base address registers do not. I
do see a code snippet in function cyg_pci_get_device_info as follows:
// No reason to scan beyond first inactive BAR.
if (bar == 0) {
dev_info->num_bars = i;
break;
}
This code does not care about sebsequent BARs if BAR[0] is zero and that is
the case here. That leaves dev_info.base_map[] uninitialised which creates
problem later. I don't know what exactly is problem. Kindly look at the
dumped message and let me know where to find the problem.
I thought you had moved past this by temporarily commenting that test
out. I thought we were looking for a different problem.
However, that's not a permanent solution since the PCI spec says that
during configuration the end of the active BARs is marked by a zero
BAR. I'm not sure what the consequences of reading BARs beyond that
would be.
Hmm... according to <http://bugs.ecos.sourceware.org/show_bug.cgi?id=55891>:
"in the function cyg_pci_get_device_info the probe function stops when an
inactive bar is found. This is not right. It free to choose any of the
BAR's to use in the hardware so all 6 BARS have to be scanned. (see PCI-
spec Revision 2.2 page 204)"
This may not be the problem right in this case... I just notice what you
say doesn't agree with what's quoted above with page ref.
Jifl
--
eCosCentric http://www.eCosCentric.com/ The eCos and RedBoot experts
--[ "You can complain because roses have thorns, or you ]--
--[ can rejoice because thorns have roses." -Lincoln ]-- Opinions==mine
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss