diff options
| author | Vincent Stehlé <v-stehle@ti.com> | 2012-12-03 05:23:17 +0000 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2012-12-10 12:45:35 -0700 | 
| commit | ce851c8b3c8d3318b7afd46019f8ac50a8587ee4 (patch) | |
| tree | 8ec1198f7d5b01428b50a04f75e1475c62b38163 | |
| parent | febc4cd48a5c030c7fd411be519505701c100838 (diff) | |
| download | olio-uboot-2014.01-ce851c8b3c8d3318b7afd46019f8ac50a8587ee4.tar.xz olio-uboot-2014.01-ce851c8b3c8d3318b7afd46019f8ac50a8587ee4.zip  | |
power: twl6035: complain on LDO9 error
We handle i2c_write return code and complain in case of error. We propagate the
error, too, to allow better handling at the upper level in the future.
Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
| -rw-r--r-- | drivers/power/twl6035.c | 17 | ||||
| -rw-r--r-- | include/twl6035.h | 2 | 
2 files changed, 14 insertions, 5 deletions
diff --git a/drivers/power/twl6035.c b/drivers/power/twl6035.c index 624c09e85..d3de698cd 100644 --- a/drivers/power/twl6035.c +++ b/drivers/power/twl6035.c @@ -50,16 +50,25 @@ void twl6035_init_settings(void)  	return;  } -void twl6035_mmc1_poweron_ldo(void) +int twl6035_mmc1_poweron_ldo(void)  {  	u8 val = 0;  	/* set LDO9 TWL6035 to 3V */  	val = 0x2b; /* (3 -.9)*28 +1 */ -	palmas_write_u8(0x48, LDO9_VOLTAGE, val); + +	if (palmas_write_u8(0x48, LDO9_VOLTAGE, val)) { +		printf("twl6035: could not set LDO9 voltage.\n"); +		return 1; +	}  	/* TURN ON LDO9 */  	val = LDO_ON | LDO_MODE_SLEEP | LDO_MODE_ACTIVE; -	palmas_write_u8(0x48, LDO9_CTRL, val); -	return; + +	if (palmas_write_u8(0x48, LDO9_CTRL, val)) { +		printf("twl6035: could not turn on LDO9.\n"); +		return 1; +	} + +	return 0;  } diff --git a/include/twl6035.h b/include/twl6035.h index e21ddbaf2..ce74348d4 100644 --- a/include/twl6035.h +++ b/include/twl6035.h @@ -39,4 +39,4 @@  int twl6035_i2c_write_u8(u8 chip_no, u8 val, u8 reg);  int twl6035_i2c_read_u8(u8 chip_no, u8 *val, u8 reg);  void twl6035_init_settings(void); -void twl6035_mmc1_poweron_ldo(void); +int twl6035_mmc1_poweron_ldo(void);  |