Lines 1-61
Link Here
|
1 |
/* |
1 |
/* |
2 |
* $Id: via82cxxx.c,v 3.34 2002/02/12 11:26:11 vojtech Exp $ |
2 |
* Version 3.35 |
3 |
* |
3 |
* |
4 |
* Copyright (c) 2000-2001 Vojtech Pavlik |
4 |
* VIA IDE driver for Linux. Supported southbridges: |
5 |
* |
|
|
6 |
* Based on the work of: |
7 |
* Michel Aubry |
8 |
* Jeff Garzik |
9 |
* Andre Hedrick |
10 |
*/ |
11 |
|
12 |
/* |
13 |
* VIA IDE driver for Linux. Supports |
14 |
* |
5 |
* |
15 |
* vt82c576, vt82c586, vt82c586a, vt82c586b, vt82c596a, vt82c596b, |
6 |
* vt82c576, vt82c586, vt82c586a, vt82c586b, vt82c596a, vt82c596b, |
16 |
* vt82c686, vt82c686a, vt82c686b, vt8231, vt8233, vt8233c, vt8233a |
7 |
* vt82c686, vt82c686a, vt82c686b, vt8231, vt8233, vt8233c, vt8233a, |
17 |
* |
8 |
* vt8235 |
18 |
* southbridges, which can be found in |
|
|
19 |
* |
20 |
* VIA Apollo Master, VP, VP2, VP2/97, VP3, VPX, VPX/97, MVP3, MVP4, P6, Pro, |
21 |
* ProII, ProPlus, Pro133, Pro133+, Pro133A, Pro133A Dual, Pro133T, Pro133Z, |
22 |
* PLE133, PLE133T, Pro266, Pro266T, ProP4X266, PM601, PM133, PN133, PL133T, |
23 |
* PX266, PM266, KX133, KT133, KT133A, KT133E, KLE133, KT266, KX266, KM133, |
24 |
* KM133A, KL133, KN133, KM266 |
25 |
* PC-Chips VXPro, VXPro+, VXTwo, TXPro-III, TXPro-AGP, AGPPro, ViaGra, BXToo, |
26 |
* BXTel, BXpert |
27 |
* AMD 640, 640 AGP, 750 IronGate, 760, 760MP |
28 |
* ETEQ 6618, 6628, 6629, 6638 |
29 |
* Micron Samurai |
30 |
* |
31 |
* chipsets. Supports |
32 |
* |
9 |
* |
33 |
* PIO 0-5, MWDMA 0-2, SWDMA 0-2 and UDMA 0-6 |
10 |
* Copyright (c) 2000-2002 Vojtech Pavlik |
34 |
* |
11 |
* |
35 |
* (this includes UDMA33, 66, 100 and 133) modes. UDMA66 and higher modes are |
12 |
* Based on the work of: |
36 |
* autoenabled only in case the BIOS has detected a 80 wire cable. To ignore |
13 |
* Michel Aubry |
37 |
* the BIOS data and assume the cable is present, use 'ide0=ata66' or |
14 |
* Jeff Garzik |
38 |
* 'ide1=ata66' on the kernel command line. |
15 |
* Andre Hedrick |
39 |
*/ |
16 |
*/ |
40 |
|
17 |
|
41 |
/* |
18 |
/* |
42 |
* This program is free software; you can redistribute it and/or modify |
19 |
* This program is free software; you can redistribute it and/or modify it |
43 |
* it under the terms of the GNU General Public License as published by |
20 |
* under the terms of the GNU General Public License version 2 as published by |
44 |
* the Free Software Foundation; either version 2 of the License, or |
21 |
* the Free Software Foundation. |
45 |
* (at your option) any later version. |
|
|
46 |
* |
47 |
* This program is distributed in the hope that it will be useful, |
48 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
49 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
50 |
* GNU General Public License for more details. |
51 |
* |
52 |
* You should have received a copy of the GNU General Public License |
53 |
* along with this program; if not, write to the Free Software |
54 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
55 |
* |
56 |
* Should you need to contact me, the author, you can do so either by |
57 |
* e-mail - mail your message to <vojtech@ucw.cz>, or by paper mail: |
58 |
* Vojtech Pavlik, Simunkova 1594, Prague 8, 182 00 Czech Republic |
59 |
*/ |
22 |
*/ |
60 |
|
23 |
|
61 |
#include <linux/config.h> |
24 |
#include <linux/config.h> |
Lines 92-97
Link Here
|
92 |
#define VIA_NO_UNMASK 0x080 /* Doesn't work with IRQ unmasking on */ |
55 |
#define VIA_NO_UNMASK 0x080 /* Doesn't work with IRQ unmasking on */ |
93 |
#define VIA_BAD_ID 0x100 /* Has wrong vendor ID (0x1107) */ |
56 |
#define VIA_BAD_ID 0x100 /* Has wrong vendor ID (0x1107) */ |
94 |
|
57 |
|
|
|
58 |
#ifndef PCI_DEVICE_ID_VIA_8235 |
59 |
#define PCI_DEVICE_ID_VIA_8235 0x3177 |
60 |
#endif |
61 |
|
95 |
/* |
62 |
/* |
96 |
* VIA SouthBridge chips. |
63 |
* VIA SouthBridge chips. |
97 |
*/ |
64 |
*/ |
Lines 105-112
Link Here
|
105 |
} via_isa_bridges[] = { |
72 |
} via_isa_bridges[] = { |
106 |
#ifdef FUTURE_BRIDGES |
73 |
#ifdef FUTURE_BRIDGES |
107 |
{ "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 }, |
74 |
{ "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 }, |
108 |
{ "vt8235", PCI_DEVICE_ID_VIA_8235, 0x00, 0x2f, VIA_UDMA_133 }, |
|
|
109 |
#endif |
75 |
#endif |
|
|
76 |
{ "vt8235", PCI_DEVICE_ID_VIA_8235, 0x00, 0x2f, VIA_UDMA_133 }, |
110 |
{ "vt8233a", PCI_DEVICE_ID_VIA_8233A, 0x00, 0x2f, VIA_UDMA_133 }, |
77 |
{ "vt8233a", PCI_DEVICE_ID_VIA_8233A, 0x00, 0x2f, VIA_UDMA_133 }, |
111 |
{ "vt8233c", PCI_DEVICE_ID_VIA_8233C_0, 0x00, 0x2f, VIA_UDMA_100 }, |
78 |
{ "vt8233c", PCI_DEVICE_ID_VIA_8233C_0, 0x00, 0x2f, VIA_UDMA_100 }, |
112 |
{ "vt8233", PCI_DEVICE_ID_VIA_8233_0, 0x00, 0x2f, VIA_UDMA_100 }, |
79 |
{ "vt8233", PCI_DEVICE_ID_VIA_8233_0, 0x00, 0x2f, VIA_UDMA_100 }, |
Lines 163-169
Link Here
|
163 |
|
130 |
|
164 |
via_print("----------VIA BusMastering IDE Configuration----------------"); |
131 |
via_print("----------VIA BusMastering IDE Configuration----------------"); |
165 |
|
132 |
|
166 |
via_print("Driver Version: 3.34"); |
133 |
via_print("Driver Version: 3.35"); |
167 |
via_print("South Bridge: VIA %s", via_config->name); |
134 |
via_print("South Bridge: VIA %s", via_config->name); |
168 |
|
135 |
|
169 |
pci_read_config_byte(isa_dev, PCI_REVISION_ID, &t); |
136 |
pci_read_config_byte(isa_dev, PCI_REVISION_ID, &t); |