Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
sh
include
asm
smp-ops.h
Go to the documentation of this file.
1
#ifndef __ASM_SH_SMP_OPS_H
2
#define __ASM_SH_SMP_OPS_H
3
4
struct
plat_smp_ops
{
5
void
(*
smp_setup
)(
void
);
6
unsigned
int
(*
smp_processor_id
)(
void
);
7
void
(*
prepare_cpus
)(
unsigned
int
max_cpus);
8
void
(*
start_cpu
)(
unsigned
int
cpu
,
unsigned
long
entry_point);
9
void
(*
send_ipi
)(
unsigned
int
cpu
,
unsigned
int
message
);
10
int
(*
cpu_disable
)(
unsigned
int
cpu
);
11
void
(*
cpu_die
)(
unsigned
int
cpu
);
12
void
(*
play_dead
)(
void
);
13
};
14
15
extern
struct
plat_smp_ops
*
mp_ops
;
16
extern
struct
plat_smp_ops
shx3_smp_ops
;
17
18
#ifdef CONFIG_SMP
19
20
static
inline
void
plat_smp_setup(
void
)
21
{
22
BUG_ON
(!mp_ops);
23
mp_ops->
smp_setup
();
24
}
25
26
static
inline
void
play_dead
(
void
)
27
{
28
mp_ops->
play_dead
();
29
}
30
31
extern
void
register_smp_ops
(
struct
plat_smp_ops
*ops);
32
33
#else
34
35
static
inline
void
plat_smp_setup(
void
)
36
{
37
/* UP, nothing to do ... */
38
}
39
40
static
inline
void
register_smp_ops
(
struct
plat_smp_ops
*ops)
41
{
42
}
43
44
static
inline
void
play_dead
(
void
)
45
{
46
BUG
();
47
}
48
49
#endif
/* CONFIG_SMP */
50
51
#endif
/* __ASM_SH_SMP_OPS_H */
Generated on Thu Jan 10 2013 13:10:53 for Linux Kernel by
1.8.2