summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ks8695/pci.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-08-13 02:44:53 +0200
committerDavid S. Miller <davem@davemloft.net>2009-08-13 02:44:53 +0200
commitaa11d958d1a6572eda08214d7c6a735804fe48a5 (patch)
treed025b05270ad1e010660d17eeadc6ac3c1abbd7d /arch/arm/mach-ks8695/pci.c
parentnet,pppoe: fixup module init/exit subsequent calls (diff)
parentRevert "libertas: Read buffer overflow" (diff)
downloadlinux-aa11d958d1a6572eda08214d7c6a735804fe48a5.tar.xz
linux-aa11d958d1a6572eda08214d7c6a735804fe48a5.zip
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: arch/microblaze/include/asm/socket.h
Diffstat (limited to 'arch/arm/mach-ks8695/pci.c')
-rw-r--r--arch/arm/mach-ks8695/pci.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-ks8695/pci.c b/arch/arm/mach-ks8695/pci.c
index f5ebcc0fcab9..78499667eb7b 100644
--- a/arch/arm/mach-ks8695/pci.c
+++ b/arch/arm/mach-ks8695/pci.c
@@ -245,6 +245,9 @@ static int ks8695_pci_fault(unsigned long addr, unsigned int fsr, struct pt_regs
static void __init ks8695_pci_preinit(void)
{
+ /* make software reset to avoid freeze if PCI bus was messed up */
+ __raw_writel(0x80000000, KS8695_PCI_VA + KS8695_PBCS);
+
/* stage 1 initialization, subid, subdevice = 0x0001 */
__raw_writel(0x00010001, KS8695_PCI_VA + KS8695_CRCSID);