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
93373ed4
Commit
93373ed4
authored
Apr 01, 2006
by
Ralf Baechle
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[MIPS] Rewrite spurious_interrupt from assembler to C.
Signed-off-by:
Ralf Baechle
<
ralf@linux-mips.org
>
parent
c9e321e0
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
40 additions
and
44 deletions
+40
-44
arch/mips/au1000/common/int-handler.S
arch/mips/au1000/common/int-handler.S
+2
-1
arch/mips/ddb5xxx/ddb5476/int-handler.S
arch/mips/ddb5xxx/ddb5476/int-handler.S
+2
-1
arch/mips/ddb5xxx/ddb5476/vrc5476_irq.c
arch/mips/ddb5xxx/ddb5476/vrc5476_irq.c
+1
-3
arch/mips/ddb5xxx/ddb5477/int-handler.S
arch/mips/ddb5xxx/ddb5477/int-handler.S
+2
-2
arch/mips/dec/int-handler.S
arch/mips/dec/int-handler.S
+3
-1
arch/mips/galileo-boards/ev96100/int-handler.S
arch/mips/galileo-boards/ev96100/int-handler.S
+2
-1
arch/mips/gt64120/ev64120/int-handler.S
arch/mips/gt64120/ev64120/int-handler.S
+2
-1
arch/mips/jazz/int-handler.S
arch/mips/jazz/int-handler.S
+2
-1
arch/mips/kernel/entry.S
arch/mips/kernel/entry.S
+0
-26
arch/mips/kernel/irq.c
arch/mips/kernel/irq.c
+5
-0
arch/mips/mips-boards/generic/mipsIRQ.S
arch/mips/mips-boards/generic/mipsIRQ.S
+3
-1
arch/mips/mips-boards/sim/sim_irq.S
arch/mips/mips-boards/sim/sim_irq.S
+3
-1
arch/mips/momentum/ocelot_3/int-handler.S
arch/mips/momentum/ocelot_3/int-handler.S
+3
-1
arch/mips/momentum/ocelot_c/int-handler.S
arch/mips/momentum/ocelot_c/int-handler.S
+2
-1
arch/mips/philips/pnx8550/common/mipsIRQ.S
arch/mips/philips/pnx8550/common/mipsIRQ.S
+2
-1
arch/mips/tx4927/common/tx4927_irq_handler.S
arch/mips/tx4927/common/tx4927_irq_handler.S
+2
-1
arch/mips/vr41xx/common/int-handler.S
arch/mips/vr41xx/common/int-handler.S
+3
-1
include/asm-mips/irq.h
include/asm-mips/irq.h
+1
-0
No files found.
arch/mips/au1000/common/int-handler.S
View file @
93373ed4
...
...
@@ -64,5 +64,6 @@ NESTED(au1000_IRQ, PT_SIZE, sp)
5
:
move
a0
,
sp
j
spurious_interrupt
jal
spurious_interrupt
j
ret_from_irq
END
(
au1000_IRQ
)
arch/mips/ddb5xxx/ddb5476/int-handler.S
View file @
93373ed4
...
...
@@ -54,7 +54,8 @@
.
set
reorder
/
*
wrong
alarm
or
masked
...
*/
//
j
spurious_interrupt
//
jal
spurious_interrupt
//
j
ret_from_irq
move
a0
,
sp
jal
vrc5476_irq_dispatch
j
ret_from_irq
...
...
arch/mips/ddb5xxx/ddb5476/vrc5476_irq.c
View file @
93373ed4
...
...
@@ -80,8 +80,6 @@ vrc5476_irq_init(u32 base)
asmlinkage
void
vrc5476_irq_dispatch
(
struct
pt_regs
*
regs
)
{
extern
void
spurious_interrupt
(
void
);
u32
mask
;
int
nile4_irq
;
...
...
@@ -107,5 +105,5 @@ vrc5476_irq_dispatch(struct pt_regs *regs)
return
;
}
}
spurious_interrupt
();
spurious_interrupt
(
regs
);
}
arch/mips/ddb5xxx/ddb5477/int-handler.S
View file @
93373ed4
...
...
@@ -44,8 +44,8 @@
.
set
reorder
/
*
wrong
alarm
or
masked
...
*/
j
spurious_interrupt
nop
j
al
spurious_interrupt
j
ret_from_irq
END
(
ddb5477_handle_int
)
.
align
5
...
...
arch/mips/dec/int-handler.S
View file @
93373ed4
...
...
@@ -282,7 +282,9 @@ fpu:
#endif
spurious
:
j
spurious_interrupt
jal
spurious_interrupt
nop
j
ret_from_irq
nop
END
(
decstation_handle_int
)
...
...
arch/mips/galileo-boards/ev96100/int-handler.S
View file @
93373ed4
...
...
@@ -29,5 +29,6 @@ NESTED(ev96100IRQ, PT_SIZE, sp)
jal
ev96100_cpu_irq
j
ret_from_irq
3
:
j
spurious_interrupt
3
:
jal
spurious_interrupt
j
ret_from_irq
END
(
ev96100IRQ
)
arch/mips/gt64120/ev64120/int-handler.S
View file @
93373ed4
...
...
@@ -39,8 +39,9 @@
nop
/
*
wrong
alarm
or
masked
...
*/
j
spurious_interrupt
j
al
spurious_interrupt
nop
j
ret_from_irq
END
(
galileo_handle_int
)
...
...
arch/mips/jazz/int-handler.S
View file @
93373ed4
...
...
@@ -263,7 +263,8 @@ loc_call: /*
/*
*
"Jump extender"
to
reach
spurious_interrupt
*/
3
:
j
spurious_interrupt
3
:
jal
spurious_interrupt
j
ret_from_irq
/*
*
Vectors
for
interrupts
generated
by
local
devices
...
...
arch/mips/kernel/entry.S
View file @
93373ed4
...
...
@@ -119,29 +119,3 @@ syscall_exit_work:
li
a1
,
1
jal
do_syscall_trace
b
resume_userspace
/*
*
Common
spurious
interrupt
handler
.
*/
LEAF
(
spurious_interrupt
)
/
*
*
Someone
tried
to
fool
us
by
sending
an
interrupt
but
we
*
couldn
't find a cause for it.
*/
PTR_LA
t1
,
irq_err_count
#ifdef CONFIG_SMP
1
:
ll
t0
,
(
t1
)
addiu
t0
,
1
sc
t0
,
(
t1
)
#if R10000_LLSC_WAR
beqzl
t0
,
1
b
#else
beqz
t0
,
1
b
#endif
#else
lw
t0
,
(
t1
)
addiu
t0
,
1
sw
t0
,
(
t1
)
#endif
j
ret_from_irq
END
(
spurious_interrupt
)
arch/mips/kernel/irq.c
View file @
93373ed4
...
...
@@ -101,6 +101,11 @@ int show_interrupts(struct seq_file *p, void *v)
return
0
;
}
asmlinkage
void
spurious_interrupt
(
struct
pt_regs
*
regs
)
{
atomic_inc
(
&
irq_err_count
);
}
#ifdef CONFIG_KGDB
extern
void
breakpoint
(
void
);
extern
void
set_debug_traps
(
void
);
...
...
arch/mips/mips-boards/generic/mipsIRQ.S
View file @
93373ed4
...
...
@@ -150,6 +150,8 @@
spurious
:
j
spurious_interrupt
jal
spurious_interrupt
nop
j
ret_from_irq
nop
END
(
mipsIRQ
)
arch/mips/mips-boards/sim/sim_irq.S
View file @
93373ed4
...
...
@@ -94,6 +94,8 @@
spurious
:
j
spurious_interrupt
jal
spurious_interrupt
nop
j
ret_from_irq
nop
END
(
simIRQ
)
arch/mips/momentum/ocelot_3/int-handler.S
View file @
93373ed4
...
...
@@ -78,8 +78,10 @@
.
set
reorder
/
*
wrong
alarm
or
masked
...
*/
j
spurious_interrupt
j
al
spurious_interrupt
nop
j
ret_from_irq
nop
END
(
ocelot3_handle_int
)
.
align
5
...
...
arch/mips/momentum/ocelot_c/int-handler.S
View file @
93373ed4
...
...
@@ -52,8 +52,9 @@
.
set
reorder
/
*
wrong
alarm
or
masked
...
*/
j
spurious_interrupt
j
al
spurious_interrupt
nop
j
ret_from_irq
END
(
ocelot_handle_int
)
.
align
5
...
...
arch/mips/philips/pnx8550/common/mipsIRQ.S
View file @
93373ed4
...
...
@@ -46,8 +46,9 @@
/
*
wrong
alarm
or
masked
...
*/
j
spurious_interrupt
j
al
spurious_interrupt
nop
j
ret_from_irq
END
(
cp0_irqdispatch
)
.
align
5
...
...
arch/mips/tx4927/common/tx4927_irq_handler.S
View file @
93373ed4
...
...
@@ -63,8 +63,9 @@
.
set
reorder
/
*
wrong
alarm
or
masked
...
*/
j
spurious_interrupt
j
al
spurious_interrupt
nop
j
ret_from_irq
END
(
tx4927_irq_handler
)
.
align
5
...
...
arch/mips/vr41xx/common/int-handler.S
View file @
93373ed4
...
...
@@ -98,8 +98,10 @@
bnez
t1
,
handle_irq
li
a0
,
1
j
spurious_interrupt
j
al
spurious_interrupt
nop
j
ret_from_irq
nop
handle_int
:
jal
irq_dispatch
...
...
include/asm-mips/irq.h
View file @
93373ed4
...
...
@@ -46,5 +46,6 @@ do { \
#endif
extern
void
arch_init_irq
(
void
);
extern
void
spurious_interrupt
(
struct
pt_regs
*
regs
);
#endif
/* _ASM_IRQ_H */
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