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
3c009442
Commit
3c009442
authored
Jun 16, 2006
by
Ralf Baechle
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[MIPS] IP27: Fix collision with hardcoded interrupt number.
Signed-off-by:
Ralf Baechle
<
ralf@linux-mips.org
>
parent
0307e8d0
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
60 additions
and
3 deletions
+60
-3
arch/mips/sgi-ip27/ip27-irq.c
arch/mips/sgi-ip27/ip27-irq.c
+1
-1
arch/mips/sgi-ip27/ip27-timer.c
arch/mips/sgi-ip27/ip27-timer.c
+59
-2
No files found.
arch/mips/sgi-ip27/ip27-irq.c
View file @
3c009442
...
...
@@ -360,7 +360,7 @@ static struct hw_interrupt_type bridge_irq_type = {
static
unsigned
long
irq_map
[
NR_IRQS
/
BITS_PER_LONG
];
static
int
allocate_irqno
(
void
)
int
allocate_irqno
(
void
)
{
int
irq
;
...
...
arch/mips/sgi-ip27/ip27-timer.c
View file @
3c009442
...
...
@@ -89,11 +89,13 @@ static int set_rtc_mmss(unsigned long nowtime)
}
#endif
static
unsigned
int
rt_timer_irq
;
void
ip27_rt_timer_interrupt
(
struct
pt_regs
*
regs
)
{
int
cpu
=
smp_processor_id
();
int
cpuA
=
cputoslice
(
cpu
)
==
0
;
int
irq
=
9
;
/* XXX Assign number */
unsigned
int
irq
=
rt_timer_irq
;
irq_enter
();
write_seqlock
(
&
xtime_lock
);
...
...
@@ -179,13 +181,68 @@ static __init unsigned long get_m48t35_time(void)
return
mktime
(
year
,
month
,
date
,
hour
,
min
,
sec
);
}
static
void
startup_rt_irq
(
unsigned
int
irq
)
{
}
static
void
shutdown_rt_irq
(
unsigned
int
irq
)
{
}
static
void
enable_rt_irq
(
unsigned
int
irq
)
{
}
static
void
disable_rt_irq
(
unsigned
int
irq
)
{
}
static
void
mask_and_ack_rt
(
unsigned
int
irq
)
{
}
static
void
end_rt_irq
(
unsigned
int
irq
)
{
}
static
struct
hw_interrupt_type
rt_irq_type
=
{
.
typename
=
"SN HUB RT timer"
,
.
startup
=
startup_rt_irq
,
.
shutdown
=
shutdown_rt_irq
,
.
enable
=
enable_rt_irq
,
.
disable
=
disable_rt_irq
,
.
ack
=
mask_and_ack_rt
,
.
end
=
end_rt_irq
,
};
static
struct
irqaction
rt_irqaction
=
{
.
handler
=
ip27_rt_timer_interrupt
,
.
flags
=
SA_INTERRUPT
,
.
mask
=
CPU_MASK_NONE
,
.
name
=
"timer"
};
extern
int
allocate_irqno
(
void
);
static
void
ip27_timer_setup
(
struct
irqaction
*
irq
)
{
int
irqno
=
allocate_irqno
();
if
(
irqno
<
0
)
panic
(
"Can't allocate interrupt number for timer interrupt"
);
irq_desc
[
irqno
].
status
=
IRQ_DISABLED
;
irq_desc
[
irqno
].
action
=
NULL
;
irq_desc
[
irqno
].
depth
=
1
;
irq_desc
[
irqno
].
handler
=
&
rt_irq_type
;
/* over-write the handler, we use our own way */
irq
->
handler
=
no_action
;
/* setup irqaction */
// setup_irq(IP27_TIMER_IRQ, irq); /* XXX Can't do this yet. */
irq_desc
[
irqno
].
status
|=
IRQ_PER_CPU
;
rt_timer_irq
=
irqno
;
}
void
__init
ip27_time_init
(
void
)
...
...
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