From: Felix Radensky <felix@embedded-sol.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Problem with transparent PCI-PCI bridge on Canyonlands
Date: Wed, 13 Jan 2010 13:12:08 +0200 [thread overview]
Message-ID: <4B4DAA88.3090704@embedded-sol.com> (raw)
In-Reply-To: <4B337BFF.9020203@embedded-sol.com>
Hi, Max
Felix Radensky wrote:
> Hi, Max
>
> java33 at inwind.it wrote:
>
>> Hello,
>>
>> I've encountered the same problem and found a solution.
>> In
>> drivers/pci/pci_indirect.c, add the following code block at line 79:
>>
>> #elif
>> defined(CONFIG_460EX)
>> #define INDIRECT_PCI_OP(rw, size, type, op, mask) \
>>
>> static int \
>> indirect_##rw##_config_##size(struct pci_controller *hose,
>> \
>> pci_dev_t dev, int offset, type val) \
>> { \
>> u32 b, d,f;
>> \
>> b = PCI_BUS(dev); d = PCI_DEV(dev); f = PCI_FUNC(dev); \
>> b = b -
>> hose->first_busno; \
>> dev = PCI_BDF(b, d, f); \
>> if (PCI_BUS(dev) >
>> 0) \
>> out_le32(hose->cfg_addr, dev
>> | (offset & 0xfc) | 0x00000001); \
>>
>> else \
>> out_le32
>> (hose->cfg_addr, dev | (offset & 0xfc) | 0x00000000); \
>> cfg_##rw(val, hose-
>>
>>
>>> cfg_data + (offset & mask), type, op); \
>>>
>>>
>> return 0; \
>> }
>> #else
>>
>> Hope
>> this helps
>>
>> Ciao
>>
>> Max Tretene, ACube Systems Srl
>>
>>
> Thanks for help. Your fix indeed helps to avoid infinite loop I had.
> u-boot still hangs for me, now at different place:
>
> U-Boot 2009.11 (Dec 24 2009 - 16:12:11)
>
> CPU: AMCC PowerPC 460EX Rev. A at 600 MHz (PLB=200 OPB=100 EBC=100)
> Security/Kasumi support
> Bootstrap Option H - Boot ROM Location I2C (Addr 0x52)
> Internal PCI arbiter enabled
> 32 kB I-Cache 32 kB D-Cache
> Board: Canyonlands - AMCC PPC460EX Evaluation Board, 2*PCIe, Rev. 14
> I2C: ready
> DRAM: 512 MB (ECC not enabled, 400 MHz, CL3)
> FLASH: 64 MB
> NAND: 256 MiB
> PCI: Bus Dev VenId DevId Class Int
> PCI Autoconfig: Bus Memory region: [0x80000000-0x8fffffff],
> Physical Memory [80000000-8fffffffx]
> PCI Autoconfig: Bus I/O region: [0x0-0xffff],
> Physical Memory: [d8000000-d800ffff]
> PCI Scan: Found Bus 0, Device 6, Function 0
> PCI Autoconfig: Found P2P bridge, device 6
>
> The hang is at
>
> pci_hose_read_config_byte(hose, dev, PCI_HEADER_TYPE, &header_type);
>
> invoked from pci_hose_scan_bus().
>
> Any ideas ?
>
> Thanks a lot.
>
> Felix.
>
It appears that PLX evaluation board I was using on Canyonlands was
broken. On the
custom board based on 460EX and the same PLX your fix helps to avoid
infinite loop
in bridge detection. U-boot detects both PLX and device behind it.
It would be great if you could submit your fix for mainline inclusion.
Thanks a lot for your help, much appreciated !
Felix.
next prev parent reply other threads:[~2010-01-13 11:12 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-24 12:08 [U-Boot] Problem with transparent PCI-PCI bridge on Canyonlands java33 at inwind.it
2009-12-24 14:34 ` Felix Radensky
2010-01-13 11:12 ` Felix Radensky [this message]
-- strict thread matches above, loose matches on Subject: below --
2009-12-09 18:02 Felix Radensky
2009-12-09 20:49 ` Wolfgang Denk
2009-12-09 22:10 ` Felix Radensky
2009-12-09 22:21 ` Felix Radensky
2009-12-09 23:01 ` Wolfgang Denk
2009-12-09 23:15 ` Felix Radensky
2009-12-09 23:16 ` Feng Kan
2009-12-10 22:01 ` Felix Radensky
2009-12-15 7:30 ` Felix Radensky
2009-12-15 9:10 ` Stefan Roese
2009-12-15 12:42 ` Felix Radensky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B4DAA88.3090704@embedded-sol.com \
--to=felix@embedded-sol.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.