119 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			119 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			C
		
	
	
	
/*
 | 
						|
 * (C) Copyright 2006 DENX Software Engineering
 | 
						|
 *
 | 
						|
 * See file CREDITS for list of people who contributed to this
 | 
						|
 * project.
 | 
						|
 *
 | 
						|
 * This program is free software; you can redistribute it and/or
 | 
						|
 * modify it under the terms of the GNU General Public License as
 | 
						|
 * published by the Free Software Foundation; either version 2 of
 | 
						|
 * the License, or (at your option) any later version.
 | 
						|
 *
 | 
						|
 * This program is distributed in the hope that it will be useful,
 | 
						|
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
						|
 * GNU General Public License for more details.
 | 
						|
 *
 | 
						|
 * You should have received a copy of the GNU General Public License
 | 
						|
 * along with this program; if not, write to the Free Software
 | 
						|
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 | 
						|
 * MA 02111-1307 USA
 | 
						|
 */
 | 
						|
 | 
						|
/* DA9030 register definitions */
 | 
						|
#define CID			0x00
 | 
						|
#define EVENT_A			0x01
 | 
						|
#define EVENT_B			0x02
 | 
						|
#define EVENT_C			0x03
 | 
						|
#define STATUS			0x04
 | 
						|
#define IRQ_MASK_A		0x05
 | 
						|
#define IRQ_MASK_B		0x06
 | 
						|
#define IRQ_MASK_C		0x07
 | 
						|
#define SYS_CONTROL_A		0x08
 | 
						|
#define SYS_CONTROL_B		0x09
 | 
						|
#define FAULT_LOG		0x0A
 | 
						|
#define LDO_10_11		0x10
 | 
						|
#define LDO_15			0x11
 | 
						|
#define LDO_14_16		0x12
 | 
						|
#define LDO_18_19		0x13
 | 
						|
#define LDO_17_SIMCP0		0x14
 | 
						|
#define BUCK2_DVC1		0x15
 | 
						|
#define BUCK2_DVC2		0x16
 | 
						|
#define REG_CONTROL_1_17	0x17
 | 
						|
#define REG_CONTROL_2_18	0x18
 | 
						|
#define USBPUMP			0x19
 | 
						|
#define SLEEP_CONTROL		0x1A
 | 
						|
#define STARTUP_CONTROL		0x1B
 | 
						|
#define LED1_CONTROL		0x20
 | 
						|
#define LED2_CONTROL		0x21
 | 
						|
#define LED3_CONTROL		0x22
 | 
						|
#define LED4_CONTROL		0x23
 | 
						|
#define LEDPC_CONTROL		0x24
 | 
						|
#define WLED_CONTROL		0x25
 | 
						|
#define MISC_CONTROLA		0x26
 | 
						|
#define MISC_CONTROLB		0x27
 | 
						|
#define CHARGE_CONTROL		0x28
 | 
						|
#define CCTR_CONTROL		0x29
 | 
						|
#define TCTR_CONTROL		0x2A
 | 
						|
#define CHARGE_PULSE		0x2B
 | 
						|
 | 
						|
/* ... some missing ...*/
 | 
						|
 | 
						|
#define LDO1			0x90
 | 
						|
#define LDO2_3			0x91
 | 
						|
#define LDO4_5			0x92
 | 
						|
#define LDO6_SIMCP		0x93
 | 
						|
#define LDO7_8			0x94
 | 
						|
#define LDO9_12			0x95
 | 
						|
#define BUCK			0x96
 | 
						|
#define REG_CONTROL_1_97	0x97
 | 
						|
#define REG_CONTROL_2_98	0x98
 | 
						|
#define REG_SLEEP_CONTROL1	0x99
 | 
						|
#define REG_SLEEP_CONTROL2	0x9A
 | 
						|
#define REG_SLEEP_CONTROL3	0x9B
 | 
						|
#define ADC_MAN_CONTROL		0xA0
 | 
						|
#define ADC_AUTO_CONTROL	0xA1
 | 
						|
#define VBATMON			0xA2
 | 
						|
#define VBATMONTXMON		0xA3
 | 
						|
#define TBATHIGHP		0xA4
 | 
						|
#define TBATHIGHN		0xA5
 | 
						|
#define TBATLOW			0xA6
 | 
						|
#define MAN_RES			0xB0
 | 
						|
#define VBAT_RES		0xB1
 | 
						|
#define VBATMIN_RES		0xB2
 | 
						|
#define VBATMINTXON_RES		0xB3
 | 
						|
#define ICHMAX_RES		0xB4
 | 
						|
#define ICHMIN_RES		0xB5
 | 
						|
#define ICHAVERAGE_RES		0xB6
 | 
						|
#define VCHMAX_RES		0xB7
 | 
						|
#define VCHMIN_RES		0xB8
 | 
						|
#define TBAT_RES		0xB9
 | 
						|
#define ADC_IN4_RES		0xBA
 | 
						|
 | 
						|
#define STATUS_ONKEY_N		0x1	/* current ONKEY_N value */
 | 
						|
#define STATUS_PWREN1		(1<<1)	/* PWREN1 value */
 | 
						|
#define STATUS_EXTON		(1<<2)	/* EXTON value */
 | 
						|
#define STATUS_CHDET		(1<<3)	/* Charger detection status */
 | 
						|
#define STATUS_TBAT		(1<<4)	/* Battery over/under temperature status */
 | 
						|
#define STATUS_VBATMON		(1<<5)	/* VBATMON comparison status */
 | 
						|
#define STATUS_VBATMONTXON	(1<<6)	/* VBATMONTXON comparison status */
 | 
						|
#define STATUS_CHIOVER		(1<<7)	/* Charge overcurrent */
 | 
						|
 | 
						|
#define SYS_CONTROL_A_SLEEP_N_PIN_ENABLE	0x1
 | 
						|
#define SYS_CONTROL_A_SHUT_DOWN			(1<<1)
 | 
						|
#define SYS_CONTROL_A_HWRES_ENABLE		(1<<2)
 | 
						|
#define SYS_CONTROL_A_WDOG_ACTION		(1<<3)
 | 
						|
#define SYS_CONTROL_A_WATCHDOG			(1<<7)
 | 
						|
 | 
						|
#define MISC_CONTROLB_USB_INT_RISING		(1<<2)
 | 
						|
#define MISC_CONTROLB_SESSION_VALID_EN		(1<<3)
 | 
						|
 | 
						|
#define USB_PUMP_USBVE				(1<<0)
 | 
						|
#define USB_PUMP_USBVEP				(1<<1)
 | 
						|
#define USB_PUMP_SRP_DETECT			(1<<2)
 | 
						|
#define USB_PUMP_SESSION_VALID			(1<<3)
 | 
						|
#define USB_PUMP_VBUS_VALID_4_0			(1<<4)
 | 
						|
#define USB_PUMP_VBUS_VALID_4_4			(1<<5)
 | 
						|
#define USB_PUMP_EN_USBVE			(1<<6)
 | 
						|
#define USB_PUMP_EN_USBVEP			(1<<7)
 |