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
nexedi
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
Show 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
"
);
printk
(
KERN_INFO
PFX
"Found KT400 in disguise as a KT266.
\n
"
);
/*FALLTHROUGH*/
check_via_agp3
(
bridge
);
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