fsl_pci_init enable COMMAND_MEMORY if inbound window
Patch 16e23c3f
removed PCSRBAR allocation. But passing zero windows
to pciauto_setup_device has the side effect of not getting
COMMAND_MEMORY set.
Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
This commit is contained in:
parent
e9d0d52799
commit
cb8250fe4b
|
@ -54,6 +54,7 @@ fsl_pci_init(struct pci_controller *hose)
|
|||
u8 temp8;
|
||||
int r;
|
||||
int bridge;
|
||||
int inbound = 0;
|
||||
volatile ccsr_fsl_pci_t *pci = (ccsr_fsl_pci_t *) hose->cfg_addr;
|
||||
pci_dev_t dev = PCI_BDF(busno,0,0);
|
||||
|
||||
|
@ -74,6 +75,7 @@ fsl_pci_init(struct pci_controller *hose)
|
|||
PIWAR_READ_SNOOP | PIWAR_WRITE_SNOOP |
|
||||
(__ilog2(hose->regions[r].size) - 1);
|
||||
pi++;
|
||||
inbound = hose->regions[r].size > 0;
|
||||
} else { /* Outbound */
|
||||
po->powbar = (hose->regions[r].phys_start >> 12) & 0x000fffff;
|
||||
po->potar = (hose->regions[r].bus_start >> 12) & 0x000fffff;
|
||||
|
@ -138,6 +140,12 @@ fsl_pci_init(struct pci_controller *hose)
|
|||
pciauto_setup_device(hose, dev, 0, hose->pci_mem,
|
||||
hose->pci_prefetch, hose->pci_io);
|
||||
|
||||
if (inbound) {
|
||||
pci_hose_read_config_word(hose, dev, PCI_COMMAND, &temp16);
|
||||
pci_hose_write_config_word(hose, dev, PCI_COMMAND,
|
||||
temp16 | PCI_COMMAND_MEMORY);
|
||||
}
|
||||
|
||||
#ifndef CONFIG_PCI_NOSCAN
|
||||
printf (" Scanning PCI bus %02x\n", hose->current_busno);
|
||||
hose->last_busno = pci_hose_scan_bus(hose,hose->current_busno);
|
||||
|
|
Loading…
Reference in New Issue