Re: Slef Test Failed
Donald Becker <[email protected]> Wed, 1 Feb 2006 15:03:19 -0800 (PST)
| Newsgroups | gmane.linux.drivers.eepro100.devel |
|---|---|
| Message-ID | <[email protected]> |
On Wed, 1 Feb 2006, aman-ul- haq wrote: > i am working with eepro driver on mips processor with my out own > manufactured PCI controller. we have been able to configure card get it= 's > configuration space and read etc. When driver is loaded eeprom checksum > is passed but self test is gets failed. When is dig it down to bit leve= l > i noticed there are two lines before self test in driver > =A0 > =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 self_test_results[0] =3D 0; > =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 self_test_results[1] =3D -1; > =A0 > Now when > =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 outl(tx_ring_dma | PortSelfTest, ioaddr + > SCBPort); > statement is executed which i=A0 think may be changing both=A0 > self_test_results[0] and=A0 self_test_results[1] that is total of 8 byt= es. I think that you already know the answer here... > But when i return from this statement STATUS register in my controller > states that master abort has occured ...Which means a PCI transaction did not complete... > and through debugger when i print > the values of self_test_results[0] and=A0 self_test_results[1]=A0 then > =A0 > =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0self_test_results[0] =3D 0x4f4518b; > =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 self_test_results[1] =3D -1; > which means that IO has been done on self_test_results[0] that now > contains checksum but nothing has been done to self_test_results[1] , > that's why checksum fails. > Is this the problem of my settings in controller register? Almost certainly yes. The chip did not complete one of the bus=20 transactions. The master abort confirms this. > Is my > controller is not dealing with multibyte transfers? That would be my first guess. But it also might not be completing a PCI=20 bus transaction correctly. Or there might be a 32/64 bit address or=20 data transfer issue.=20 --=20 Donald Becker [email protected] Scyld Software Scyld Beowulf cluster systems 914 Bay Ridge Road, Suite 220 www.scyld.com Annapolis MD 21403 410-990-9993