tizen 2.4 release
[profile/mobile/platform/kernel/u-boot-tm1.git] / arch / arm / include / asm / arch-sc8830 / chip_x20 / __regs_avs_apb.h
1 /*\r
2  * Copyright (C) 2014-2015 Spreadtrum Communications Inc.\r
3  *\r
4  * This file is dual-licensed: you can use it either under the terms\r
5  * of the GPL or the X11 license, at your option. Note that this dual\r
6  * licensing only applies to this file, and not this project as a\r
7  * whole.\r
8  *\r
9  */\r
10 \r
11 //#ifndef __SCI_GLB_REGS_H__\r
12 //#error  "Don't include this file directly, Pls include sci_glb_regs.h"\r
13 //#endif\r
14 \r
15 \r
16 #ifndef __H_REGS_AVS_APB_HEADFILE_H__\r
17 #define __H_REGS_AVS_APB_HEADFILE_H__ __FILE__\r
18 \r
19 #define REGS_AVS_APB\r
20 \r
21 /* registers definitions for AVS_APB */\r
22 #define REG_AVS_APB_AVS_TUNE_LMT_CFG                      SCI_ADDR(REGS_AVS_APB_BASE, 0x0000)\r
23 #define REG_AVS_APB_AVS_TUNE_STATUS                       SCI_ADDR(REGS_AVS_APB_BASE, 0x0004)\r
24 #define REG_AVS_APB_AVS_CFG                               SCI_ADDR(REGS_AVS_APB_BASE, 0x0008)\r
25 #define REG_AVS_APB_AVS_TUNE_STEP_CFG                     SCI_ADDR(REGS_AVS_APB_BASE, 0x000C)\r
26 #define REG_AVS_APB_AVS_WAIT_CFG                          SCI_ADDR(REGS_AVS_APB_BASE, 0x0010)\r
27 #define REG_AVS_APB_AVS_INT_CFG                           SCI_ADDR(REGS_AVS_APB_BASE, 0x0014)\r
28 #define REG_AVS_APB_AVS_START_SINGLE_ACT                  SCI_ADDR(REGS_AVS_APB_BASE, 0x0018)\r
29 #define REG_AVS_APB_AVS_START_REPEAT_ACT                  SCI_ADDR(REGS_AVS_APB_BASE, 0x001C)\r
30 #define REG_AVS_APB_AVS_HPM_EN                            SCI_ADDR(REGS_AVS_APB_BASE, 0x0020)\r
31 #define REG_AVS_APB_AVS_HPM_RPT_ANLS                      SCI_ADDR(REGS_AVS_APB_BASE, 0x0024)\r
32 #define REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_0              SCI_ADDR(REGS_AVS_APB_BASE, 0x0028)\r
33 #define REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_1              SCI_ADDR(REGS_AVS_APB_BASE, 0x002C)\r
34 #define REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_2              SCI_ADDR(REGS_AVS_APB_BASE, 0x0030)\r
35 #define REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_3              SCI_ADDR(REGS_AVS_APB_BASE, 0x0034)\r
36 #define REG_AVS_APB_AVS_HPM_DLY_WIND_SEL                  SCI_ADDR(REGS_AVS_APB_BASE, 0x0038)\r
37 #define REG_AVS_APB_FSM_STS                               SCI_ADDR(REGS_AVS_APB_BASE, 0x0040)\r
38 \r
39 \r
40 \r
41 /* bits definitions for register REG_AVS_APB_AVS_TUNE_LMT_CFG */\r
42 #define BITS_VOLT_TUNE_VAL_MAX(_X_)                       ( (_X_) << 8 & (BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
43 #define BITS_VOLT_TUNE_VAL_MIN(_X_)                       ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
44 \r
45 /* bits definitions for register REG_AVS_APB_AVS_TUNE_STATUS */\r
46 #define BITS_VOLT_TUNE_VAL(_X_)                           ( (_X_) << 8 & (BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
47 #define BITS_VOLT_OBS_VAL(_X_)                            ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
48 \r
49 /* bits definitions for register REG_AVS_APB_AVS_CFG */\r
50 #define BIT_HPM15_RPT_CHKSUM_ERR_EN                       ( BIT(31) )\r
51 #define BIT_HPM14_RPT_CHKSUM_ERR_EN                       ( BIT(30) )\r
52 #define BIT_HPM13_RPT_CHKSUM_ERR_EN                       ( BIT(29) )\r
53 #define BIT_HPM12_RPT_CHKSUM_ERR_EN                       ( BIT(28) )\r
54 #define BIT_HPM11_RPT_CHKSUM_ERR_EN                       ( BIT(27) )\r
55 #define BIT_HPM10_RPT_CHKSUM_ERR_EN                       ( BIT(26) )\r
56 #define BIT_HPM9_RPT_CHKSUM_ERR_EN                        ( BIT(25) )\r
57 #define BIT_HPM8_RPT_CHKSUM_ERR_EN                        ( BIT(24) )\r
58 #define BIT_HPM7_RPT_CHKSUM_ERR_EN                        ( BIT(23) )\r
59 #define BIT_HPM6_RPT_CHKSUM_ERR_EN                        ( BIT(22) )\r
60 #define BIT_HPM5_RPT_CHKSUM_ERR_EN                        ( BIT(21) )\r
61 #define BIT_HPM4_RPT_CHKSUM_ERR_EN                        ( BIT(20) )\r
62 #define BIT_HPM3_RPT_CHKSUM_ERR_EN                        ( BIT(19) )\r
63 #define BIT_HPM2_RPT_CHKSUM_ERR_EN                        ( BIT(18) )\r
64 #define BIT_HPM1_RPT_CHKSUM_ERR_EN                        ( BIT(17) )\r
65 #define BIT_HPM0_RPT_CHKSUM_ERR_EN                        ( BIT(16) )\r
66 #define BIT_PAUSE_OCCUR_ERR_EN                            ( BIT(8) )\r
67 #define BIT_VOLT_TUNE_FORBIDEN                            ( BIT(4) )\r
68 #define BIT_VOLT_OBS_FORBIDEN                             ( BIT(0) )\r
69 \r
70 /* bits definitions for register REG_AVS_APB_AVS_TUNE_STEP_CFG */\r
71 #define BITS_VOLT_TUNE_DOWN_STEP(_X_)                     ( (_X_) << 16 & (BIT(16)|BIT(17)|BIT(18)|BIT(19)|BIT(20)|BIT(21)|BIT(22)|BIT(23)|BIT(24)) )\r
72 #define BITS_VOLT_TUNE_UP_STEP(_X_)                       ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)) )\r
73 \r
74 /* bits definitions for register REG_AVS_APB_AVS_WAIT_CFG */\r
75 #define BITS_RND_INTVAL_WAIT_NUM(_X_)                     ( (_X_) << 16 & (BIT(16)|BIT(17)|BIT(18)|BIT(19)|BIT(20)|BIT(21)|BIT(22)|BIT(23)|BIT(24)|BIT(25)|BIT(26)|BIT(27)|BIT(28)|BIT(29)|BIT(30)|BIT(31)) )\r
76 #define BITS_VOLT_STB_WAIT_NUM(_X_)                       ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
77 \r
78 /* bits definitions for register REG_AVS_APB_AVS_INT_CFG */\r
79 #define BIT_INT_RPT_FORMAT_ERR_CLR                        ( BIT(14) )\r
80 #define BIT_INT_RPT_ANLS_ERR_CLR                          ( BIT(13) )\r
81 #define BIT_INT_VOLT_TUNE_ERR_CLR                         ( BIT(12) )\r
82 #define BIT_INT_RPT_FORMAT_ERR_MASK_STATUS                ( BIT(10) )\r
83 #define BIT_INT_RPT_ANLS_ERR_MASK_STATUS                  ( BIT(9) )\r
84 #define BIT_INT_VOLT_TUNE_ERR_MASK_STATUS                 ( BIT(8) )\r
85 #define BIT_INT_RPT_FORMAT_ERR_RAW_STATUS                 ( BIT(6) )\r
86 #define BIT_INT_RPT_ANLS_ERR_RAW_STATUS                   ( BIT(5) )\r
87 #define BIT_INT_VOLT_TUNE_ERR_RAW_STATUS                  ( BIT(4) )\r
88 #define BIT_INT_RPT_FORMAT_ERR_EN                         ( BIT(2) )\r
89 #define BIT_INT_RPT_ANLS_ERR_EN                           ( BIT(1) )\r
90 #define BIT_INT_VOLT_TUNE_ERR_EN                          ( BIT(0) )\r
91 \r
92 /* bits definitions for register REG_AVS_APB_AVS_START_SINGLE_ACT */\r
93 #define BIT_AVS_START_SINGLE_ACT                          ( BIT(0) )\r
94 \r
95 /* bits definitions for register REG_AVS_APB_AVS_START_REPEAT_ACT */\r
96 #define BIT_AVS_START_REPEAT_ACT                          ( BIT(0) )\r
97 \r
98 /* bits definitions for register REG_AVS_APB_AVS_HPM_EN */\r
99 #define BIT_HPM15_EN                                      ( BIT(15) )\r
100 #define BIT_HPM14_EN                                      ( BIT(14) )\r
101 #define BIT_HPM13_EN                                      ( BIT(13) )\r
102 #define BIT_HPM12_EN                                      ( BIT(12) )\r
103 #define BIT_HPM11_EN                                      ( BIT(11) )\r
104 #define BIT_HPM10_EN                                      ( BIT(10) )\r
105 #define BIT_HPM9_EN                                       ( BIT(9) )\r
106 #define BIT_HPM8_EN                                       ( BIT(8) )\r
107 #define BIT_HPM7_EN                                       ( BIT(7) )\r
108 #define BIT_HPM6_EN                                       ( BIT(6) )\r
109 #define BIT_HPM5_EN                                       ( BIT(5) )\r
110 #define BIT_HPM4_EN                                       ( BIT(4) )\r
111 #define BIT_HPM3_EN                                       ( BIT(3) )\r
112 #define BIT_HPM2_EN                                       ( BIT(2) )\r
113 #define BIT_HPM1_EN                                       ( BIT(1) )\r
114 #define BIT_HPM0_EN                                       ( BIT(0) )\r
115 \r
116 /* bits definitions for register REG_AVS_APB_AVS_HPM_RPT_ANLS */\r
117 #define BITS_HPM_RPT_FF_ANLS(_X_)                         ( (_X_) << 16 & (BIT(16)|BIT(17)) )\r
118 #define BITS_HPM_RPT_7F_ANLS(_X_)                         ( (_X_) << 14 & (BIT(14)|BIT(15)) )\r
119 #define BITS_HPM_RPT_3F_ANLS(_X_)                         ( (_X_) << 12 & (BIT(12)|BIT(13)) )\r
120 #define BITS_HPM_RPT_1F_ANLS(_X_)                         ( (_X_) << 10 & (BIT(10)|BIT(11)) )\r
121 #define BITS_HPM_RPT_0F_ANLS(_X_)                         ( (_X_) << 8 & (BIT(8)|BIT(9)) )\r
122 #define BITS_HPM_RPT_07_ANLS(_X_)                         ( (_X_) << 6 & (BIT(6)|BIT(7)) )\r
123 #define BITS_HPM_RPT_03_ANLS(_X_)                         ( (_X_) << 4 & (BIT(4)|BIT(5)) )\r
124 #define BITS_HPM_RPT_01_ANLS(_X_)                         ( (_X_) << 2 & (BIT(2)|BIT(3)) )\r
125 #define BITS_HPM_RPT_00_ANLS(_X_)                         ( (_X_) & (BIT(0)|BIT(1)) )\r
126 \r
127 /* bits definitions for register REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_0 */\r
128 #define BITS_HPM3_RPT_VLD(_X_)                            ( (_X_) << 24 & (BIT(24)|BIT(25)|BIT(26)|BIT(27)|BIT(28)|BIT(29)|BIT(30)|BIT(31)) )\r
129 #define BITS_HPM2_RPT_VLD(_X_)                            ( (_X_) << 16 & (BIT(16)|BIT(17)|BIT(18)|BIT(19)|BIT(20)|BIT(21)|BIT(22)|BIT(23)) )\r
130 #define BITS_HPM1_RPT_VLD(_X_)                            ( (_X_) << 8 & (BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
131 #define BITS_HPM0_RPT_VLD(_X_)                            ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
132 \r
133 /* bits definitions for register REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_1 */\r
134 #define BITS_HPM7_RPT_VLD(_X_)                            ( (_X_) << 24 & (BIT(24)|BIT(25)|BIT(26)|BIT(27)|BIT(28)|BIT(29)|BIT(30)|BIT(31)) )\r
135 #define BITS_HPM6_RPT_VLD(_X_)                            ( (_X_) << 16 & (BIT(16)|BIT(17)|BIT(18)|BIT(19)|BIT(20)|BIT(21)|BIT(22)|BIT(23)) )\r
136 #define BITS_HPM5_RPT_VLD(_X_)                            ( (_X_) << 8 & (BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
137 #define BITS_HPM4_RPT_VLD(_X_)                            ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
138 \r
139 /* bits definitions for register REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_2 */\r
140 #define BITS_HPM11_RPT_VLD(_X_)                           ( (_X_) << 24 & (BIT(24)|BIT(25)|BIT(26)|BIT(27)|BIT(28)|BIT(29)|BIT(30)|BIT(31)) )\r
141 #define BITS_HPM10_RPT_VLD(_X_)                           ( (_X_) << 16 & (BIT(16)|BIT(17)|BIT(18)|BIT(19)|BIT(20)|BIT(21)|BIT(22)|BIT(23)) )\r
142 #define BITS_HPM9_RPT_VLD(_X_)                            ( (_X_) << 8 & (BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
143 #define BITS_HPM8_RPT_VLD(_X_)                            ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
144 \r
145 /* bits definitions for register REG_AVS_APB_AVS_HPM_RPT_VLD_STATUS_3 */\r
146 #define BITS_HPM15_RPT_VLD(_X_)                           ( (_X_) << 24 & (BIT(24)|BIT(25)|BIT(26)|BIT(27)|BIT(28)|BIT(29)|BIT(30)|BIT(31)) )\r
147 #define BITS_HPM14_RPT_VLD(_X_)                           ( (_X_) << 16 & (BIT(16)|BIT(17)|BIT(18)|BIT(19)|BIT(20)|BIT(21)|BIT(22)|BIT(23)) )\r
148 #define BITS_HPM13_RPT_VLD(_X_)                           ( (_X_) << 8 & (BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15)) )\r
149 #define BITS_HPM12_RPT_VLD(_X_)                           ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
150 \r
151 /* bits definitions for register REG_AVS_APB_AVS_HPM_DLY_WIND_SEL */\r
152 #define BITS_DLY_WIND_SEL(_X_)                            ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)) )\r
153 \r
154 /* bits definitions for register REG_AVS_APB_FSM_STS */\r
155 #define BITS_AVS_FSM_STS(_X_)                             ( (_X_) & (BIT(0)|BIT(1)|BIT(2)|BIT(3)) )\r
156 \r
157 #endif\r