xref: /OK3568_Linux_fs/u-boot/arch/arm/include/asm/arch-mxs/regs-lradc.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * Freescale i.MX28 LRADC Register Definitions
3*4882a593Smuzhiyun  *
4*4882a593Smuzhiyun  * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com>
5*4882a593Smuzhiyun  * on behalf of DENX Software Engineering GmbH
6*4882a593Smuzhiyun  *
7*4882a593Smuzhiyun  * Based on code from LTIB:
8*4882a593Smuzhiyun  * Copyright 2008-2009 Freescale Semiconductor, Inc. All Rights Reserved.
9*4882a593Smuzhiyun  *
10*4882a593Smuzhiyun  * SPDX-License-Identifier:	GPL-2.0+
11*4882a593Smuzhiyun  */
12*4882a593Smuzhiyun 
13*4882a593Smuzhiyun #ifndef __MX28_REGS_LRADC_H__
14*4882a593Smuzhiyun #define __MX28_REGS_LRADC_H__
15*4882a593Smuzhiyun 
16*4882a593Smuzhiyun #include <asm/mach-imx/regs-common.h>
17*4882a593Smuzhiyun 
18*4882a593Smuzhiyun #ifndef	__ASSEMBLY__
19*4882a593Smuzhiyun struct mxs_lradc_regs {
20*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ctrl0);
21*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ctrl1);
22*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ctrl2);
23*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ctrl3);
24*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_status);
25*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch0);
26*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch1);
27*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch2);
28*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch3);
29*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch4);
30*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch5);
31*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch6);
32*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ch7);
33*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_delay0);
34*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_delay1);
35*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_delay2);
36*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_delay3);
37*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_debug0);
38*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_debug1);
39*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_conversion);
40*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_ctrl4);
41*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_treshold0);
42*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_treshold1);
43*4882a593Smuzhiyun 	mxs_reg_32(hw_lradc_version);
44*4882a593Smuzhiyun };
45*4882a593Smuzhiyun #endif
46*4882a593Smuzhiyun 
47*4882a593Smuzhiyun #define	LRADC_CTRL0_SFTRST					(1 << 31)
48*4882a593Smuzhiyun #define	LRADC_CTRL0_CLKGATE					(1 << 30)
49*4882a593Smuzhiyun #define	LRADC_CTRL0_ONCHIP_GROUNDREF				(1 << 26)
50*4882a593Smuzhiyun #define	LRADC_CTRL0_BUTTON1_DETECT_ENABLE			(1 << 25)
51*4882a593Smuzhiyun #define	LRADC_CTRL0_BUTTON0_DETECT_ENABLE			(1 << 24)
52*4882a593Smuzhiyun #define	LRADC_CTRL0_TOUCH_DETECT_ENABLE				(1 << 23)
53*4882a593Smuzhiyun #define	LRADC_CTRL0_TOUCH_SCREEN_TYPE				(1 << 22)
54*4882a593Smuzhiyun #define	LRADC_CTRL0_YNLRSW					(1 << 21)
55*4882a593Smuzhiyun #define	LRADC_CTRL0_YPLLSW_MASK					(0x3 << 19)
56*4882a593Smuzhiyun #define	LRADC_CTRL0_YPLLSW_OFFSET				19
57*4882a593Smuzhiyun #define	LRADC_CTRL0_XNURSW_MASK					(0x3 << 17)
58*4882a593Smuzhiyun #define	LRADC_CTRL0_XNURSW_OFFSET				17
59*4882a593Smuzhiyun #define	LRADC_CTRL0_XPULSW					(1 << 16)
60*4882a593Smuzhiyun #define	LRADC_CTRL0_SCHEDULE_MASK				0xff
61*4882a593Smuzhiyun #define	LRADC_CTRL0_SCHEDULE_OFFSET				0
62*4882a593Smuzhiyun 
63*4882a593Smuzhiyun #define	LRADC_CTRL1_BUTTON1_DETECT_IRQ_EN			(1 << 28)
64*4882a593Smuzhiyun #define	LRADC_CTRL1_BUTTON0_DETECT_IRQ_EN			(1 << 27)
65*4882a593Smuzhiyun #define	LRADC_CTRL1_THRESHOLD1_DETECT_IRQ_EN			(1 << 26)
66*4882a593Smuzhiyun #define	LRADC_CTRL1_THRESHOLD0_DETECT_IRQ_EN			(1 << 25)
67*4882a593Smuzhiyun #define	LRADC_CTRL1_TOUCH_DETECT_IRQ_EN				(1 << 24)
68*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC7_IRQ_EN				(1 << 23)
69*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC6_IRQ_EN				(1 << 22)
70*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC5_IRQ_EN				(1 << 21)
71*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC4_IRQ_EN				(1 << 20)
72*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC3_IRQ_EN				(1 << 19)
73*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC2_IRQ_EN				(1 << 18)
74*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC1_IRQ_EN				(1 << 17)
75*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC0_IRQ_EN				(1 << 16)
76*4882a593Smuzhiyun #define	LRADC_CTRL1_BUTTON1_DETECT_IRQ				(1 << 12)
77*4882a593Smuzhiyun #define	LRADC_CTRL1_BUTTON0_DETECT_IRQ				(1 << 11)
78*4882a593Smuzhiyun #define	LRADC_CTRL1_THRESHOLD1_DETECT_IRQ			(1 << 10)
79*4882a593Smuzhiyun #define	LRADC_CTRL1_THRESHOLD0_DETECT_IRQ			(1 << 9)
80*4882a593Smuzhiyun #define	LRADC_CTRL1_TOUCH_DETECT_IRQ				(1 << 8)
81*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC7_IRQ					(1 << 7)
82*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC6_IRQ					(1 << 6)
83*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC5_IRQ					(1 << 5)
84*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC4_IRQ					(1 << 4)
85*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC3_IRQ					(1 << 3)
86*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC2_IRQ					(1 << 2)
87*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC1_IRQ					(1 << 1)
88*4882a593Smuzhiyun #define	LRADC_CTRL1_LRADC0_IRQ					(1 << 0)
89*4882a593Smuzhiyun 
90*4882a593Smuzhiyun #define	LRADC_CTRL2_DIVIDE_BY_TWO_MASK				(0xff << 24)
91*4882a593Smuzhiyun #define	LRADC_CTRL2_DIVIDE_BY_TWO_OFFSET			24
92*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMPSENSE_PWD				(1 << 15)
93*4882a593Smuzhiyun #define	LRADC_CTRL2_VTHSENSE_MASK				(0x3 << 13)
94*4882a593Smuzhiyun #define	LRADC_CTRL2_VTHSENSE_OFFSET				13
95*4882a593Smuzhiyun #define	LRADC_CTRL2_DISABLE_MUXAMP_BYPASS			(1 << 12)
96*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_SENSOR_IENABLE1			(1 << 9)
97*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_SENSOR_IENABLE0			(1 << 8)
98*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_MASK				(0xf << 4)
99*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_OFFSET				4
100*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_300				(0xf << 4)
101*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_280				(0xe << 4)
102*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_260				(0xd << 4)
103*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_240				(0xc << 4)
104*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_220				(0xb << 4)
105*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_200				(0xa << 4)
106*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_180				(0x9 << 4)
107*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_160				(0x8 << 4)
108*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_140				(0x7 << 4)
109*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_120				(0x6 << 4)
110*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_100				(0x5 << 4)
111*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_80				(0x4 << 4)
112*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_60				(0x3 << 4)
113*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_40				(0x2 << 4)
114*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_20				(0x1 << 4)
115*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC1_ZERO				(0x0 << 4)
116*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_MASK				(0xf << 0)
117*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_OFFSET				0
118*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_300				(0xf << 0)
119*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_280				(0xe << 0)
120*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_260				(0xd << 0)
121*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_240				(0xc << 0)
122*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_220				(0xb << 0)
123*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_200				(0xa << 0)
124*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_180				(0x9 << 0)
125*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_160				(0x8 << 0)
126*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_140				(0x7 << 0)
127*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_120				(0x6 << 0)
128*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_100				(0x5 << 0)
129*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_80				(0x4 << 0)
130*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_60				(0x3 << 0)
131*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_40				(0x2 << 0)
132*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_20				(0x1 << 0)
133*4882a593Smuzhiyun #define	LRADC_CTRL2_TEMP_ISRC0_ZERO				(0x0 << 0)
134*4882a593Smuzhiyun 
135*4882a593Smuzhiyun #define	LRADC_CTRL3_DISCARD_MASK				(0x3 << 24)
136*4882a593Smuzhiyun #define	LRADC_CTRL3_DISCARD_OFFSET				24
137*4882a593Smuzhiyun #define	LRADC_CTRL3_DISCARD_1_SAMPLE				(0x1 << 24)
138*4882a593Smuzhiyun #define	LRADC_CTRL3_DISCARD_2_SAMPLES				(0x2 << 24)
139*4882a593Smuzhiyun #define	LRADC_CTRL3_DISCARD_3_SAMPLES				(0x3 << 24)
140*4882a593Smuzhiyun #define	LRADC_CTRL3_FORCE_ANALOG_PWUP				(1 << 23)
141*4882a593Smuzhiyun #define	LRADC_CTRL3_FORCE_ANALOG_PWDN				(1 << 22)
142*4882a593Smuzhiyun #define	LRADC_CTRL3_CYCLE_TIME_MASK				(0x3 << 8)
143*4882a593Smuzhiyun #define	LRADC_CTRL3_CYCLE_TIME_OFFSET				8
144*4882a593Smuzhiyun #define	LRADC_CTRL3_CYCLE_TIME_6MHZ				(0x0 << 8)
145*4882a593Smuzhiyun #define	LRADC_CTRL3_CYCLE_TIME_4MHZ				(0x1 << 8)
146*4882a593Smuzhiyun #define	LRADC_CTRL3_CYCLE_TIME_3MHZ				(0x2 << 8)
147*4882a593Smuzhiyun #define	LRADC_CTRL3_CYCLE_TIME_2MHZ				(0x3 << 8)
148*4882a593Smuzhiyun #define	LRADC_CTRL3_HIGH_TIME_MASK				(0x3 << 4)
149*4882a593Smuzhiyun #define	LRADC_CTRL3_HIGH_TIME_OFFSET				4
150*4882a593Smuzhiyun #define	LRADC_CTRL3_HIGH_TIME_42NS				(0x0 << 4)
151*4882a593Smuzhiyun #define	LRADC_CTRL3_HIGH_TIME_83NS				(0x1 << 4)
152*4882a593Smuzhiyun #define	LRADC_CTRL3_HIGH_TIME_125NS				(0x2 << 4)
153*4882a593Smuzhiyun #define	LRADC_CTRL3_HIGH_TIME_250NS				(0x3 << 4)
154*4882a593Smuzhiyun #define	LRADC_CTRL3_DELAY_CLOCK					(1 << 1)
155*4882a593Smuzhiyun #define	LRADC_CTRL3_INVERT_CLOCK				(1 << 0)
156*4882a593Smuzhiyun 
157*4882a593Smuzhiyun #define	LRADC_STATUS_BUTTON1_PRESENT				(1 << 28)
158*4882a593Smuzhiyun #define	LRADC_STATUS_BUTTON0_PRESENT				(1 << 27)
159*4882a593Smuzhiyun #define	LRADC_STATUS_TEMP1_PRESENT				(1 << 26)
160*4882a593Smuzhiyun #define	LRADC_STATUS_TEMP0_PRESENT				(1 << 25)
161*4882a593Smuzhiyun #define	LRADC_STATUS_TOUCH_PANEL_PRESENT			(1 << 24)
162*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL7_PRESENT				(1 << 23)
163*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL6_PRESENT				(1 << 22)
164*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL5_PRESENT				(1 << 21)
165*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL4_PRESENT				(1 << 20)
166*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL3_PRESENT				(1 << 19)
167*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL2_PRESENT				(1 << 18)
168*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL1_PRESENT				(1 << 17)
169*4882a593Smuzhiyun #define	LRADC_STATUS_CHANNEL0_PRESENT				(1 << 16)
170*4882a593Smuzhiyun #define	LRADC_STATUS_BUTTON1_DETECT_RAW				(1 << 2)
171*4882a593Smuzhiyun #define	LRADC_STATUS_BUTTON0_DETECT_RAW				(1 << 1)
172*4882a593Smuzhiyun #define	LRADC_STATUS_TOUCH_DETECT_RAW				(1 << 0)
173*4882a593Smuzhiyun 
174*4882a593Smuzhiyun #define	LRADC_CH_TOGGLE						(1 << 31)
175*4882a593Smuzhiyun #define	LRADC_CH7_TESTMODE_TOGGLE				(1 << 30)
176*4882a593Smuzhiyun #define	LRADC_CH_ACCUMULATE					(1 << 29)
177*4882a593Smuzhiyun #define	LRADC_CH_NUM_SAMPLES_MASK				(0x1f << 24)
178*4882a593Smuzhiyun #define	LRADC_CH_NUM_SAMPLES_OFFSET				24
179*4882a593Smuzhiyun #define	LRADC_CH_VALUE_MASK					0x3ffff
180*4882a593Smuzhiyun #define	LRADC_CH_VALUE_OFFSET					0
181*4882a593Smuzhiyun 
182*4882a593Smuzhiyun #define	LRADC_DELAY_TRIGGER_LRADCS_MASK				(0xff << 24)
183*4882a593Smuzhiyun #define	LRADC_DELAY_TRIGGER_LRADCS_OFFSET			24
184*4882a593Smuzhiyun #define	LRADC_DELAY_KICK					(1 << 20)
185*4882a593Smuzhiyun #define	LRADC_DELAY_TRIGGER_DELAYS_MASK				(0xf << 16)
186*4882a593Smuzhiyun #define	LRADC_DELAY_TRIGGER_DELAYS_OFFSET			16
187*4882a593Smuzhiyun #define	LRADC_DELAY_LOOP_COUNT_MASK				(0x1f << 11)
188*4882a593Smuzhiyun #define	LRADC_DELAY_LOOP_COUNT_OFFSET				11
189*4882a593Smuzhiyun #define	LRADC_DELAY_DELAY_MASK					0x7ff
190*4882a593Smuzhiyun #define	LRADC_DELAY_DELAY_OFFSET				0
191*4882a593Smuzhiyun 
192*4882a593Smuzhiyun #define	LRADC_DEBUG0_READONLY_MASK				(0xffff << 16)
193*4882a593Smuzhiyun #define	LRADC_DEBUG0_READONLY_OFFSET				16
194*4882a593Smuzhiyun #define	LRADC_DEBUG0_STATE_MASK					(0xfff << 0)
195*4882a593Smuzhiyun #define	LRADC_DEBUG0_STATE_OFFSET				0
196*4882a593Smuzhiyun 
197*4882a593Smuzhiyun #define	LRADC_DEBUG1_REQUEST_MASK				(0xff << 16)
198*4882a593Smuzhiyun #define	LRADC_DEBUG1_REQUEST_OFFSET				16
199*4882a593Smuzhiyun #define	LRADC_DEBUG1_TESTMODE_COUNT_MASK			(0x1f << 8)
200*4882a593Smuzhiyun #define	LRADC_DEBUG1_TESTMODE_COUNT_OFFSET			8
201*4882a593Smuzhiyun #define	LRADC_DEBUG1_TESTMODE6					(1 << 2)
202*4882a593Smuzhiyun #define	LRADC_DEBUG1_TESTMODE5					(1 << 1)
203*4882a593Smuzhiyun #define	LRADC_DEBUG1_TESTMODE					(1 << 0)
204*4882a593Smuzhiyun 
205*4882a593Smuzhiyun #define	LRADC_CONVERSION_AUTOMATIC				(1 << 20)
206*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALE_FACTOR_MASK			(0x3 << 16)
207*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALE_FACTOR_OFFSET			16
208*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALE_FACTOR_NIMH			(0x0 << 16)
209*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALE_FACTOR_DUAL_NIMH			(0x1 << 16)
210*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALE_FACTOR_LI_ION			(0x2 << 16)
211*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALE_FACTOR_ALT_LI_ION		(0x3 << 16)
212*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALED_BATT_VOLTAGE_MASK		0x3ff
213*4882a593Smuzhiyun #define	LRADC_CONVERSION_SCALED_BATT_VOLTAGE_OFFSET		0
214*4882a593Smuzhiyun 
215*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_MASK				(0xf << 28)
216*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_OFFSET				28
217*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL0			(0x0 << 28)
218*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL1			(0x1 << 28)
219*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL2			(0x2 << 28)
220*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL3			(0x3 << 28)
221*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL4			(0x4 << 28)
222*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL5			(0x5 << 28)
223*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL6			(0x6 << 28)
224*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL7			(0x7 << 28)
225*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL8			(0x8 << 28)
226*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL9			(0x9 << 28)
227*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL10			(0xa << 28)
228*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL11			(0xb << 28)
229*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL12			(0xc << 28)
230*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL13			(0xd << 28)
231*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL14			(0xe << 28)
232*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL15			(0xf << 28)
233*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_MASK				(0xf << 24)
234*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_OFFSET				24
235*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL0			(0x0 << 24)
236*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL1			(0x1 << 24)
237*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL2			(0x2 << 24)
238*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL3			(0x3 << 24)
239*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL4			(0x4 << 24)
240*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL5			(0x5 << 24)
241*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL6			(0x6 << 24)
242*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL7			(0x7 << 24)
243*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL8			(0x8 << 24)
244*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL9			(0x9 << 24)
245*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL10			(0xa << 24)
246*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL11			(0xb << 24)
247*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL12			(0xc << 24)
248*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL13			(0xd << 24)
249*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL14			(0xe << 24)
250*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL15			(0xf << 24)
251*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_MASK				(0xf << 20)
252*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_OFFSET				20
253*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL0			(0x0 << 20)
254*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL1			(0x1 << 20)
255*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL2			(0x2 << 20)
256*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL3			(0x3 << 20)
257*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL4			(0x4 << 20)
258*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL5			(0x5 << 20)
259*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL6			(0x6 << 20)
260*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL7			(0x7 << 20)
261*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL8			(0x8 << 20)
262*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL9			(0x9 << 20)
263*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL10			(0xa << 20)
264*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL11			(0xb << 20)
265*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL12			(0xc << 20)
266*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL13			(0xd << 20)
267*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL14			(0xe << 20)
268*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL15			(0xf << 20)
269*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_MASK				(0xf << 16)
270*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_OFFSET				16
271*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL0			(0x0 << 16)
272*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL1			(0x1 << 16)
273*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL2			(0x2 << 16)
274*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL3			(0x3 << 16)
275*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL4			(0x4 << 16)
276*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL5			(0x5 << 16)
277*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL6			(0x6 << 16)
278*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL7			(0x7 << 16)
279*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL8			(0x8 << 16)
280*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL9			(0x9 << 16)
281*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL10			(0xa << 16)
282*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL11			(0xb << 16)
283*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL12			(0xc << 16)
284*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL13			(0xd << 16)
285*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL14			(0xe << 16)
286*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL15			(0xf << 16)
287*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_MASK				(0xf << 12)
288*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_OFFSET				12
289*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL0			(0x0 << 12)
290*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL1			(0x1 << 12)
291*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL2			(0x2 << 12)
292*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL3			(0x3 << 12)
293*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL4			(0x4 << 12)
294*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL5			(0x5 << 12)
295*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL6			(0x6 << 12)
296*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL7			(0x7 << 12)
297*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL8			(0x8 << 12)
298*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL9			(0x9 << 12)
299*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL10			(0xa << 12)
300*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL11			(0xb << 12)
301*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL12			(0xc << 12)
302*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL13			(0xd << 12)
303*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL14			(0xe << 12)
304*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL15			(0xf << 12)
305*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_MASK				(0xf << 8)
306*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_OFFSET				8
307*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL0			(0x0 << 8)
308*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL1			(0x1 << 8)
309*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL2			(0x2 << 8)
310*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL3			(0x3 << 8)
311*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL4			(0x4 << 8)
312*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL5			(0x5 << 8)
313*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL6			(0x6 << 8)
314*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL7			(0x7 << 8)
315*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL8			(0x8 << 8)
316*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL9			(0x9 << 8)
317*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL10			(0xa << 8)
318*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL11			(0xb << 8)
319*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL12			(0xc << 8)
320*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL13			(0xd << 8)
321*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL14			(0xe << 8)
322*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL15			(0xf << 8)
323*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_MASK				(0xf << 4)
324*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_OFFSET				4
325*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL0			(0x0 << 4)
326*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL1			(0x1 << 4)
327*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL2			(0x2 << 4)
328*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL3			(0x3 << 4)
329*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL4			(0x4 << 4)
330*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL5			(0x5 << 4)
331*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL6			(0x6 << 4)
332*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL7			(0x7 << 4)
333*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL8			(0x8 << 4)
334*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL9			(0x9 << 4)
335*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL10			(0xa << 4)
336*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL11			(0xb << 4)
337*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL12			(0xc << 4)
338*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL13			(0xd << 4)
339*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL14			(0xe << 4)
340*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL15			(0xf << 4)
341*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_MASK				0xf
342*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL0			(0x0 << 0)
343*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL1			(0x1 << 0)
344*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL2			(0x2 << 0)
345*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL3			(0x3 << 0)
346*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL4			(0x4 << 0)
347*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL5			(0x5 << 0)
348*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL6			(0x6 << 0)
349*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL7			(0x7 << 0)
350*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL8			(0x8 << 0)
351*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL9			(0x9 << 0)
352*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL10			(0xa << 0)
353*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL11			(0xb << 0)
354*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL12			(0xc << 0)
355*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL13			(0xd << 0)
356*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL14			(0xe << 0)
357*4882a593Smuzhiyun #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL15			(0xf << 0)
358*4882a593Smuzhiyun 
359*4882a593Smuzhiyun #define	LRADC_THRESHOLD_ENABLE					(1 << 24)
360*4882a593Smuzhiyun #define	LRADC_THRESHOLD_BATTCHRG_DISABLE			(1 << 23)
361*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_MASK			(0x7 << 20)
362*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_OFFSET			20
363*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL0			(0x0 << 20)
364*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL1			(0x1 << 20)
365*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL2			(0x2 << 20)
366*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL3			(0x3 << 20)
367*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL4			(0x4 << 20)
368*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL5			(0x5 << 20)
369*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL6			(0x6 << 20)
370*4882a593Smuzhiyun #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL7			(0x7 << 20)
371*4882a593Smuzhiyun #define	LRADC_THRESHOLD_SETTING_MASK				(0x3 << 18)
372*4882a593Smuzhiyun #define	LRADC_THRESHOLD_SETTING_OFFSET				18
373*4882a593Smuzhiyun #define	LRADC_THRESHOLD_SETTING_NO_COMPARE			(0x0 << 18)
374*4882a593Smuzhiyun #define	LRADC_THRESHOLD_SETTING_DETECT_LOW			(0x1 << 18)
375*4882a593Smuzhiyun #define	LRADC_THRESHOLD_SETTING_DETECT_HIGH			(0x2 << 18)
376*4882a593Smuzhiyun #define	LRADC_THRESHOLD_SETTING_RESERVED			(0x3 << 18)
377*4882a593Smuzhiyun #define	LRADC_THRESHOLD_VALUE_MASK				0x3ffff
378*4882a593Smuzhiyun #define	LRADC_THRESHOLD_VALUE_OFFSET				0
379*4882a593Smuzhiyun 
380*4882a593Smuzhiyun #define	LRADC_VERSION_MAJOR_MASK				(0xff << 24)
381*4882a593Smuzhiyun #define	LRADC_VERSION_MAJOR_OFFSET				24
382*4882a593Smuzhiyun #define	LRADC_VERSION_MINOR_MASK				(0xff << 16)
383*4882a593Smuzhiyun #define	LRADC_VERSION_MINOR_OFFSET				16
384*4882a593Smuzhiyun #define	LRADC_VERSION_STEP_MASK					0xffff
385*4882a593Smuzhiyun #define	LRADC_VERSION_STEP_OFFSET				0
386*4882a593Smuzhiyun 
387*4882a593Smuzhiyun #endif	/* __MX28_REGS_LRADC_H__ */
388