diff options
author | Peter Tyser <ptyser@xes-inc.com> | 2008-10-29 12:39:27 -0500 |
---|---|---|
committer | Andrew Fleming-AFLEMING <afleming@freescale.com> | 2008-12-19 18:17:22 -0600 |
commit | 487dcb4fb89be0992bc06ec1341090017bd9cf2f (patch) | |
tree | bccbd83d613ff9c44abc6fcd3048b38394327a9e | |
parent | ccf0fdd02b97323f8caae18d06cc9daeac2f192f (diff) | |
download | u-boot-imx-487dcb4fb89be0992bc06ec1341090017bd9cf2f.zip u-boot-imx-487dcb4fb89be0992bc06ec1341090017bd9cf2f.tar.gz u-boot-imx-487dcb4fb89be0992bc06ec1341090017bd9cf2f.tar.bz2 |
85xx: Enable inbound PCI config cycles for X-ES boards
Update X-ES Freescale boards to allow inbound PCI configuration
cycles when configured as agent/endpoint.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
-rw-r--r-- | board/xes/common/fsl_85xx_pci.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/board/xes/common/fsl_85xx_pci.c b/board/xes/common/fsl_85xx_pci.c index b8e363e..4b04881 100644 --- a/board/xes/common/fsl_85xx_pci.c +++ b/board/xes/common/fsl_85xx_pci.c @@ -29,6 +29,7 @@ #include <fdt_support.h> extern int fsl_pci_setup_inbound_windows(struct pci_region *r); +extern void fsl_pci_config_unlock(struct pci_controller *hose); extern void fsl_pci_init(struct pci_controller *hose); int first_free_busno = 0; @@ -138,6 +139,10 @@ void pci_init_board(void) fsl_pci_init(hose); + /* Unlock inbound PCI configuration cycles */ + if (!host) + fsl_pci_config_unlock(hose); + first_free_busno = hose->last_busno+1; printf(" PCIE1 on bus %02x - %02x\n", hose->first_busno, hose->last_busno); @@ -187,6 +192,11 @@ void pci_init_board(void) (int)&pci->cfg_data); fsl_pci_init(hose); + + /* Unlock inbound PCI configuration cycles */ + if (!host) + fsl_pci_config_unlock(hose); + first_free_busno = hose->last_busno+1; printf(" PCIE2 on bus %02x - %02x\n", hose->first_busno, hose->last_busno); @@ -237,6 +247,11 @@ void pci_init_board(void) (int)&pci->cfg_data); fsl_pci_init(hose); + + /* Unlock inbound PCI configuration cycles */ + if (!host) + fsl_pci_config_unlock(hose); + first_free_busno = hose->last_busno+1; printf(" PCIE3 on bus %02x - %02x\n", hose->first_busno, hose->last_busno); |