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
a438ced7
Commit
a438ced7
authored
Apr 02, 2002
by
Dave Jones
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] DMI entries for HP Pavillion laptops.
These things have USB IRQ routing problems we can work around..
parent
6d956df7
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
34 additions
and
1 deletion
+34
-1
arch/i386/kernel/dmi_scan.c
arch/i386/kernel/dmi_scan.c
+24
-1
arch/i386/kernel/pci-irq.c
arch/i386/kernel/pci-irq.c
+10
-0
No files found.
arch/i386/kernel/dmi_scan.c
View file @
a438ced7
...
...
@@ -295,6 +295,22 @@ static __init int apm_is_horked(struct dmi_blacklist *d)
return
0
;
}
/*
* Work around broken HP Pavilion Notebooks which assign USB to
* IRQ 9 even though it is actually wired to IRQ 11
*/
static
__init
int
fix_broken_hp_bios_irq9
(
struct
dmi_blacklist
*
d
)
{
#ifdef CONFIG_PCI
extern
int
broken_hp_bios_irq9
;
if
(
broken_hp_bios_irq9
==
0
)
{
broken_hp_bios_irq9
=
1
;
printk
(
KERN_INFO
"%s detected - fixing broken IRQ routing
\n
"
,
d
->
ident
);
}
#endif
return
0
;
}
/*
* Check for clue free BIOS implementations who use
...
...
@@ -730,7 +746,14 @@ static __initdata struct dmi_blacklist dmi_blacklist[]={
NO_MATCH
,
NO_MATCH
}
},
{
fix_broken_hp_bios_irq9
,
"HP Pavilion N5400 Series Laptop"
,
{
MATCH
(
DMI_SYS_VENDOR
,
"Hewlett-Packard"
),
MATCH
(
DMI_BIOS_VERSION
,
"GE.M1.03"
),
MATCH
(
DMI_PRODUCT_VERSION
,
"HP Pavilion Notebook Model GE"
),
MATCH
(
DMI_BOARD_VERSION
,
"OmniBook N32N-736"
)
}
},
/*
* Generic per vendor APM settings
*/
...
...
arch/i386/kernel/pci-irq.c
View file @
a438ced7
...
...
@@ -23,6 +23,7 @@
#define PIRQ_VERSION 0x0100
int
pci_use_acpi_routing
=
0
;
int
broken_hp_bios_irq9
;
static
struct
irq_routing_table
*
pirq_table
;
...
...
@@ -614,6 +615,15 @@ static int pirq_lookup_irq(struct pci_dev *dev, u8 pin, int assign)
DBG
(
" -> PIRQ %02x, mask %04x, excl %04x"
,
pirq
,
mask
,
pirq_table
->
exclusive_irqs
);
mask
&=
pcibios_irq_mask
;
/* Work around broken HP Pavilion Notebooks which assign USB to
IRQ 9 even though it is actually wired to IRQ 11 */
if
(
broken_hp_bios_irq9
&&
pirq
==
0x59
&&
dev
->
irq
==
9
)
{
dev
->
irq
=
11
;
pci_write_config_byte
(
dev
,
PCI_INTERRUPT_LINE
,
11
);
r
->
set
(
pirq_router_dev
,
dev
,
pirq
,
11
);
}
/*
* Find the best IRQ to assign: use the one
* reported by the device if possible.
...
...
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