aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/mips/pci/fixup-sb1250.c23
-rw-r--r--include/linux/pci_ids.h3
2 files changed, 25 insertions, 1 deletions
diff --git a/arch/mips/pci/fixup-sb1250.c b/arch/mips/pci/fixup-sb1250.c
index 13791b78e598..7a7444874e80 100644
--- a/arch/mips/pci/fixup-sb1250.c
+++ b/arch/mips/pci/fixup-sb1250.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * arch/mips/pci/fixup-sb1250.c 2 * arch/mips/pci/fixup-sb1250.c
3 * 3 *
4 * Copyright (C) 2004 MIPS Technologies, Inc. All rights reserved. 4 * Copyright (C) 2004, 2006 MIPS Technologies, Inc. All rights reserved.
5 * Author: Maciej W. Rozycki <macro@mips.com> 5 * Author: Maciej W. Rozycki <macro@mips.com>
6 * 6 *
7 * This program is free software; you can redistribute it and/or 7 * This program is free software; you can redistribute it and/or
@@ -14,6 +14,17 @@
14#include <linux/pci.h> 14#include <linux/pci.h>
15 15
16/* 16/*
17 * Set the the BCM1250, etc. PCI host bridge's TRDY timeout
18 * to the finite max.
19 */
20static void __init quirk_sb1250_pci(struct pci_dev *dev)
21{
22 pci_write_config_byte(dev, 0x40, 0xff);
23}
24DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SIBYTE, PCI_DEVICE_ID_BCM1250_PCI,
25 quirk_sb1250_pci);
26
27/*
17 * The BCM1250, etc. PCI/HT bridge reports as a host bridge. 28 * The BCM1250, etc. PCI/HT bridge reports as a host bridge.
18 */ 29 */
19static void __init quirk_sb1250_ht(struct pci_dev *dev) 30static void __init quirk_sb1250_ht(struct pci_dev *dev)
@@ -22,3 +33,13 @@ static void __init quirk_sb1250_ht(struct pci_dev *dev)
22} 33}
23DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SIBYTE, PCI_DEVICE_ID_BCM1250_HT, 34DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SIBYTE, PCI_DEVICE_ID_BCM1250_HT,
24 quirk_sb1250_ht); 35 quirk_sb1250_ht);
36
37/*
38 * Set the the SP1011 HT/PCI bridge's TRDY timeout to the finite max.
39 */
40static void __init quirk_sp1011(struct pci_dev *dev)
41{
42 pci_write_config_byte(dev, 0x64, 0xff);
43}
44DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SIPACKETS, PCI_DEVICE_ID_SP1011,
45 quirk_sp1011);
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
index c9ffbc3843d5..dc7f573d36e4 100644
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
@@ -1883,6 +1883,8 @@
1883#define PCI_DEVICE_ID_PANACOM_QUADMODEM 0x0400 1883#define PCI_DEVICE_ID_PANACOM_QUADMODEM 0x0400
1884#define PCI_DEVICE_ID_PANACOM_DUALMODEM 0x0402 1884#define PCI_DEVICE_ID_PANACOM_DUALMODEM 0x0402
1885 1885
1886#define PCI_VENDOR_ID_SIPACKETS 0x14d9
1887#define PCI_DEVICE_ID_SP1011 0x0010
1886 1888
1887#define PCI_VENDOR_ID_AFAVLAB 0x14db 1889#define PCI_VENDOR_ID_AFAVLAB 0x14db
1888#define PCI_DEVICE_ID_AFAVLAB_P028 0x2180 1890#define PCI_DEVICE_ID_AFAVLAB_P028 0x2180
@@ -1997,6 +1999,7 @@
1997#define PCI_DEVICE_ID_FARSITE_TE1C 0x1612 1999#define PCI_DEVICE_ID_FARSITE_TE1C 0x1612
1998 2000
1999#define PCI_VENDOR_ID_SIBYTE 0x166d 2001#define PCI_VENDOR_ID_SIBYTE 0x166d
2002#define PCI_DEVICE_ID_BCM1250_PCI 0x0001
2000#define PCI_DEVICE_ID_BCM1250_HT 0x0002 2003#define PCI_DEVICE_ID_BCM1250_HT 0x0002
2001 2004
2002#define PCI_VENDOR_ID_NETCELL 0x169c 2005#define PCI_VENDOR_ID_NETCELL 0x169c