Linux Audio

Check our new training course

Loading...
v3.15
 1#ifndef __ASMARM_SMP_TWD_H
 2#define __ASMARM_SMP_TWD_H
 3
 4#define TWD_TIMER_LOAD			0x00
 5#define TWD_TIMER_COUNTER		0x04
 6#define TWD_TIMER_CONTROL		0x08
 7#define TWD_TIMER_INTSTAT		0x0C
 8
 9#define TWD_WDOG_LOAD			0x20
10#define TWD_WDOG_COUNTER		0x24
11#define TWD_WDOG_CONTROL		0x28
12#define TWD_WDOG_INTSTAT		0x2C
13#define TWD_WDOG_RESETSTAT		0x30
14#define TWD_WDOG_DISABLE		0x34
15
16#define TWD_TIMER_CONTROL_ENABLE	(1 << 0)
17#define TWD_TIMER_CONTROL_ONESHOT	(0 << 1)
18#define TWD_TIMER_CONTROL_PERIODIC	(1 << 1)
19#define TWD_TIMER_CONTROL_IT_ENABLE	(1 << 2)
20
21#include <linux/ioport.h>
22
23struct twd_local_timer {
24	struct resource	res[2];
25};
26
27#define DEFINE_TWD_LOCAL_TIMER(name,base,irq)	\
28struct twd_local_timer name __initdata = {	\
29	.res	= {				\
30		DEFINE_RES_MEM(base, 0x10),	\
31		DEFINE_RES_IRQ(irq),		\
32	},					\
33};
34
35int twd_local_timer_register(struct twd_local_timer *);
36
37#endif
v3.1
 1#ifndef __ASMARM_SMP_TWD_H
 2#define __ASMARM_SMP_TWD_H
 3
 4#define TWD_TIMER_LOAD			0x00
 5#define TWD_TIMER_COUNTER		0x04
 6#define TWD_TIMER_CONTROL		0x08
 7#define TWD_TIMER_INTSTAT		0x0C
 8
 9#define TWD_WDOG_LOAD			0x20
10#define TWD_WDOG_COUNTER		0x24
11#define TWD_WDOG_CONTROL		0x28
12#define TWD_WDOG_INTSTAT		0x2C
13#define TWD_WDOG_RESETSTAT		0x30
14#define TWD_WDOG_DISABLE		0x34
15
16#define TWD_TIMER_CONTROL_ENABLE	(1 << 0)
17#define TWD_TIMER_CONTROL_ONESHOT	(0 << 1)
18#define TWD_TIMER_CONTROL_PERIODIC	(1 << 1)
19#define TWD_TIMER_CONTROL_IT_ENABLE	(1 << 2)
20
21struct clock_event_device;
22
23extern void __iomem *twd_base;
 
 
24
25int twd_timer_ack(void);
26void twd_timer_setup(struct clock_event_device *);
 
 
 
 
 
 
 
27
28#endif