public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mathias Kretschmer <posting@blx4.net>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: linux-kernel@vger.kernel.org
Subject: VIA VT6410 IDE support for 2.6.11-rc3/via82cxxx
Date: Mon, 07 Feb 2005 09:16:24 -0800	[thread overview]
Message-ID: <4207A268.3040804@blx4.net> (raw)
In-Reply-To: <4206A1F5.6050305@blx4.net>

[-- Attachment #1: Type: text/plain, Size: 861 bytes --]

Mathias Kretschmer wrote:
> Mathias Kretschmer wrote:
> 
>> Jeff Garzik wrote:
>>
>>> Mathias Kretschmer wrote:
>>>
>>>> hi,
>>>>
>>>> I found an older version of this patch (against 2.4.22) on some 
>>>> website. After a little bit of editing it applied cleanly to 2.4.27 
>>>> (and now 2.4.28). It works fine for me on a ASUS P4P800-Deluxe with 
>>>> 4x 300GB disks.
>>>>
>>>> Maybe someone finds this patch helpful. Any reason why the original 
>>>> patch did not make it into the kernel ?
>>>
>>>
>>>
>>>
>>> Why not add it to the existing via82cxxx driver, and get better 
>>> performance and device tuning?
> 
> 
> OK, the attached patch adds support for the VIA 6410 chip to the 
> via82cxxx driver (instead of the generic driver).
> I've tested it on the board mentioned above. Works fine for me.
> 
> Cheers,
> 
> Mathias

as above, but for 2.6.11-rc3

[-- Attachment #2: 2.6.11-rc3-vt6410.patch --]
[-- Type: text/plain, Size: 2866 bytes --]

diff -ruaN linux-2.6.10/drivers/ide/pci/via82cxxx.c linux-2.6.10-vt6410/drivers/ide/pci/via82cxxx.c
--- linux-2.6.10/drivers/ide/pci/via82cxxx.c	2005-02-07 08:43:05.899657752 -0800
+++ linux-2.6.10-vt6410/drivers/ide/pci/via82cxxx.c	2005-02-07 08:47:24.001420320 -0800
@@ -79,6 +79,7 @@
 	u8 rev_max;
 	u16 flags;
 } via_isa_bridges[] = {
+	{ "vt6410",	PCI_DEVICE_ID_VIA_6410,     0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
 	{ "vt8237",	PCI_DEVICE_ID_VIA_8237,     0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
 	{ "vt8235",	PCI_DEVICE_ID_VIA_8235,     0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
 	{ "vt8233a",	PCI_DEVICE_ID_VIA_8233A,    0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
@@ -619,24 +620,35 @@
 	hwif->drives[1].autodma = hwif->autodma;
 }
 
-static ide_pci_device_t via82cxxx_chipset __devinitdata = {
-	.name		= "VP_IDE",
-	.init_chipset	= init_chipset_via82cxxx,
-	.init_hwif	= init_hwif_via82cxxx,
-	.channels	= 2,
-	.autodma	= NOAUTODMA,
-	.enablebits	= {{0x40,0x02,0x02}, {0x40,0x01,0x01}},
-	.bootable	= ON_BOARD,
+static ide_pci_device_t via82cxxx_chipsets[] __devinitdata = {
+	{ /* 0 */
+		.name		= "VP_IDE",
+		.init_chipset	= init_chipset_via82cxxx,
+		.init_hwif	= init_hwif_via82cxxx,
+		.channels	= 2,
+		.autodma	= NOAUTODMA,
+		.enablebits	= {{0x40,0x02,0x02}, {0x40,0x01,0x01}},
+		.bootable	= ON_BOARD
+	},{ /* 1 */
+                .name           = "VP_IDE",
+                .init_chipset   = init_chipset_via82cxxx,
+                .init_hwif      = init_hwif_via82cxxx,
+                .channels       = 2,
+                .autodma        = AUTODMA,
+                .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
+                .bootable       = ON_BOARD,
+	}
 };
 
 static int __devinit via_init_one(struct pci_dev *dev, const struct pci_device_id *id)
 {
-	return ide_setup_pci_device(dev, &via82cxxx_chipset);
+	return ide_setup_pci_device(dev, &via82cxxx_chipsets[id->driver_data]);
 }
 
 static struct pci_device_id via_pci_tbl[] = {
 	{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
 	{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+	{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_6410,     PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1},
 	{ 0, },
 };
 MODULE_DEVICE_TABLE(pci, via_pci_tbl);
diff -ruaN linux-2.6.10/include/linux/pci_ids.h linux-2.6.10-vt6410/include/linux/pci_ids.h
--- linux-2.6.10/include/linux/pci_ids.h	2005-02-07 08:43:10.560949128 -0800
+++ linux-2.6.10-vt6410/include/linux/pci_ids.h	2005-02-06 17:42:54.836256000 -0800
@@ -1280,6 +1280,7 @@
 #define PCI_DEVICE_ID_VIA_8703_51_0	0x3148
 #define PCI_DEVICE_ID_VIA_8237_SATA	0x3149
 #define PCI_DEVICE_ID_VIA_XN266		0x3156
+#define PCI_DEVICE_ID_VIA_6410          0x3164
 #define PCI_DEVICE_ID_VIA_8754C_0	0x3168
 #define PCI_DEVICE_ID_VIA_8235		0x3177
 #define PCI_DEVICE_ID_VIA_P4N333	0x3178

  reply	other threads:[~2005-02-07 17:17 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-23  7:23 VIA VT610 IDE support for 2.4.28 (trivial) Mathias Kretschmer
2004-11-23 18:27 ` Jeff Garzik
2004-11-23 20:48   ` Mathias Kretschmer
2005-02-06 23:02     ` VIA VT610 IDE support for 2.4.28 (trivial) - now for 2.4.29/via82cxxx Mathias Kretschmer
2005-02-07 17:16       ` Mathias Kretschmer [this message]
2005-02-07 17:27         ` VIA VT6410 IDE support for 2.6.11-rc3/via82cxxx Jeff Garzik
2005-02-11 18:33           ` Bartlomiej Zolnierkiewicz
2005-08-15 11:50             ` Sergey Vlasov
2005-08-17 13:16             ` Sergey Vlasov

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=4207A268.3040804@blx4.net \
    --to=posting@blx4.net \
    --cc=jgarzik@pobox.com \
    --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