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
include
linux
dw_apb_timer.h
Go to the documentation of this file.
1
/*
2
* (C) Copyright 2009 Intel Corporation
3
* Author: Jacob Pan (
[email protected]
)
4
*
5
* Shared with ARM platforms, Jamie Iles, Picochip 2011
6
*
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License version 2 as
9
* published by the Free Software Foundation.
10
*
11
* Support for the Synopsys DesignWare APB Timers.
12
*/
13
#ifndef __DW_APB_TIMER_H__
14
#define __DW_APB_TIMER_H__
15
16
#include <
linux/clockchips.h
>
17
#include <
linux/clocksource.h
>
18
#include <
linux/interrupt.h
>
19
20
#define APBTMRS_REG_SIZE 0x14
21
22
struct
dw_apb_timer
{
23
void
__iomem
*
base
;
24
unsigned
long
freq
;
25
int
irq
;
26
};
27
28
struct
dw_apb_clock_event_device
{
29
struct
clock_event_device
ced
;
30
struct
dw_apb_timer
timer
;
31
struct
irqaction
irqaction
;
32
void
(*
eoi
)(
struct
dw_apb_timer
*);
33
};
34
35
struct
dw_apb_clocksource
{
36
struct
dw_apb_timer
timer
;
37
struct
clocksource
cs
;
38
};
39
40
void
dw_apb_clockevent_register
(
struct
dw_apb_clock_event_device
*dw_ced);
41
void
dw_apb_clockevent_pause
(
struct
dw_apb_clock_event_device
*dw_ced);
42
void
dw_apb_clockevent_resume
(
struct
dw_apb_clock_event_device
*dw_ced);
43
void
dw_apb_clockevent_stop
(
struct
dw_apb_clock_event_device
*dw_ced);
44
45
struct
dw_apb_clock_event_device
*
46
dw_apb_clockevent_init
(
int
cpu
,
const
char
*
name
,
unsigned
rating,
47
void
__iomem
*base,
int
irq,
unsigned
long
freq
);
48
struct
dw_apb_clocksource
*
49
dw_apb_clocksource_init
(
unsigned
rating,
const
char
*
name
,
void
__iomem
*base,
50
unsigned
long
freq
);
51
void
dw_apb_clocksource_register
(
struct
dw_apb_clocksource
*dw_cs);
52
void
dw_apb_clocksource_start
(
struct
dw_apb_clocksource
*dw_cs);
53
cycle_t
dw_apb_clocksource_read
(
struct
dw_apb_clocksource
*dw_cs);
54
void
dw_apb_clocksource_unregister
(
struct
dw_apb_clocksource
*dw_cs);
55
56
extern
struct
sys_timer
dw_apb_timer
;
57
#endif
/* __DW_APB_TIMER_H__ */
Generated on Thu Jan 10 2013 14:51:20 for Linux Kernel by
1.8.2