diff options
author | Stefan Roese <sr@denx.de> | 2009-11-12 17:19:37 +0100 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2009-11-19 11:35:34 +0100 |
commit | 6c70049bd14e8e81764570732be7f34a89831f09 (patch) | |
tree | 9e2028ab7a017c9a8f78ac62a99e135bb5b23630 /board/esd/pmc440 | |
parent | a760b0203155da6fb8b8e9086169bb87d09d76fa (diff) | |
download | u-boot-imx-6c70049bd14e8e81764570732be7f34a89831f09.zip u-boot-imx-6c70049bd14e8e81764570732be7f34a89831f09.tar.gz u-boot-imx-6c70049bd14e8e81764570732be7f34a89831f09.tar.bz2 |
ppc4xx: Consolidate pci_master_init() function
This patch removes the duplicted implementations of the pci_master_init()
function by introducing a weak default function for it. It can be
overridden by a board specific version.
Signed-off-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'board/esd/pmc440')
-rw-r--r-- | board/esd/pmc440/pmc440.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/board/esd/pmc440/pmc440.c b/board/esd/pmc440/pmc440.c index c5dc486..d0ff080 100644 --- a/board/esd/pmc440/pmc440.c +++ b/board/esd/pmc440/pmc440.c @@ -39,6 +39,8 @@ #include <miiphy.h> #endif #include <serial.h> +#include <asm/4xx_pci.h> + #include "fpga.h" #include "pmc440.h" @@ -600,24 +602,16 @@ void pci_target_init(struct pci_controller *hose) #endif /* defined(CONFIG_PCI) && defined(CONFIG_SYS_PCI_TARGET_INIT) */ /* - * pci_master_init + * Override weak default pci_master_init() */ #if defined(CONFIG_PCI) && defined(CONFIG_SYS_PCI_MASTER_INIT) void pci_master_init(struct pci_controller *hose) { - unsigned short temp_short; - /* - * Write the PowerPC440 EP PCI Configuration regs. - * Enable PowerPC440 EP to be a master on the PCI bus (PMM). - * Enable PowerPC440 EP to act as a PCI memory target (PTM). + * Only configure the master in monach mode */ - if (is_monarch()) { - pci_read_config_word(0, PCI_COMMAND, &temp_short); - pci_write_config_word(0, PCI_COMMAND, - temp_short | PCI_COMMAND_MASTER | - PCI_COMMAND_MEMORY); - } + if (is_monarch()) + __pci_master_init(hose); } #endif /* defined(CONFIG_PCI) && defined(CONFIG_SYS_PCI_MASTER_INIT) */ |