All of lore.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.