[U-Boot] [PATCH 1/2] i2c: Fix deselection of muxes
Chris Packham
judge.packham at gmail.com
Wed Dec 3 08:35:59 CET 2014
Hi Mark,
This might get more attention if Heiko was on the Cc list.
On Tue, Dec 2, 2014 at 8:49 AM, Mark Tomlinson
<mark.tomlinson at alliedtelesis.co.nz> wrote:
> Due to an uninitialised variable, when muxes were deselected, any value
> could be written to the mux control register. On the PCA9548, this could
> result in multiple channels being selected, thus enabling multiple
> pull-up resistors, and much bus capacitance.
>
> The fix is simply to initialise the written value to zero.
>
> Signed-off-by: Mark Tomlinson <mark.tomlinson at alliedtelesis.co.nz>
> ---
> drivers/i2c/i2c_core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/i2c_core.c b/drivers/i2c/i2c_core.c
> index d34b749..4539667 100644
> --- a/drivers/i2c/i2c_core.c
> +++ b/drivers/i2c/i2c_core.c
> @@ -178,7 +178,7 @@ static int i2c_mux_disconnet_all(void)
> {
> struct i2c_bus_hose *i2c_bus_tmp = &i2c_bus[I2C_BUS];
> int i;
> - uint8_t buf;
> + uint8_t buf = 0;
>
> if (I2C_ADAP->init_done == 0)
> return 0;
> --
> 1.9.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
More information about the U-Boot
mailing list