Re: [U-Boot] [PATCH 1/6] exynos: Use common pmic_reg_update() definition

2013-10-02 Thread Lukasz Majewski
Hi Leela,

 This function is used by different Exynos platforms, put it in the
 common file.
 
 Signed-off-by: Vadim Bendebury vben...@chromium.org
 Signed-off-by: Leela Krishna Amudala l.kris...@samsung.com
 Reviewed-by: Doug Anderson diand...@google.com
 ---
  board/samsung/common/board.c |   19 ---
  drivers/power/power_i2c.c|   19 +++
  include/power/pmic.h |1 +
  3 files changed, 20 insertions(+), 19 deletions(-)
 
 diff --git a/board/samsung/common/board.c
 b/board/samsung/common/board.c index ce85ddb..87ca9de 100644
 --- a/board/samsung/common/board.c
 +++ b/board/samsung/common/board.c
 @@ -152,25 +152,6 @@ static int board_init_cros_ec_devices(const void
 *blob) 
  #if defined(CONFIG_POWER)
  #ifdef CONFIG_POWER_MAX77686
 -static int pmic_reg_update(struct pmic *p, int reg, uint regval)
 -{
 - u32 val;
 - int ret = 0;
 -
 - ret = pmic_reg_read(p, reg, val);
 - if (ret) {
 - debug(%s: PMIC %d register read failed\n,
 __func__, reg);
 - return -1;
 - }
 - val |= regval;
 - ret = pmic_reg_write(p, reg, val);
 - if (ret) {
 - debug(%s: PMIC %d register write failed\n,
 __func__, reg);
 - return -1;
 - }
 - return 0;
 -}
 -
  static int max77686_init(void)
  {
   struct pmic *p;
 diff --git a/drivers/power/power_i2c.c b/drivers/power/power_i2c.c
 index ac76870..47c606f 100644
 --- a/drivers/power/power_i2c.c
 +++ b/drivers/power/power_i2c.c
 @@ -96,6 +96,25 @@ int pmic_reg_read(struct pmic *p, u32 reg, u32
 *val) return 0;
  }
  
 +int pmic_reg_update(struct pmic *p, int reg, uint regval)

It seems like this function shall be added to pmic_core.c, since it uses
the pmic_reg_{read|write}, which are defined for both, spi and i2c.

 +{
 + u32 val;
 + int ret = 0;
 +
 + ret = pmic_reg_read(p, reg, val);
 + if (ret) {
 + debug(%s: PMIC %d register read failed\n,
 __func__, reg);
 + return -1;
 + }
 + val |= regval;
 + ret = pmic_reg_write(p, reg, val);
 + if (ret) {
 + debug(%s: PMIC %d register write failed\n,
 __func__, reg);
 + return -1;
 + }
 + return 0;
 +}
 +
  int pmic_probe(struct pmic *p)
  {
   i2c_set_bus_num(p-bus);
 diff --git a/include/power/pmic.h b/include/power/pmic.h
 index 0e7aa31..d17dbdc 100644
 --- a/include/power/pmic.h
 +++ b/include/power/pmic.h
 @@ -83,6 +83,7 @@ int pmic_probe(struct pmic *p);
  int pmic_reg_read(struct pmic *p, u32 reg, u32 *val);
  int pmic_reg_write(struct pmic *p, u32 reg, u32 val);
  int pmic_set_output(struct pmic *p, u32 reg, int ldo, int on);
 +int pmic_reg_update(struct pmic *p, int reg, uint regval);
  
  #define pmic_i2c_addr (p-hw.i2c.addr)
  #define pmic_i2c_tx_num (p-hw.i2c.tx_num)



-- 
Best regards,

Lukasz Majewski

Samsung RD Institute Poland (SRPOL) | Linux Platform Group
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 1/6] exynos: Use common pmic_reg_update() definition

2013-10-01 Thread Leela Krishna Amudala
This function is used by different Exynos platforms, put it in the
common file.

Signed-off-by: Vadim Bendebury vben...@chromium.org
Signed-off-by: Leela Krishna Amudala l.kris...@samsung.com
Reviewed-by: Doug Anderson diand...@google.com
---
 board/samsung/common/board.c |   19 ---
 drivers/power/power_i2c.c|   19 +++
 include/power/pmic.h |1 +
 3 files changed, 20 insertions(+), 19 deletions(-)

diff --git a/board/samsung/common/board.c b/board/samsung/common/board.c
index ce85ddb..87ca9de 100644
--- a/board/samsung/common/board.c
+++ b/board/samsung/common/board.c
@@ -152,25 +152,6 @@ static int board_init_cros_ec_devices(const void *blob)
 
 #if defined(CONFIG_POWER)
 #ifdef CONFIG_POWER_MAX77686
-static int pmic_reg_update(struct pmic *p, int reg, uint regval)
-{
-   u32 val;
-   int ret = 0;
-
-   ret = pmic_reg_read(p, reg, val);
-   if (ret) {
-   debug(%s: PMIC %d register read failed\n, __func__, reg);
-   return -1;
-   }
-   val |= regval;
-   ret = pmic_reg_write(p, reg, val);
-   if (ret) {
-   debug(%s: PMIC %d register write failed\n, __func__, reg);
-   return -1;
-   }
-   return 0;
-}
-
 static int max77686_init(void)
 {
struct pmic *p;
diff --git a/drivers/power/power_i2c.c b/drivers/power/power_i2c.c
index ac76870..47c606f 100644
--- a/drivers/power/power_i2c.c
+++ b/drivers/power/power_i2c.c
@@ -96,6 +96,25 @@ int pmic_reg_read(struct pmic *p, u32 reg, u32 *val)
return 0;
 }
 
+int pmic_reg_update(struct pmic *p, int reg, uint regval)
+{
+   u32 val;
+   int ret = 0;
+
+   ret = pmic_reg_read(p, reg, val);
+   if (ret) {
+   debug(%s: PMIC %d register read failed\n, __func__, reg);
+   return -1;
+   }
+   val |= regval;
+   ret = pmic_reg_write(p, reg, val);
+   if (ret) {
+   debug(%s: PMIC %d register write failed\n, __func__, reg);
+   return -1;
+   }
+   return 0;
+}
+
 int pmic_probe(struct pmic *p)
 {
i2c_set_bus_num(p-bus);
diff --git a/include/power/pmic.h b/include/power/pmic.h
index 0e7aa31..d17dbdc 100644
--- a/include/power/pmic.h
+++ b/include/power/pmic.h
@@ -83,6 +83,7 @@ int pmic_probe(struct pmic *p);
 int pmic_reg_read(struct pmic *p, u32 reg, u32 *val);
 int pmic_reg_write(struct pmic *p, u32 reg, u32 val);
 int pmic_set_output(struct pmic *p, u32 reg, int ldo, int on);
+int pmic_reg_update(struct pmic *p, int reg, uint regval);
 
 #define pmic_i2c_addr (p-hw.i2c.addr)
 #define pmic_i2c_tx_num (p-hw.i2c.tx_num)
-- 
1.7.10.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot