[U-Boot] [PATCH v2] mxc_spi: bugfix for double incrementing read pointer on unaligned buffers in spi_xchg_single

Jagan Teki jagannadh.teki at gmail.com
Mon Oct 7 09:24:28 CEST 2013


Did you test this on u-boot-spi.git with master-probe branch?

On Mon, Oct 7, 2013 at 12:20 PM, Timo Herbrecher
<t.herbrecher at gateware.de> wrote:
> If dout buffer is not 32 bit-aligned or data to transmit is not multiple
> of 32 bit the read data pointer is already incremented on single byte reads.
>
> Signed-off-by: Timo Herbrecher <t.herbrecher at gateware.de>
> ---
>  drivers/spi/mxc_spi.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c
> index fd72a65..95dd03f 100644
> --- a/drivers/spi/mxc_spi.c
> +++ b/drivers/spi/mxc_spi.c
> @@ -255,8 +255,8 @@ int spi_xchg_single(struct spi_slave *slave,
> unsigned int bitlen,
>                         } else {
>                                 data = *(u32 *)dout;
>                                 data = cpu_to_be32(data);
> +                               dout += 4;
>                         }
> -                       dout += 4;
>                 }
>                 debug("Sending SPI 0x%x\n", data);
>                 reg_write(&regs->txdata, data);
> --
> 1.7.0.4
>
>



-- 
Thanks,
Jagan.
--------
Jagannadha Sutradharudu Teki,
E: jagannadh.teki at gmail.com, P: +91-9676773388
Engineer - System Software Hacker
U-boot - SPI Custodian and Zynq APSOC
Ln: http://www.linkedin.com/in/jaganteki


More information about the U-Boot mailing list