]> git.sur5r.net Git - u-boot/commitdiff
pmic_fsl: Introduce FSL_PMIC_I2C_LENGTH
authorFabio Estevam <fabio.estevam@freescale.com>
Tue, 23 Oct 2012 06:34:50 +0000 (06:34 +0000)
committerStefano Babic <sbabic@denx.de>
Fri, 26 Oct 2012 14:28:07 +0000 (16:28 +0200)
Introduce FSL_PMIC_I2C_LENGTH to configure the number of bytes that are used to
communicate with the PMIC via I2C.

Instead of hardcoding the value, pass the number via a configurable option per
PMIC type.

This will be useful for adding support for PMIC MC34704 from Freescale, which
uses only one byte in its I2C protocol.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
drivers/misc/pmic_fsl.c
include/configs/mx35pdk.h
include/configs/mx53loco.h

index 0ff75ed76e506e6ffe249b15d2add731d1632a93..9d80b55e28b6ad8821df8d8d762d23afc7da73e7 100644 (file)
 #include <pmic.h>
 #include <fsl_pmic.h>
 
+#if defined(CONFIG_PMIC_FSL_MC13892)
+#define FSL_PMIC_I2C_LENGTH    3
+#endif
+
 #if defined(CONFIG_PMIC_SPI)
 static u32 pmic_spi_prepare_tx(u32 reg, u32 *val, u32 write)
 {
@@ -53,7 +57,7 @@ int pmic_init(void)
 #elif defined(CONFIG_PMIC_I2C)
        p->interface = PMIC_I2C;
        p->hw.i2c.addr = CONFIG_SYS_FSL_PMIC_I2C_ADDR;
-       p->hw.i2c.tx_num = 3;
+       p->hw.i2c.tx_num = FSL_PMIC_I2C_LENGTH;
        p->bus = I2C_PMIC;
 #else
 #error "You must select CONFIG_PMIC_SPI or CONFIG_PMIC_I2C"
index 826c912494d4c1285dfaec6a789821d055d60799..e79f76ed9d36d4d7a61027f4093b19253225fa13 100644 (file)
@@ -68,6 +68,7 @@
 #define CONFIG_PMIC
 #define CONFIG_PMIC_I2C
 #define CONFIG_PMIC_FSL
+#define CONFIG_PMIC_FSL_MC13892
 #define CONFIG_SYS_FSL_PMIC_I2C_ADDR   0x08
 #define CONFIG_RTC_MC13XXX
 
index 0658dd30031bdd709d26e1cb67b07f1504dc51f2..9e8f5ce3c8596c9a00ee51b14223a3bdf989cb1f 100644 (file)
@@ -93,6 +93,7 @@
 #define CONFIG_PMIC_I2C
 #define CONFIG_DIALOG_PMIC
 #define CONFIG_PMIC_FSL
+#define CONFIG_PMIC_FSL_MC13892
 #define CONFIG_SYS_DIALOG_PMIC_I2C_ADDR        0x48
 #define CONFIG_SYS_FSL_PMIC_I2C_ADDR   0x8