mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: <pazke@orbita1.ru>
To: linux-kernel@vger.kernel.org
Subject: [PATCH] SMSC SLC90E66: IRQ router support and PCI quirk
Date: Tue, 26 Jun 2001 17:53:26 +0400	[thread overview]
Message-ID: <20010626175326.A29296@orbita1.ru> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 571 bytes --]

Hi all,

SMSC SLC90E66 is southbridge chip, designed to be almost exact clone of
Intel PIIX4. So it needs same handling as an original chip.

Attached two patches against 2.4.5-ac17, 
first adds IRQ router support (using functions for Intel PIIX4),
second adds quirk handling (ACPI/SMBus resources) same as for original PIIX4.

Both patches are untested, written according to SLC90E66 datasheet.

Best regards.

-- 
Andrey Panin            | Embedded systems software engineer
pazke@orbita1.ru        | PGP key: http://www.orbita1.ru/~pazke/AndreyPanin.asc

[-- Attachment #1.2: patch-SLC90E66-pirq --]
[-- Type: text/plain, Size: 1022 bytes --]

diff -ur linux.vanilla/arch/i386/kernel/pci-irq.c linux/arch/i386/kernel/pci-irq.c
--- linux.vanilla/arch/i386/kernel/pci-irq.c	Tue Jun 26 10:38:25 2001
+++ linux/arch/i386/kernel/pci-irq.c	Tue Jun 26 11:07:27 2001
@@ -174,7 +174,7 @@
 }
 
 /*
- * The Intel PIIX4 pirq rules are fairly simple: "pirq" is
+ * The Intel PIIX4 and SMSC SLC90E66 pirq rules are fairly simple: "pirq" is
  * just a pointer to the config space.
  */
 static int pirq_piix_get(struct pci_dev *router, struct pci_dev *dev, int pirq)
@@ -448,6 +448,7 @@
 	{ "PIIX", PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82371MX,   pirq_piix_get, pirq_piix_set },
 	{ "PIIX", PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82443MX_0, pirq_piix_get, pirq_piix_set },
 	{ "PIIX", PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_0, pirq_piix_get, pirq_piix_set },
+	{ "SLC90E66", PCI_VENDOR_ID_EFAR, PCI_DEVICE_ID_EFAR_SLC90E66_0, pirq_piix_get, pirq_piix_set },
 
 	{ "ALI", PCI_VENDOR_ID_AL, PCI_DEVICE_ID_AL_M1533, pirq_ali_get, pirq_ali_set },
 

[-- Attachment #1.3: patch-SLC90E66-quirk --]
[-- Type: text/plain, Size: 1901 bytes --]

diff -ur linux.vanilla/arch/i386/kernel/pci-pc.c linux/arch/i386/kernel/pci-pc.c
--- linux.vanilla/arch/i386/kernel/pci-pc.c	Tue Jun 26 10:38:25 2001
+++ linux/arch/i386/kernel/pci-pc.c	Tue Jun 26 15:03:16 2001
@@ -943,7 +943,7 @@
 static void __init pci_fixup_piix4_acpi(struct pci_dev *d)
 {
 	/*
-	 * PIIX4 ACPI device: hardwired IRQ9
+	 * Intel PIIX4 and SMSC SLC90E66 ACPI device: hardwired IRQ9
 	 */
 	d->irq = 9;
 }
@@ -996,6 +996,7 @@
  	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C598_1,	pci_fixup_via691_2 },
 #endif 	
  	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_82371AB_3,	pci_fixup_piix4_acpi },
+	{ PCI_FIXUP_HEADER,	PCI_DEVICE_ID_EFAR,	PCI_DEVICE_ID_EFAR_SLC90E66_3,	pci_fixup_piix4_acpi },
 	{ 0 }
 };
 
diff -ur linux.vanilla/drivers/pci/quirks.c linux/drivers/pci/quirks.c
--- linux.vanilla/drivers/pci/quirks.c	Tue Jun 26 10:37:55 2001
+++ linux/drivers/pci/quirks.c	Tue Jun 26 15:00:31 2001
@@ -209,7 +209,7 @@
 }
 
 /*
- * PIIX4 ACPI: Two IO regions pointed to by longwords at
+ * Intel PIIX4 and SMSC SLC90E66 ACPI: Two IO regions pointed to by longwords at
  *	0x40 (64 bytes of ACPI registers)
  *	0x90 (32 bytes of SMB registers)
  */
@@ -423,6 +423,7 @@
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C586_3,	quirk_vt82c586_acpi },
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C686_4,	quirk_vt82c686_acpi },
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_82371AB_3,	quirk_piix4_acpi },
+	{ PCI_FIXUP_HEADER,	PCI_DEVICE_ID_EFAR,	PCI_DEVICE_ID_EFAR_SLC90E66_3,	quirk_piix4_acpi },
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_AL,	PCI_DEVICE_ID_AL_M7101,		quirk_ali7101_acpi },
  	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_82371SB_2,	quirk_piix3_usb },
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_82371AB_2,	quirk_piix3_usb },

[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]

                 reply	other threads:[~2001-06-26 13:54 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=20010626175326.A29296@orbita1.ru \
    --to=pazke@orbita1.ru \
    --cc=linux-kernel@vger.kernel.org \
    /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

all inboxes | Powered by JetHome®