From mboxrd@z Thu Jan 1 00:00:00 1970 From: Felix Radensky Date: Mon, 02 Mar 2009 10:37:26 +0200 Subject: [U-Boot] PCI-E problems on Kilauea board In-Reply-To: <49AAA314.50403@embedded-sol.com> References: <499997E2.10303@embedded-sol.com> <200902171516.08780.sr@denx.de> <499ACB19.5000308@embedded-sol.com> <200902171544.00643.sr@denx.de> <49AAA314.50403@embedded-sol.com> Message-ID: <49AB9AC6.90900@embedded-sol.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Felix Radensky wrote: > Stefan Roese wrote: > >> On Tuesday 17 February 2009, Felix Radensky wrote: >> >> >>>>> 2. Another problem is that in bootstrap configuration B (CPU - 333 Mhz, >>>>> PLB 166MHz) >>>>> PCI-E cards are not recognized in any slot. This happens with all >>>>> u-boot versions I've >>>>> tested. Linux also does not recognize PCI-E cards. Kilauea board >>>>> manual says that PCI >>>>> clock is determined by CPLD. Could it be CPLD/FPGA bug ? >>>>> >>>>> >>>> Is bootstrap option C working? >>>> >>>> >>> No, C doesn't work either. The card I'm testing with is Intel Gigabit >>> Ethernet adapter (PRO/1000 PT 1x) >>> >>> >> Perhaps its only working with the I2C bootstrap settings. Could be that one >> (or more) register values are configured via the I2C bootstrap EEPROM >> compared to the hardwired bootstrap option. Please check the users manual and >> compare the register settings of I2C bootstrap option H to option B or C. >> >> >> > > I did some more tests, and have found the following: > > 1. When system powers up in bootstrap option B or C u-boot does not > detect PCI-E device > PCI: Bus Dev VenId DevId Class Int > PCIE0: link is not up. > PCIE0: initialization as root-complex failed > PCIE1: link is not up. > PCIE1: initialization as root-complex failed > > 2. Linux detects PCI-E device, but does not detect the link: > PCIE1: Checking link... > PCIE1: Device detected, waiting for link... > PCIE1: Link up failed > > 3. If I execute reboot from linux, u-boot now detects the device > PCI: Bus Dev VenId DevId Class Int > PCIE0: link is not up. > PCIE0: initialization as root-complex failed > PCIE1: successfully set as root-complex > 01 00 8086 10b9 0200 00 > > 4. After that Linux detects both device and link > PCIE1: Checking link... > PCIE1: Device detected, waiting for link... > PCIE1: link is up ! > > -bash-3.2# lspci > 0000:00:00.0 PCI bridge: Unknown device aaa0:bed0 (rev 01) > 0001:40:00.0 PCI bridge: Unknown device aaa1:bed1 (rev 01) > 0001:41:00.0 Ethernet controller: Intel Corporation 82572EI > Gigabit Ethernet Controller (Copper) (rev 06) > > Also, I've compared the values of SDR0_SDSTP0-SDR0_SDSTP3 registers in > bootstrap options C and H > and didn't find anything suspicious. There are differences in various > divisor values, but that is expected. > Tested with u-boot 2009.03-rc1 and linux-2.6.29-rc5 > > > It is even more simple. It's enough to power up the board and run "reset" in u-boot, to make u-boot recognize the card when it comes up. > > _______________________________________________ > U-Boot mailing list > U-Boot at lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot >