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
4ca462ce
Commit
4ca462ce
authored
Apr 02, 2002
by
Dave Jones
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] Support for ITE interrupt router
Support for an extra interrupt router.
parent
a2670269
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
0 deletions
+20
-0
arch/i386/kernel/pci-irq.c
arch/i386/kernel/pci-irq.c
+20
-0
No files found.
arch/i386/kernel/pci-irq.c
View file @
4ca462ce
...
...
@@ -207,6 +207,24 @@ static int pirq_via_set(struct pci_dev *router, struct pci_dev *dev, int pirq, i
return
1
;
}
/*
* ITE 8330G pirq rules are nibble-based
* FIXME: pirqmap may be { 1, 0, 3, 2 },
* 2+3 are both mapped to irq 9 on my system
*/
static
int
pirq_ite_get
(
struct
pci_dev
*
router
,
struct
pci_dev
*
dev
,
int
pirq
)
{
static
unsigned
char
pirqmap
[
4
]
=
{
1
,
0
,
2
,
3
};
return
read_config_nybble
(
router
,
0x43
,
pirqmap
[
pirq
-
1
]);
}
static
int
pirq_ite_set
(
struct
pci_dev
*
router
,
struct
pci_dev
*
dev
,
int
pirq
,
int
irq
)
{
static
unsigned
char
pirqmap
[
4
]
=
{
1
,
0
,
2
,
3
};
write_config_nybble
(
router
,
0x43
,
pirqmap
[
pirq
-
1
],
irq
);
return
1
;
}
/*
* OPTI: high four bits are nibble pointer..
* I wonder what the low bits do?
...
...
@@ -449,6 +467,8 @@ static struct irq_router pirq_routers[] = {
{
"ALI"
,
PCI_VENDOR_ID_AL
,
PCI_DEVICE_ID_AL_M1533
,
pirq_ali_get
,
pirq_ali_set
},
{
"ITE"
,
PCI_VENDOR_ID_ITE
,
PCI_DEVICE_ID_ITE_IT8330G_0
,
pirq_ite_get
,
pirq_ite_set
},
{
"VIA"
,
PCI_VENDOR_ID_VIA
,
PCI_DEVICE_ID_VIA_82C586_0
,
pirq_via_get
,
pirq_via_set
},
{
"VIA"
,
PCI_VENDOR_ID_VIA
,
PCI_DEVICE_ID_VIA_82C596
,
pirq_via_get
,
pirq_via_set
},
{
"VIA"
,
PCI_VENDOR_ID_VIA
,
PCI_DEVICE_ID_VIA_82C686
,
pirq_via_get
,
pirq_via_set
},
...
...
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