public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Kristen Accardi <kristen.c.accardi@intel.com>
To: linux-kernel@vger.kernel.org
Cc: greg@kroah.com, pcihpd-discuss@lists.sourceforge.net,
	len.brown@intel.com, linux-acpi@vger.kernel.org, pavel@ucw.cz
Subject: [patch 4/4]  pci: quirk for IBM Dock II cardbus controllers
Date: Tue, 17 Jan 2006 16:57:04 -0800	[thread overview]
Message-ID: <1137545824.19858.49.camel@whizzy> (raw)
In-Reply-To: 20060116200218.275371000@whizzy

The IBM Dock II cardbus bridges require some extra configuration
before Yenta is loaded in order to setup the Interrupts to be
routed properly. 

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>

 drivers/pci/quirks.c |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+)

--- linux-2.6.15-mm.orig/drivers/pci/quirks.c
+++ linux-2.6.15-mm/drivers/pci/quirks.c
@@ -1242,6 +1242,33 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_IN
 DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_PXHV,	quirk_pcie_pxh);
 

+/*
+ * Fixup the cardbus bridges on the IBM Dock II docking station
+ */
+static void __devinit quirk_ibm_dock2_cardbus(struct pci_dev *dev)
+{
+	u32 val;
+
+	/*
+	 * tie the 2 interrupt pins to INTA, and configure the
+	 * multifunction routing register to handle this.
+	 */
+	if ((dev->subsystem_vendor == PCI_VENDOR_ID_IBM) &&
+		(dev->subsystem_device == 0x0148)) {
+		printk(KERN_INFO "PCI: Found IBM Dock II Cardbus Bridge "
+			"applying quirk\n");
+		pci_read_config_dword(dev, 0x8c, &val);
+		val = ((val & 0xffffff00) | 0x1002);
+		pci_write_config_dword(dev, 0x8c, val);
+		pci_read_config_dword(dev, 0x80, &val);
+		val = ((val & 0x00ffff00) | 0x2864c077);
+		pci_write_config_dword(dev, 0x80, val);
+	}
+}
+
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_TI, PCI_DEVICE_ID_TI_1420,
+				quirk_ibm_dock2_cardbus);
+
 static void __devinit quirk_netmos(struct pci_dev *dev)
 {
 	unsigned int num_parallel = (dev->subsystem_device & 0xf0) >> 4;


      parent reply	other threads:[~2006-01-18  0:54 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20060116200218.275371000@whizzy>
2006-01-18  0:56 ` [patch 1/4] pci: return max reserved busnr Kristen Accardi
2006-01-18  0:56 ` [patch 2/4] acpiphp: handle dock bridges Kristen Accardi
2006-01-18  2:26   ` [Pcihpd-discuss] " Kenji Kaneshige
2006-01-18  5:11     ` Greg KH
2006-01-18  3:55   ` Dmitry Torokhov
2006-01-18  4:43   ` [Pcihpd-discuss] " Kenji Kaneshige
2006-01-20  3:24   ` MUNEDA Takahiro
2006-01-20 17:56     ` Kristen Accardi
2006-01-21  1:55   ` [PATCH] acpiphp: treat dck separate from dock bridge Kristen Accardi
2006-01-21 11:27     ` Pavel Machek
2006-01-21 11:29     ` Pavel Machek
2006-01-21 12:10     ` Pavel Machek
2006-01-23 19:20       ` Kristen Accardi
2006-01-18  0:57 ` [patch 3/4] pci: really fix parent's subordinate busnr Kristen Accardi
2006-01-18  0:57 ` Kristen Accardi [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1137545824.19858.49.camel@whizzy \
    --to=kristen.c.accardi@intel.com \
    --cc=greg@kroah.com \
    --cc=len.brown@intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=pcihpd-discuss@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox