Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
1ca2cc72
Commit
1ca2cc72
authored
Oct 23, 2008
by
Len Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'bugzilla-11715' into test
parents
5eaff722
26adcfbf
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
52 additions
and
3 deletions
+52
-3
arch/x86/kernel/early-quirks.c
arch/x86/kernel/early-quirks.c
+52
-3
No files found.
arch/x86/kernel/early-quirks.c
View file @
1ca2cc72
...
...
@@ -95,7 +95,8 @@ static void __init nvidia_bugs(int num, int slot, int func)
}
static
u32
ati_ixp4x0_rev
(
int
num
,
int
slot
,
int
func
)
#if defined(CONFIG_ACPI) && defined(CONFIG_X86_IO_APIC)
static
u32
__init
ati_ixp4x0_rev
(
int
num
,
int
slot
,
int
func
)
{
u32
d
;
u8
b
;
...
...
@@ -115,7 +116,6 @@ static u32 ati_ixp4x0_rev(int num, int slot, int func)
static
void
__init
ati_bugs
(
int
num
,
int
slot
,
int
func
)
{
#if defined(CONFIG_ACPI) && defined (CONFIG_X86_IO_APIC)
u32
d
;
u8
b
;
...
...
@@ -138,9 +138,56 @@ static void __init ati_bugs(int num, int slot, int func)
printk
(
KERN_INFO
"If you got timer trouble "
"try acpi_use_timer_override
\n
"
);
}
#endif
}
static
u32
__init
ati_sbx00_rev
(
int
num
,
int
slot
,
int
func
)
{
u32
old
,
d
;
d
=
read_pci_config
(
num
,
slot
,
func
,
0x70
);
old
=
d
;
d
&=
~
(
1
<<
8
);
write_pci_config
(
num
,
slot
,
func
,
0x70
,
d
);
d
=
read_pci_config
(
num
,
slot
,
func
,
0x8
);
d
&=
0xff
;
write_pci_config
(
num
,
slot
,
func
,
0x70
,
old
);
return
d
;
}
static
void
__init
ati_bugs_contd
(
int
num
,
int
slot
,
int
func
)
{
u32
d
,
rev
;
if
(
acpi_use_timer_override
)
return
;
rev
=
ati_sbx00_rev
(
num
,
slot
,
func
);
if
(
rev
>
0x13
)
return
;
/* check for IRQ0 interrupt swap */
d
=
read_pci_config
(
num
,
slot
,
func
,
0x64
);
if
(
!
(
d
&
(
1
<<
14
)))
acpi_skip_timer_override
=
1
;
if
(
acpi_skip_timer_override
)
{
printk
(
KERN_INFO
"SB600 revision 0x%x
\n
"
,
rev
);
printk
(
KERN_INFO
"Ignoring ACPI timer override.
\n
"
);
printk
(
KERN_INFO
"If you got timer trouble "
"try acpi_use_timer_override
\n
"
);
}
}
#else
static
void
__init
ati_bugs
(
int
num
,
int
slot
,
int
func
)
{
}
static
void
__init
ati_bugs_contd
(
int
num
,
int
slot
,
int
func
)
{
}
#endif
#ifdef CONFIG_DMAR
static
void
__init
intel_g33_dmar
(
int
num
,
int
slot
,
int
func
)
{
...
...
@@ -176,6 +223,8 @@ static struct chipset early_qrk[] __initdata = {
PCI_CLASS_BRIDGE_HOST
,
PCI_ANY_ID
,
0
,
fix_hypertransport_config
},
{
PCI_VENDOR_ID_ATI
,
PCI_DEVICE_ID_ATI_IXP400_SMBUS
,
PCI_CLASS_SERIAL_SMBUS
,
PCI_ANY_ID
,
0
,
ati_bugs
},
{
PCI_VENDOR_ID_ATI
,
PCI_DEVICE_ID_ATI_SBX00_SMBUS
,
PCI_CLASS_SERIAL_SMBUS
,
PCI_ANY_ID
,
0
,
ati_bugs_contd
},
#ifdef CONFIG_DMAR
{
PCI_VENDOR_ID_INTEL
,
0x29c0
,
PCI_CLASS_BRIDGE_HOST
,
PCI_ANY_ID
,
0
,
intel_g33_dmar
},
...
...
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