[U-Boot] soft_spi.c crash while saveenv

Detlev Zundel dzu at denx.de
Thu Mar 18 10:37:10 CET 2010


Hello Horst,

> I used the soft_spi - driver for saving the u-boot-environment.
>
> When I started "saveenv" u-boot hang - no output.
> I located the problem in soft_spi.c in function "spi_xfer()".
> This function writes every byte received from the spi-device to the
> pointer "dout".
> In case of writing to the spi-device the returned bytes are also
> written to the dout-pointer.
>
> The function "spi_flash_cmd()" in "drivers/mtd/spi/spi_flash.c" calls
> now this function with
> a NULL-pointer.

Ok, I see that the mtd does a call with NULL pointers, so your fix
actually works for your combination.

On the other hand, this check of parameters is not consistent in the
other drivers.  drivers/spi/mpc8xxx_spi.c does no checks, while
drivers/spi/bfin_spi.c does - I did not bother to check others.

As I'm a friend of passive programming, I would go down your route but
eventually fix all other drivers too.

So can you please cook up a proper patch with a signed-off-by line as
stated in the docs[1]?

Thanks
  Detlev

[1] http://www.denx.de/wiki/U-Boot/Patches

-- 
Die eine Haelfte der Welt lacht ueber die andere, und Narren sind alle.
                                    --- Baltasar Gracian
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de


More information about the U-Boot mailing list