bq24770: Corrected charger driver used an incorrect SMBUS address.

BUG=none
TEST=Verified with a SMBus analyzer that only the expected device
address is detected on the bus.
BRANCH=none

Change-Id: Ib8c8589544b9ec11127619a1120eb21f211fd690
Signed-off-by: Kevin K Wong <kevin.k.wong@intel.com>
Reviewed-on: https://chromium-review.googlesource.com/267472
Reviewed-by: Alec Berg <alecaberg@chromium.org>
Reviewed-by: Shawn N <shawnn@chromium.org>
Commit-Queue: Divya Jyothi <divya.jyothi@intel.com>
This commit is contained in:
Kevin K Wong
2015-04-28 00:14:26 -07:00
committed by ChromeOS Commit Bot
parent 83b48a52ef
commit 6fb50e9090
2 changed files with 19 additions and 14 deletions

View File

@@ -197,16 +197,19 @@ int charger_post_init(void)
#ifndef BOARD_SAMUS
/* Turn off PROCHOT warning */
rv = i2c_write8(I2C_PORT_CHARGER, BQ24773_ADDR,
BQ24773_PROCHOT_OPTION1, 0);
rv = raw_read16(REG_PROCHOT_OPTION1, &option);
if (rv)
return rv;
option &= ~PROCHOT_OPTION1_SELECTOR_MASK;
rv = raw_write16(REG_PROCHOT_OPTION1, option);
#else
/* On Samus, use PROCHOT warning to detect charging problems */
/* Turn on PROCHOT warning */
rv = i2c_write16(I2C_PORT_CHARGER, BQ24773_ADDR,
BQ24773_PROCHOT_OPTION1, 0x8120);
rv = raw_write16(REG_PROCHOT_OPTION1, 0x8120);
/* Set PROCHOT ICRIT warning when IADP is >120% of IDPM */
rv |= i2c_write16(I2C_PORT_CHARGER, BQ24773_ADDR,
BQ24773_PROCHOT_OPTION0, 0x1b54);
rv |= raw_write16(REG_PROCHOT_OPTION0, 0x1b54);
#endif
if (rv)
@@ -214,8 +217,7 @@ int charger_post_init(void)
#ifdef CONFIG_CHARGER_ILIM_PIN_DISABLED
/* Read the external ILIM pin enabled flag. */
rv = i2c_read16(I2C_PORT_CHARGER, BQ24773_ADDR,
BQ24773_CHARGE_OPTION2, &option2);
rv = raw_read16(REG_CHARGE_OPTION2, &option2);
if (rv)
return rv;

View File

@@ -19,8 +19,8 @@
#define BQ24770_CHARGE_OPTION0 0x12
#define BQ24770_CHARGE_OPTION1 0x3B
#define BQ24770_CHARGE_OPTION2 0x38
#define BQ24770_PROTECT_OPTION0 0x3C
#define BQ24770_PROTECT_OPTION1 0x3D
#define BQ24770_PROCHOT_OPTION0 0x3C
#define BQ24770_PROCHOT_OPTION1 0x3D
#define BQ24770_CHARGE_CURRENT 0x14
#define BQ24770_MAX_CHARGE_VOLTAGE 0x15
#define BQ24770_MIN_SYSTEM_VOLTAGE 0x3E
@@ -46,6 +46,9 @@
#define OPTION2_EN_EXTILIM (1 << 7)
/* Prochot Option bits */
#define PROCHOT_OPTION1_SELECTOR_MASK 0x7f /* [6:0] PROCHOT SELECTOR */
/* ChargeCurrent Register - 0x14 (mA) */
#define CHARGE_I_OFF 0
#define CHARGE_I_MIN 128
@@ -69,8 +72,8 @@
#define REG_CHARGE_OPTION0 BQ24770_CHARGE_OPTION0
#define REG_CHARGE_OPTION1 BQ24770_CHARGE_OPTION1
#define REG_CHARGE_OPTION2 BQ24770_CHARGE_OPTION2
#define REG_PROTECT_OPTION0 BQ24770_PROTECT_OPTION0
#define REG_PROTECT_OPTION1 BQ24770_PROTECT_OPTION1
#define REG_PROCHOT_OPTION0 BQ24770_PROCHOT_OPTION0
#define REG_PROCHOT_OPTION1 BQ24770_PROCHOT_OPTION1
#define REG_CHARGE_CURRENT BQ24770_CHARGE_CURRENT
#define REG_MAX_CHARGE_VOLTAGE BQ24770_MAX_CHARGE_VOLTAGE
#define REG_MIN_SYSTEM_VOLTAGE BQ24770_MIN_SYSTEM_VOLTAGE
@@ -85,8 +88,8 @@
#define REG_CHARGE_OPTION0 BQ24773_CHARGE_OPTION0
#define REG_CHARGE_OPTION1 BQ24773_CHARGE_OPTION1
#define REG_CHARGE_OPTION2 BQ24773_CHARGE_OPTION2
#define REG_PROTECT_OPTION0 BQ24773_PROTECT_OPTION0
#define REG_PROTECT_OPTION1 BQ24773_PROTECT_OPTION1
#define REG_PROCHOT_OPTION0 BQ24773_PROCHOT_OPTION0
#define REG_PROCHOT_OPTION1 BQ24773_PROCHOT_OPTION1
#define REG_CHARGE_CURRENT BQ24773_CHARGE_CURRENT
#define REG_MAX_CHARGE_VOLTAGE BQ24773_MAX_CHARGE_VOLTAGE
#define REG_MIN_SYSTEM_VOLTAGE BQ24773_MIN_SYSTEM_VOLTAGE