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
mips
include
asm
clock.h
Go to the documentation of this file.
1
#ifndef __ASM_MIPS_CLOCK_H
2
#define __ASM_MIPS_CLOCK_H
3
4
#include <
linux/kref.h
>
5
#include <linux/list.h>
6
#include <
linux/seq_file.h
>
7
#include <
linux/clk.h
>
8
9
extern
void
(*
cpu_wait
) (
void
);
10
11
struct
clk
;
12
13
struct
clk_ops
{
14
void
(*
init
) (
struct
clk
*
clk
);
15
void
(*
enable
) (
struct
clk
*
clk
);
16
void
(*
disable
) (
struct
clk
*
clk
);
17
void
(*
recalc
) (
struct
clk
*
clk
);
18
int
(*
set_rate
) (
struct
clk
*
clk
,
unsigned
long
rate
,
int
algo_id);
19
long
(*
round_rate
) (
struct
clk
*
clk
,
unsigned
long
rate
);
20
};
21
22
struct
clk
{
23
struct
list_head
node;
24
const
char
*
name
;
25
int
id
;
26
struct
module
*
owner
;
27
28
struct
clk
*
parent
;
29
struct
clk_ops
*
ops
;
30
31
struct
kref
kref
;
32
33
unsigned
long
rate
;
34
unsigned
long
flags
;
35
};
36
37
#define CLK_ALWAYS_ENABLED (1 << 0)
38
#define CLK_RATE_PROPAGATES (1 << 1)
39
40
/* Should be defined by processor-specific code */
41
void
arch_init_clk_ops
(
struct
clk_ops
**,
int
type
);
42
43
int
clk_init
(
void
);
44
45
int
__clk_enable
(
struct
clk
*);
46
void
__clk_disable
(
struct
clk
*);
47
48
void
clk_recalc_rate
(
struct
clk
*);
49
50
int
clk_register
(
struct
clk
*);
51
void
clk_unregister
(
struct
clk
*);
52
53
#endif
/* __ASM_MIPS_CLOCK_H */
Generated on Thu Jan 10 2013 12:56:44 for Linux Kernel by
1.8.2