]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/arm/include/asm/arch-s5pc1xx/pwm.h
Add GPL-2.0+ SPDX-License-Identifier to source files
[karo-tx-uboot.git] / arch / arm / include / asm / arch-s5pc1xx / pwm.h
1 /*
2  * Copyright (C) 2009 Samsung Electronics
3  * Kyungmin Park <kyungmin.park@samsung.com>
4  * Minkyu Kang <mk7.kang@samsung.com>
5  *
6  * SPDX-License-Identifier:     GPL-2.0+
7  */
8
9 #ifndef __ASM_ARM_ARCH_PWM_H_
10 #define __ASM_ARM_ARCH_PWM_H_
11
12 #define PRESCALER_0             (8 - 1)         /* prescaler of timer 0, 1 */
13 #define PRESCALER_1             (16 - 1)        /* prescaler of timer 2, 3, 4 */
14
15 /* Divider MUX */
16 #define MUX_DIV_1               0               /* 1/1 period */
17 #define MUX_DIV_2               1               /* 1/2 period */
18 #define MUX_DIV_4               2               /* 1/4 period */
19 #define MUX_DIV_8               3               /* 1/8 period */
20 #define MUX_DIV_16              4               /* 1/16 period */
21
22 #define MUX_DIV_SHIFT(x)        (x * 4)
23
24 #define TCON_OFFSET(x)          ((x + 1) * (!!x) << 2)
25
26 #define TCON_START(x)           (1 << TCON_OFFSET(x))
27 #define TCON_UPDATE(x)          (1 << (TCON_OFFSET(x) + 1))
28 #define TCON_INVERTER(x)        (1 << (TCON_OFFSET(x) + 2))
29 #define TCON_AUTO_RELOAD(x)     (1 << (TCON_OFFSET(x) + 3))
30 #define TCON4_AUTO_RELOAD       (1 << 22)
31
32 #ifndef __ASSEMBLY__
33 struct s5p_timer {
34         unsigned int    tcfg0;
35         unsigned int    tcfg1;
36         unsigned int    tcon;
37         unsigned int    tcntb0;
38         unsigned int    tcmpb0;
39         unsigned int    tcnto0;
40         unsigned int    tcntb1;
41         unsigned int    tcmpb1;
42         unsigned int    tcnto1;
43         unsigned int    tcntb2;
44         unsigned int    tcmpb2;
45         unsigned int    tcnto2;
46         unsigned int    tcntb3;
47         unsigned int    res1;
48         unsigned int    tcnto3;
49         unsigned int    tcntb4;
50         unsigned int    tcnto4;
51         unsigned int    tintcstat;
52 };
53 #endif  /* __ASSEMBLY__ */
54
55 #endif