Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
94573589
Commit
94573589
authored
Jul 09, 2003
by
Dave Jones
Browse files
Options
Browse Files
Download
Plain Diff
Merge tetrachloride.(none):/mnt/raid/src/kernel/2.5/bk-linus
into tetrachloride.(none):/mnt/raid/src/kernel/2.5/agpgart
parents
a1bafab5
11b4295e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
37 additions
and
27 deletions
+37
-27
drivers/char/agp/amd-k8-agp.c
drivers/char/agp/amd-k8-agp.c
+8
-0
drivers/char/agp/via-agp.c
drivers/char/agp/via-agp.c
+28
-27
include/linux/pci_ids.h
include/linux/pci_ids.h
+1
-0
No files found.
drivers/char/agp/amd-k8-agp.c
View file @
94573589
...
@@ -342,6 +342,14 @@ static struct pci_device_id agp_amdk8_pci_table[] __initdata = {
...
@@ -342,6 +342,14 @@ static struct pci_device_id agp_amdk8_pci_table[] __initdata = {
.
subvendor
=
PCI_ANY_ID
,
.
subvendor
=
PCI_ANY_ID
,
.
subdevice
=
PCI_ANY_ID
,
.
subdevice
=
PCI_ANY_ID
,
},
},
{
.
class
=
(
PCI_CLASS_BRIDGE_HOST
<<
8
),
.
class_mask
=
~
0
,
.
vendor
=
PCI_VENDOR_ID_SI
,
.
device
=
PCI_DEVICE_ID_SI_755
,
.
subvendor
=
PCI_ANY_ID
,
.
subdevice
=
PCI_ANY_ID
,
},
{
}
{
}
};
};
...
...
drivers/char/agp/via-agp.c
View file @
94573589
...
@@ -345,13 +345,29 @@ static struct agp_device_ids via_agp_device_ids[] __initdata =
...
@@ -345,13 +345,29 @@ static struct agp_device_ids via_agp_device_ids[] __initdata =
{
},
/* dummy final entry, always present */
{
},
/* dummy final entry, always present */
};
};
/*
* VIA's AGP3 chipsets do magick to put the AGP bridge compliant
* with the same standards version as the graphics card.
*/
static
void
check_via_agp3
(
struct
agp_bridge_data
*
bridge
)
{
u8
reg
;
pci_read_config_byte
(
bridge
->
dev
,
VIA_AGPSEL
,
&
reg
);
/* Check AGP 2.0 compatibility mode. */
if
((
reg
&
(
1
<<
1
))
==
0
)
bridge
->
driver
=
&
via_agp3_driver
;
}
static
int
__init
agp_via_probe
(
struct
pci_dev
*
pdev
,
static
int
__init
agp_via_probe
(
struct
pci_dev
*
pdev
,
const
struct
pci_device_id
*
ent
)
const
struct
pci_device_id
*
ent
)
{
{
struct
agp_device_ids
*
devs
=
via_agp_device_ids
;
struct
agp_device_ids
*
devs
=
via_agp_device_ids
;
struct
agp_bridge_data
*
bridge
;
struct
agp_bridge_data
*
bridge
;
int
j
=
0
;
int
j
=
0
;
u8
cap_ptr
,
reg
;
u8
cap_ptr
;
cap_ptr
=
pci_find_capability
(
pdev
,
PCI_CAP_ID_AGP
);
cap_ptr
=
pci_find_capability
(
pdev
,
PCI_CAP_ID_AGP
);
if
(
!
cap_ptr
)
if
(
!
cap_ptr
)
...
@@ -386,36 +402,21 @@ static int __init agp_via_probe(struct pci_dev *pdev,
...
@@ -386,36 +402,21 @@ static int __init agp_via_probe(struct pci_dev *pdev,
bridge
->
capndx
=
cap_ptr
;
bridge
->
capndx
=
cap_ptr
;
bridge
->
driver
=
&
via_driver
;
bridge
->
driver
=
&
via_driver
;
switch
(
pdev
->
device
)
{
/*
case
PCI_DEVICE_ID_VIA_8367_0
:
* Garg, there are KT400s with KT266 IDs.
/*
*/
* Garg, there are KT400s with KT266 IDs.
if
(
pdev
->
device
==
PCI_DEVICE_ID_VIA_8367_0
)
{
*/
/* Is there a KT400 subsystem ? */
/* Is there a KT400 subsystem ? */
if
(
pdev
->
subsystem_device
!=
PCI_DEVICE_ID_VIA_8377_0
)
if
(
pdev
->
subsystem_device
==
PCI_DEVICE_ID_VIA_8377_0
)
{
break
;
printk
(
KERN_INFO
PFX
"Found KT400 in disguise as a KT266.
\n
"
);
check_via_agp3
(
bridge
);
printk
(
KERN_INFO
PFX
"Found KT400 in disguise as a KT266.
\n
"
);
/*FALLTHROUGH*/
case
PCI_DEVICE_ID_VIA_8377_0
:
/*
* The KT400 does magick to put the AGP bridge compliant
* with the same standards version as the graphics card.
*/
pci_read_config_byte
(
pdev
,
VIA_AGPSEL
,
&
reg
);
/* Check AGP 2.0 compatibility mode. */
if
((
reg
&
(
1
<<
1
))
==
0
)
{
bridge
->
driver
=
&
via_agp3_driver
;
break
;
}
}
/*FALLTHROUGH*/
default:
break
;
}
}
/* If this is an AGP3 bridge, check which mode its in and adjust. */
bridge
->
dev
=
pdev
;
get_agp_version
(
bridge
);
bridge
->
capndx
=
cap_ptr
;
if
(
bridge
->
major_version
>=
3
)
check_via_agp3
(
bridge
);
/* Fill in the mode register */
/* Fill in the mode register */
pci_read_config_dword
(
pdev
,
pci_read_config_dword
(
pdev
,
...
...
include/linux/pci_ids.h
View file @
94573589
...
@@ -571,6 +571,7 @@
...
@@ -571,6 +571,7 @@
#define PCI_DEVICE_ID_SI_750 0x0750
#define PCI_DEVICE_ID_SI_750 0x0750
#define PCI_DEVICE_ID_SI_751 0x0751
#define PCI_DEVICE_ID_SI_751 0x0751
#define PCI_DEVICE_ID_SI_752 0x0752
#define PCI_DEVICE_ID_SI_752 0x0752
#define PCI_DEVICE_ID_SI_755 0x0755
#define PCI_DEVICE_ID_SI_900 0x0900
#define PCI_DEVICE_ID_SI_900 0x0900
#define PCI_DEVICE_ID_SI_961 0x0961
#define PCI_DEVICE_ID_SI_961 0x0961
#define PCI_DEVICE_ID_SI_962 0x0962
#define PCI_DEVICE_ID_SI_962 0x0962
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment