[U-Boot] Problem with transparent PCI-PCI bridge on Canyonlands

java33 at inwind.it
2009-12-24T12:08:33Z

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