| lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 |  | 
|  | 2 | /************************************************************************** | 
|  | 3 | * | 
|  | 4 | *Copyright (c) 2013 ZTE Corporation. | 
|  | 5 | * | 
|  | 6 | * Ä£ ¿é Ãû : | 
|  | 7 | * ÎÄ ¼þ Ãû : drvs_he43106.h | 
|  | 8 | * Ïà¹ØÎļþ : | 
|  | 9 | * ʵÏÖ¹¦ÄÜ : HE43106оƬÏà¹ØÐÅÏ¢ | 
|  | 10 | * ×÷	 Õß : qihongfang | 
|  | 11 | * °æ	 ±¾ : V1.0 | 
|  | 12 | * Íê³ÉÈÕÆÚ : 2014-12-23 | 
|  | 13 | * | 
|  | 14 | * ÆäËü˵Ã÷ : | 
|  | 15 | * | 
|  | 16 | * Ð޸ļǼºÅ		ÈÕÆÚ			ÐÞ¸ÄÈË				ÐÞ¸ÄÄÚÈÝ | 
|  | 17 | * --------------------------------------------------------------------- | 
|  | 18 | *		   1			 2014.12.23 		   Æëºì·¼ 				   н¨ | 
|  | 19 | **************************************************************************/ | 
|  | 20 |  | 
|  | 21 | #ifndef _DRVS_HE43106_H | 
|  | 22 | #define _DRVS_HE43106_H | 
|  | 23 |  | 
|  | 24 | #include "drvs_general.h" | 
|  | 25 |  | 
|  | 26 | #define HE43106_I2C_SLAVE_ADDR0 0x3A | 
|  | 27 | #define I2C_BUS_FREQ (2*1000*1000) | 
|  | 28 | #define HE43106_ALL_BITS   0xFF | 
|  | 29 |  | 
|  | 30 |  | 
|  | 31 | #define HE43106_BITFVAL(var, lsh)   ( (var) << (lsh) ) | 
|  | 32 | #define HE43106_BITFMASK(wid, lsh)  ( ((1U << (wid)) - 1) << (lsh) ) | 
|  | 33 |  | 
|  | 34 | //#define BIT(n)  (UINT8)(1<<(n)) | 
|  | 35 | //#define CHARGER "zte_charger" | 
|  | 36 | #define GPIOFUNC_FUNC 1 | 
|  | 37 |  | 
|  | 38 | #define BOOST_REG            0x00 | 
|  | 39 | #define BLED_REG             0x01 | 
|  | 40 | #define FLASHLIGHT_REG       0x02 | 
|  | 41 | #define INTERRRUPT_MASK_REG  0x03 | 
|  | 42 | #define INTERRRUPT_REG       0x04 | 
|  | 43 | #define CHARGE_REG           0x05 | 
|  | 44 | #define CP_REG               0x06 | 
|  | 45 | #define TTC_TIMEOUT_REG      0x07 | 
|  | 46 | #define MCU_OPTION_0_REG     0x10 | 
|  | 47 | #define MCU_OPTION_1_REG     0x11 | 
|  | 48 |  | 
|  | 49 |  | 
|  | 50 | /*define for 0x00 BOOST_REG*/ | 
|  | 51 | #define OV_TEMP               (1<<7) | 
|  | 52 | #define BOOST_OVERLOAD_LATCH  (1<<6) | 
|  | 53 | #define LOWBAT_DETECT         (1<<5) | 
|  | 54 | #define NOLOAD_DETECT         (1<<4) | 
|  | 55 | #define BOOST_EN              (1<<3) | 
|  | 56 | #define DISCHARGE_ON          2 | 
|  | 57 | #define MCU_DISCHARGE_ON      1 | 
|  | 58 | #define MCU_DISCHARGE_EN      0 | 
|  | 59 |  | 
|  | 60 | /*define for 0x01 BLED_REG*/ | 
|  | 61 | #define MCU_BLED_EN         4 | 
|  | 62 | #define MCU_BLED4_ON        3 | 
|  | 63 | #define MCU_BLED3_ON        2 | 
|  | 64 | #define MCU_BLED2_ON        1 | 
|  | 65 | #define MCU_BLED1_ON        0 | 
|  | 66 |  | 
|  | 67 |  | 
|  | 68 | /*define for 0x03 INTERRRUPT_MASK_REG*/ | 
|  | 69 | #define MCU_INT_PIN_EN      7 | 
|  | 70 | #define MASK_ABNORMAL_INT   4 | 
|  | 71 | #define MASK_CP_INT         3 | 
|  | 72 | #define MASK_CHARGE_INT     2 | 
|  | 73 | #define MASK_NOLOAD_DET_INT 1 | 
|  | 74 | #define MASK_LOWBAT_INT     0 | 
|  | 75 | #define MASK_ALL_INT    0x9f | 
|  | 76 |  | 
|  | 77 | /*define for 0x04 INTERRRUPT_REG*/ | 
|  | 78 | #define ABNORMAL_INT      (1<<4) | 
|  | 79 | #define CP_INT            (1<<3) | 
|  | 80 | #define CHARGE_INT        (1<<2) | 
|  | 81 | #define NOLOAD_DET_INT    (1<<1) | 
|  | 82 | #define LOWBAT_INT        (1<<0) | 
|  | 83 | #define CHG_INT_ALL       0x1f | 
|  | 84 |  | 
|  | 85 | /*define for 0x05 CHARGE_REG*/ | 
|  | 86 | #define CHARGE_DISABLE      6//(1<<6) | 
|  | 87 | #define CHARGE_TIMEOUT      (1<<3) | 
|  | 88 | #define CHARGE_DONE         (1<<2) | 
|  | 89 | #define CHARGE_IN_PROGRESS  (1<<1) | 
|  | 90 | #define CHARGE_VIN_GOOD     (1<<0) | 
|  | 91 |  | 
|  | 92 | /*define for 0x06 CP_REG*/ | 
|  | 93 | #define FORCE_CP_ENABLE  6 | 
|  | 94 | #define CP3_HIGH         3 | 
|  | 95 | #define CP2_HIGH         2 | 
|  | 96 | #define CP1_HIGH         1 | 
|  | 97 | #define CP0_HIGH         0 | 
|  | 98 |  | 
|  | 99 | /*define for 0x07 TTC_TIMEOUT_REG*/ | 
|  | 100 | #define SW_RESET_CTRL1           7 | 
|  | 101 | #define CHARGE_TIMOUT_SEL        0/*bit 0~2*/ | 
|  | 102 |  | 
|  | 103 | /*define for 0x10 MCU_OPTION_0_REG*/ | 
|  | 104 | #define MCU_OL_LED_BLANK_DIS     7 | 
|  | 105 | #define CP_OPTION                5 | 
|  | 106 | #define MCU_CABLE_CPS_EN         4 | 
|  | 107 | #define MCU_BES_OUT_SEL          3 | 
|  | 108 | #define MCU_VBAT_REGULATION      0 | 
|  | 109 |  | 
|  | 110 | /*define for 0x11 MCU_OPTION_0_REG*/ | 
|  | 111 | #define SW_RESET_CTRL2         7 | 
|  | 112 | #define CHARGE_1A              5 | 
|  | 113 | #define MCU_SEL_0P1S           4 | 
|  | 114 | #define MCU_CHARGE_TIMEOUT_EN  3 | 
|  | 115 | #define CP_PROCESS_BYPASS      2 | 
|  | 116 | #define MCU_MODE               0 | 
|  | 117 |  | 
|  | 118 | SINT32 led_Reset(VOID); | 
|  | 119 | SINT32 chg_ChargerReset(VOID); | 
|  | 120 |  | 
|  | 121 | #endif/*END of _DRVS_HE43106_H*/ | 
|  | 122 |  |