[U-Boot] [PATCH 3/4] power: Explicitly select pmic device's bus

Rajeshwari Birje rajeshwari.birje at gmail.com
Tue Apr 2 07:18:21 CEST 2013


Hi Simon,

Just had one following comment

On Tue, Apr 2, 2013 at 5:34 AM, Simon Glass <sjg at chromium.org> wrote:
> From: Aaron Durbin <adurbin at chromium.org>
>
> The current pmic i2c code assumes the current i2c bus is
> the same as the pmic device's bus. There is nothing ensuring
> that to be true. Therefore, select the proper bus before performing
> a transaction.
>
> Signed-off-by: Aaron Durbin <adurbin at chromium.org>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> Reviewed-by: Simon Glass <sjg at chromium.org>
> ---
>  drivers/power/power_i2c.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/drivers/power/power_i2c.c b/drivers/power/power_i2c.c
> index 3e5a784..ec9701e 100644
> --- a/drivers/power/power_i2c.c
> +++ b/drivers/power/power_i2c.c
> @@ -39,6 +39,8 @@ int pmic_reg_write(struct pmic *p, u32 reg, u32 val)
>         if (check_reg(p, reg))
>                 return -1;
>
> +       I2C_SET_BUS(p->bus);
> +

Do we need to set I2C bus for each register read and write?
>         switch (pmic_i2c_tx_num) {
>         case 3:
>                 if (p->sensor_byte_order == PMIC_SENSOR_BYTE_ORDER_BIG) {
> @@ -82,6 +84,8 @@ int pmic_reg_read(struct pmic *p, u32 reg, u32 *val)
>         if (check_reg(p, reg))
>                 return -1;
>
> +       I2C_SET_BUS(p->bus);
> +
>         if (i2c_read(pmic_i2c_addr, reg, 1, buf, pmic_i2c_tx_num))
>                 return -1;
>
> --
> 1.8.1.3
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
-- 
Regards,
Rajeshwari Shinde


More information about the U-Boot mailing list