xref: /openbmc/u-boot/arch/arm/include/asm/arch-mxs/regs-lradc.h (revision 83d290c56fab2d38cd1ab4c4cc7099559c1d5046)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
23a0398d7SOtavio Salvador /*
33a0398d7SOtavio Salvador  * Freescale i.MX28 LRADC Register Definitions
43a0398d7SOtavio Salvador  *
53a0398d7SOtavio Salvador  * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com>
63a0398d7SOtavio Salvador  * on behalf of DENX Software Engineering GmbH
73a0398d7SOtavio Salvador  *
83a0398d7SOtavio Salvador  * Based on code from LTIB:
93a0398d7SOtavio Salvador  * Copyright 2008-2009 Freescale Semiconductor, Inc. All Rights Reserved.
103a0398d7SOtavio Salvador  */
113a0398d7SOtavio Salvador 
123a0398d7SOtavio Salvador #ifndef __MX28_REGS_LRADC_H__
133a0398d7SOtavio Salvador #define __MX28_REGS_LRADC_H__
143a0398d7SOtavio Salvador 
15552a848eSStefano Babic #include <asm/mach-imx/regs-common.h>
163a0398d7SOtavio Salvador 
173a0398d7SOtavio Salvador #ifndef	__ASSEMBLY__
189c471142SOtavio Salvador struct mxs_lradc_regs {
19ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ctrl0);
20ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ctrl1);
21ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ctrl2);
22ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ctrl3);
23ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_status);
24ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch0);
25ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch1);
26ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch2);
27ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch3);
28ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch4);
29ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch5);
30ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch6);
31ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ch7);
32ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_delay0);
33ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_delay1);
34ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_delay2);
35ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_delay3);
36ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_debug0);
37ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_debug1);
38ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_conversion);
39ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_ctrl4);
40ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_treshold0);
41ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_treshold1);
42ddcf13b1SOtavio Salvador 	mxs_reg_32(hw_lradc_version);
433a0398d7SOtavio Salvador };
443a0398d7SOtavio Salvador #endif
453a0398d7SOtavio Salvador 
463a0398d7SOtavio Salvador #define	LRADC_CTRL0_SFTRST					(1 << 31)
473a0398d7SOtavio Salvador #define	LRADC_CTRL0_CLKGATE					(1 << 30)
483a0398d7SOtavio Salvador #define	LRADC_CTRL0_ONCHIP_GROUNDREF				(1 << 26)
493a0398d7SOtavio Salvador #define	LRADC_CTRL0_BUTTON1_DETECT_ENABLE			(1 << 25)
503a0398d7SOtavio Salvador #define	LRADC_CTRL0_BUTTON0_DETECT_ENABLE			(1 << 24)
513a0398d7SOtavio Salvador #define	LRADC_CTRL0_TOUCH_DETECT_ENABLE				(1 << 23)
523a0398d7SOtavio Salvador #define	LRADC_CTRL0_TOUCH_SCREEN_TYPE				(1 << 22)
533a0398d7SOtavio Salvador #define	LRADC_CTRL0_YNLRSW					(1 << 21)
543a0398d7SOtavio Salvador #define	LRADC_CTRL0_YPLLSW_MASK					(0x3 << 19)
553a0398d7SOtavio Salvador #define	LRADC_CTRL0_YPLLSW_OFFSET				19
563a0398d7SOtavio Salvador #define	LRADC_CTRL0_XNURSW_MASK					(0x3 << 17)
573a0398d7SOtavio Salvador #define	LRADC_CTRL0_XNURSW_OFFSET				17
583a0398d7SOtavio Salvador #define	LRADC_CTRL0_XPULSW					(1 << 16)
593a0398d7SOtavio Salvador #define	LRADC_CTRL0_SCHEDULE_MASK				0xff
603a0398d7SOtavio Salvador #define	LRADC_CTRL0_SCHEDULE_OFFSET				0
613a0398d7SOtavio Salvador 
623a0398d7SOtavio Salvador #define	LRADC_CTRL1_BUTTON1_DETECT_IRQ_EN			(1 << 28)
633a0398d7SOtavio Salvador #define	LRADC_CTRL1_BUTTON0_DETECT_IRQ_EN			(1 << 27)
643a0398d7SOtavio Salvador #define	LRADC_CTRL1_THRESHOLD1_DETECT_IRQ_EN			(1 << 26)
653a0398d7SOtavio Salvador #define	LRADC_CTRL1_THRESHOLD0_DETECT_IRQ_EN			(1 << 25)
663a0398d7SOtavio Salvador #define	LRADC_CTRL1_TOUCH_DETECT_IRQ_EN				(1 << 24)
673a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC7_IRQ_EN				(1 << 23)
683a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC6_IRQ_EN				(1 << 22)
693a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC5_IRQ_EN				(1 << 21)
703a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC4_IRQ_EN				(1 << 20)
713a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC3_IRQ_EN				(1 << 19)
723a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC2_IRQ_EN				(1 << 18)
733a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC1_IRQ_EN				(1 << 17)
743a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC0_IRQ_EN				(1 << 16)
753a0398d7SOtavio Salvador #define	LRADC_CTRL1_BUTTON1_DETECT_IRQ				(1 << 12)
763a0398d7SOtavio Salvador #define	LRADC_CTRL1_BUTTON0_DETECT_IRQ				(1 << 11)
773a0398d7SOtavio Salvador #define	LRADC_CTRL1_THRESHOLD1_DETECT_IRQ			(1 << 10)
783a0398d7SOtavio Salvador #define	LRADC_CTRL1_THRESHOLD0_DETECT_IRQ			(1 << 9)
793a0398d7SOtavio Salvador #define	LRADC_CTRL1_TOUCH_DETECT_IRQ				(1 << 8)
803a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC7_IRQ					(1 << 7)
813a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC6_IRQ					(1 << 6)
823a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC5_IRQ					(1 << 5)
833a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC4_IRQ					(1 << 4)
843a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC3_IRQ					(1 << 3)
853a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC2_IRQ					(1 << 2)
863a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC1_IRQ					(1 << 1)
873a0398d7SOtavio Salvador #define	LRADC_CTRL1_LRADC0_IRQ					(1 << 0)
883a0398d7SOtavio Salvador 
893a0398d7SOtavio Salvador #define	LRADC_CTRL2_DIVIDE_BY_TWO_MASK				(0xff << 24)
903a0398d7SOtavio Salvador #define	LRADC_CTRL2_DIVIDE_BY_TWO_OFFSET			24
913a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMPSENSE_PWD				(1 << 15)
923a0398d7SOtavio Salvador #define	LRADC_CTRL2_VTHSENSE_MASK				(0x3 << 13)
933a0398d7SOtavio Salvador #define	LRADC_CTRL2_VTHSENSE_OFFSET				13
943a0398d7SOtavio Salvador #define	LRADC_CTRL2_DISABLE_MUXAMP_BYPASS			(1 << 12)
953a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_SENSOR_IENABLE1			(1 << 9)
963a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_SENSOR_IENABLE0			(1 << 8)
973a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_MASK				(0xf << 4)
983a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_OFFSET				4
993a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_300				(0xf << 4)
1003a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_280				(0xe << 4)
1013a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_260				(0xd << 4)
1023a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_240				(0xc << 4)
1033a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_220				(0xb << 4)
1043a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_200				(0xa << 4)
1053a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_180				(0x9 << 4)
1063a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_160				(0x8 << 4)
1073a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_140				(0x7 << 4)
1083a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_120				(0x6 << 4)
1093a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_100				(0x5 << 4)
1103a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_80				(0x4 << 4)
1113a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_60				(0x3 << 4)
1123a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_40				(0x2 << 4)
1133a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_20				(0x1 << 4)
1143a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC1_ZERO				(0x0 << 4)
1153a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_MASK				(0xf << 0)
1163a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_OFFSET				0
1173a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_300				(0xf << 0)
1183a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_280				(0xe << 0)
1193a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_260				(0xd << 0)
1203a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_240				(0xc << 0)
1213a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_220				(0xb << 0)
1223a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_200				(0xa << 0)
1233a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_180				(0x9 << 0)
1243a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_160				(0x8 << 0)
1253a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_140				(0x7 << 0)
1263a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_120				(0x6 << 0)
1273a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_100				(0x5 << 0)
1283a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_80				(0x4 << 0)
1293a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_60				(0x3 << 0)
1303a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_40				(0x2 << 0)
1313a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_20				(0x1 << 0)
1323a0398d7SOtavio Salvador #define	LRADC_CTRL2_TEMP_ISRC0_ZERO				(0x0 << 0)
1333a0398d7SOtavio Salvador 
1343a0398d7SOtavio Salvador #define	LRADC_CTRL3_DISCARD_MASK				(0x3 << 24)
1353a0398d7SOtavio Salvador #define	LRADC_CTRL3_DISCARD_OFFSET				24
1363a0398d7SOtavio Salvador #define	LRADC_CTRL3_DISCARD_1_SAMPLE				(0x1 << 24)
1373a0398d7SOtavio Salvador #define	LRADC_CTRL3_DISCARD_2_SAMPLES				(0x2 << 24)
1383a0398d7SOtavio Salvador #define	LRADC_CTRL3_DISCARD_3_SAMPLES				(0x3 << 24)
1393a0398d7SOtavio Salvador #define	LRADC_CTRL3_FORCE_ANALOG_PWUP				(1 << 23)
1403a0398d7SOtavio Salvador #define	LRADC_CTRL3_FORCE_ANALOG_PWDN				(1 << 22)
1413a0398d7SOtavio Salvador #define	LRADC_CTRL3_CYCLE_TIME_MASK				(0x3 << 8)
1423a0398d7SOtavio Salvador #define	LRADC_CTRL3_CYCLE_TIME_OFFSET				8
1433a0398d7SOtavio Salvador #define	LRADC_CTRL3_CYCLE_TIME_6MHZ				(0x0 << 8)
1443a0398d7SOtavio Salvador #define	LRADC_CTRL3_CYCLE_TIME_4MHZ				(0x1 << 8)
1453a0398d7SOtavio Salvador #define	LRADC_CTRL3_CYCLE_TIME_3MHZ				(0x2 << 8)
1463a0398d7SOtavio Salvador #define	LRADC_CTRL3_CYCLE_TIME_2MHZ				(0x3 << 8)
1473a0398d7SOtavio Salvador #define	LRADC_CTRL3_HIGH_TIME_MASK				(0x3 << 4)
1483a0398d7SOtavio Salvador #define	LRADC_CTRL3_HIGH_TIME_OFFSET				4
1493a0398d7SOtavio Salvador #define	LRADC_CTRL3_HIGH_TIME_42NS				(0x0 << 4)
1503a0398d7SOtavio Salvador #define	LRADC_CTRL3_HIGH_TIME_83NS				(0x1 << 4)
1513a0398d7SOtavio Salvador #define	LRADC_CTRL3_HIGH_TIME_125NS				(0x2 << 4)
1523a0398d7SOtavio Salvador #define	LRADC_CTRL3_HIGH_TIME_250NS				(0x3 << 4)
1533a0398d7SOtavio Salvador #define	LRADC_CTRL3_DELAY_CLOCK					(1 << 1)
1543a0398d7SOtavio Salvador #define	LRADC_CTRL3_INVERT_CLOCK				(1 << 0)
1553a0398d7SOtavio Salvador 
1563a0398d7SOtavio Salvador #define	LRADC_STATUS_BUTTON1_PRESENT				(1 << 28)
1573a0398d7SOtavio Salvador #define	LRADC_STATUS_BUTTON0_PRESENT				(1 << 27)
1583a0398d7SOtavio Salvador #define	LRADC_STATUS_TEMP1_PRESENT				(1 << 26)
1593a0398d7SOtavio Salvador #define	LRADC_STATUS_TEMP0_PRESENT				(1 << 25)
1603a0398d7SOtavio Salvador #define	LRADC_STATUS_TOUCH_PANEL_PRESENT			(1 << 24)
1613a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL7_PRESENT				(1 << 23)
1623a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL6_PRESENT				(1 << 22)
1633a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL5_PRESENT				(1 << 21)
1643a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL4_PRESENT				(1 << 20)
1653a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL3_PRESENT				(1 << 19)
1663a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL2_PRESENT				(1 << 18)
1673a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL1_PRESENT				(1 << 17)
1683a0398d7SOtavio Salvador #define	LRADC_STATUS_CHANNEL0_PRESENT				(1 << 16)
1693a0398d7SOtavio Salvador #define	LRADC_STATUS_BUTTON1_DETECT_RAW				(1 << 2)
1703a0398d7SOtavio Salvador #define	LRADC_STATUS_BUTTON0_DETECT_RAW				(1 << 1)
1713a0398d7SOtavio Salvador #define	LRADC_STATUS_TOUCH_DETECT_RAW				(1 << 0)
1723a0398d7SOtavio Salvador 
1733a0398d7SOtavio Salvador #define	LRADC_CH_TOGGLE						(1 << 31)
1743a0398d7SOtavio Salvador #define	LRADC_CH7_TESTMODE_TOGGLE				(1 << 30)
1753a0398d7SOtavio Salvador #define	LRADC_CH_ACCUMULATE					(1 << 29)
1763a0398d7SOtavio Salvador #define	LRADC_CH_NUM_SAMPLES_MASK				(0x1f << 24)
1773a0398d7SOtavio Salvador #define	LRADC_CH_NUM_SAMPLES_OFFSET				24
1783a0398d7SOtavio Salvador #define	LRADC_CH_VALUE_MASK					0x3ffff
1793a0398d7SOtavio Salvador #define	LRADC_CH_VALUE_OFFSET					0
1803a0398d7SOtavio Salvador 
1813a0398d7SOtavio Salvador #define	LRADC_DELAY_TRIGGER_LRADCS_MASK				(0xff << 24)
1823a0398d7SOtavio Salvador #define	LRADC_DELAY_TRIGGER_LRADCS_OFFSET			24
1833a0398d7SOtavio Salvador #define	LRADC_DELAY_KICK					(1 << 20)
1843a0398d7SOtavio Salvador #define	LRADC_DELAY_TRIGGER_DELAYS_MASK				(0xf << 16)
1853a0398d7SOtavio Salvador #define	LRADC_DELAY_TRIGGER_DELAYS_OFFSET			16
1863a0398d7SOtavio Salvador #define	LRADC_DELAY_LOOP_COUNT_MASK				(0x1f << 11)
1873a0398d7SOtavio Salvador #define	LRADC_DELAY_LOOP_COUNT_OFFSET				11
1883a0398d7SOtavio Salvador #define	LRADC_DELAY_DELAY_MASK					0x7ff
1893a0398d7SOtavio Salvador #define	LRADC_DELAY_DELAY_OFFSET				0
1903a0398d7SOtavio Salvador 
1913a0398d7SOtavio Salvador #define	LRADC_DEBUG0_READONLY_MASK				(0xffff << 16)
1923a0398d7SOtavio Salvador #define	LRADC_DEBUG0_READONLY_OFFSET				16
1933a0398d7SOtavio Salvador #define	LRADC_DEBUG0_STATE_MASK					(0xfff << 0)
1943a0398d7SOtavio Salvador #define	LRADC_DEBUG0_STATE_OFFSET				0
1953a0398d7SOtavio Salvador 
1963a0398d7SOtavio Salvador #define	LRADC_DEBUG1_REQUEST_MASK				(0xff << 16)
1973a0398d7SOtavio Salvador #define	LRADC_DEBUG1_REQUEST_OFFSET				16
1983a0398d7SOtavio Salvador #define	LRADC_DEBUG1_TESTMODE_COUNT_MASK			(0x1f << 8)
1993a0398d7SOtavio Salvador #define	LRADC_DEBUG1_TESTMODE_COUNT_OFFSET			8
2003a0398d7SOtavio Salvador #define	LRADC_DEBUG1_TESTMODE6					(1 << 2)
2013a0398d7SOtavio Salvador #define	LRADC_DEBUG1_TESTMODE5					(1 << 1)
2023a0398d7SOtavio Salvador #define	LRADC_DEBUG1_TESTMODE					(1 << 0)
2033a0398d7SOtavio Salvador 
2043a0398d7SOtavio Salvador #define	LRADC_CONVERSION_AUTOMATIC				(1 << 20)
2053a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALE_FACTOR_MASK			(0x3 << 16)
2063a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALE_FACTOR_OFFSET			16
2073a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALE_FACTOR_NIMH			(0x0 << 16)
2083a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALE_FACTOR_DUAL_NIMH			(0x1 << 16)
2093a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALE_FACTOR_LI_ION			(0x2 << 16)
2103a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALE_FACTOR_ALT_LI_ION		(0x3 << 16)
2113a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALED_BATT_VOLTAGE_MASK		0x3ff
2123a0398d7SOtavio Salvador #define	LRADC_CONVERSION_SCALED_BATT_VOLTAGE_OFFSET		0
2133a0398d7SOtavio Salvador 
2143a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_MASK				(0xf << 28)
2153a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_OFFSET				28
2163a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL0			(0x0 << 28)
2173a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL1			(0x1 << 28)
2183a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL2			(0x2 << 28)
2193a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL3			(0x3 << 28)
2203a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL4			(0x4 << 28)
2213a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL5			(0x5 << 28)
2223a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL6			(0x6 << 28)
2233a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL7			(0x7 << 28)
2243a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL8			(0x8 << 28)
2253a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL9			(0x9 << 28)
2263a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL10			(0xa << 28)
2273a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL11			(0xb << 28)
2283a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL12			(0xc << 28)
2293a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL13			(0xd << 28)
2303a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL14			(0xe << 28)
2313a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC7SELECT_CHANNEL15			(0xf << 28)
2323a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_MASK				(0xf << 24)
2333a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_OFFSET				24
2343a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL0			(0x0 << 24)
2353a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL1			(0x1 << 24)
2363a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL2			(0x2 << 24)
2373a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL3			(0x3 << 24)
2383a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL4			(0x4 << 24)
2393a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL5			(0x5 << 24)
2403a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL6			(0x6 << 24)
2413a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL7			(0x7 << 24)
2423a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL8			(0x8 << 24)
2433a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL9			(0x9 << 24)
2443a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL10			(0xa << 24)
2453a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL11			(0xb << 24)
2463a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL12			(0xc << 24)
2473a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL13			(0xd << 24)
2483a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL14			(0xe << 24)
2493a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC6SELECT_CHANNEL15			(0xf << 24)
2503a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_MASK				(0xf << 20)
2513a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_OFFSET				20
2523a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL0			(0x0 << 20)
2533a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL1			(0x1 << 20)
2543a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL2			(0x2 << 20)
2553a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL3			(0x3 << 20)
2563a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL4			(0x4 << 20)
2573a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL5			(0x5 << 20)
2583a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL6			(0x6 << 20)
2593a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL7			(0x7 << 20)
2603a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL8			(0x8 << 20)
2613a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL9			(0x9 << 20)
2623a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL10			(0xa << 20)
2633a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL11			(0xb << 20)
2643a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL12			(0xc << 20)
2653a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL13			(0xd << 20)
2663a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL14			(0xe << 20)
2673a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC5SELECT_CHANNEL15			(0xf << 20)
2683a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_MASK				(0xf << 16)
2693a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_OFFSET				16
2703a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL0			(0x0 << 16)
2713a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL1			(0x1 << 16)
2723a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL2			(0x2 << 16)
2733a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL3			(0x3 << 16)
2743a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL4			(0x4 << 16)
2753a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL5			(0x5 << 16)
2763a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL6			(0x6 << 16)
2773a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL7			(0x7 << 16)
2783a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL8			(0x8 << 16)
2793a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL9			(0x9 << 16)
2803a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL10			(0xa << 16)
2813a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL11			(0xb << 16)
2823a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL12			(0xc << 16)
2833a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL13			(0xd << 16)
2843a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL14			(0xe << 16)
2853a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC4SELECT_CHANNEL15			(0xf << 16)
2863a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_MASK				(0xf << 12)
2873a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_OFFSET				12
2883a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL0			(0x0 << 12)
2893a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL1			(0x1 << 12)
2903a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL2			(0x2 << 12)
2913a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL3			(0x3 << 12)
2923a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL4			(0x4 << 12)
2933a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL5			(0x5 << 12)
2943a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL6			(0x6 << 12)
2953a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL7			(0x7 << 12)
2963a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL8			(0x8 << 12)
2973a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL9			(0x9 << 12)
2983a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL10			(0xa << 12)
2993a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL11			(0xb << 12)
3003a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL12			(0xc << 12)
3013a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL13			(0xd << 12)
3023a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL14			(0xe << 12)
3033a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC3SELECT_CHANNEL15			(0xf << 12)
3043a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_MASK				(0xf << 8)
3053a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_OFFSET				8
3063a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL0			(0x0 << 8)
3073a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL1			(0x1 << 8)
3083a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL2			(0x2 << 8)
3093a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL3			(0x3 << 8)
3103a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL4			(0x4 << 8)
3113a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL5			(0x5 << 8)
3123a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL6			(0x6 << 8)
3133a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL7			(0x7 << 8)
3143a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL8			(0x8 << 8)
3153a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL9			(0x9 << 8)
3163a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL10			(0xa << 8)
3173a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL11			(0xb << 8)
3183a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL12			(0xc << 8)
3193a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL13			(0xd << 8)
3203a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL14			(0xe << 8)
3213a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC2SELECT_CHANNEL15			(0xf << 8)
3223a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_MASK				(0xf << 4)
3233a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_OFFSET				4
3243a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL0			(0x0 << 4)
3253a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL1			(0x1 << 4)
3263a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL2			(0x2 << 4)
3273a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL3			(0x3 << 4)
3283a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL4			(0x4 << 4)
3293a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL5			(0x5 << 4)
3303a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL6			(0x6 << 4)
3313a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL7			(0x7 << 4)
3323a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL8			(0x8 << 4)
3333a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL9			(0x9 << 4)
3343a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL10			(0xa << 4)
3353a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL11			(0xb << 4)
3363a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL12			(0xc << 4)
3373a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL13			(0xd << 4)
3383a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL14			(0xe << 4)
3393a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC1SELECT_CHANNEL15			(0xf << 4)
3403a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_MASK				0xf
3413a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL0			(0x0 << 0)
3423a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL1			(0x1 << 0)
3433a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL2			(0x2 << 0)
3443a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL3			(0x3 << 0)
3453a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL4			(0x4 << 0)
3463a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL5			(0x5 << 0)
3473a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL6			(0x6 << 0)
3483a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL7			(0x7 << 0)
3493a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL8			(0x8 << 0)
3503a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL9			(0x9 << 0)
3513a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL10			(0xa << 0)
3523a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL11			(0xb << 0)
3533a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL12			(0xc << 0)
3543a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL13			(0xd << 0)
3553a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL14			(0xe << 0)
3563a0398d7SOtavio Salvador #define	LRADC_CTRL4_LRADC0SELECT_CHANNEL15			(0xf << 0)
3573a0398d7SOtavio Salvador 
3583a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_ENABLE					(1 << 24)
3593a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_BATTCHRG_DISABLE			(1 << 23)
3603a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_MASK			(0x7 << 20)
3613a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_OFFSET			20
3623a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL0			(0x0 << 20)
3633a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL1			(0x1 << 20)
3643a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL2			(0x2 << 20)
3653a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL3			(0x3 << 20)
3663a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL4			(0x4 << 20)
3673a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL5			(0x5 << 20)
3683a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL6			(0x6 << 20)
3693a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_CHANNEL_SEL_CHANNEL7			(0x7 << 20)
3703a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_SETTING_MASK				(0x3 << 18)
3713a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_SETTING_OFFSET				18
3723a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_SETTING_NO_COMPARE			(0x0 << 18)
3733a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_SETTING_DETECT_LOW			(0x1 << 18)
3743a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_SETTING_DETECT_HIGH			(0x2 << 18)
3753a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_SETTING_RESERVED			(0x3 << 18)
3763a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_VALUE_MASK				0x3ffff
3773a0398d7SOtavio Salvador #define	LRADC_THRESHOLD_VALUE_OFFSET				0
3783a0398d7SOtavio Salvador 
3793a0398d7SOtavio Salvador #define	LRADC_VERSION_MAJOR_MASK				(0xff << 24)
3803a0398d7SOtavio Salvador #define	LRADC_VERSION_MAJOR_OFFSET				24
3813a0398d7SOtavio Salvador #define	LRADC_VERSION_MINOR_MASK				(0xff << 16)
3823a0398d7SOtavio Salvador #define	LRADC_VERSION_MINOR_OFFSET				16
3833a0398d7SOtavio Salvador #define	LRADC_VERSION_STEP_MASK					0xffff
3843a0398d7SOtavio Salvador #define	LRADC_VERSION_STEP_OFFSET				0
3853a0398d7SOtavio Salvador 
3863a0398d7SOtavio Salvador #endif	/* __MX28_REGS_LRADC_H__ */
387