* [U-Boot] soft_spi.c crash while saveenv
@ 2010-03-17 22:02 Horst Gall
2010-03-18 9:37 ` Detlev Zundel
0 siblings, 1 reply; 2+ messages in thread
From: Horst Gall @ 2010-03-17 22:02 UTC (permalink / raw)
To: u-boot
Hi Wolfgang,
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.
I fiexed the problem in soft_spi.c and attached the file.
Best regards
Horst Gall
-------------- next part --------------
A non-text attachment was scrubbed...
Name: soft_spi.c
Type: application/octet-stream
Size: 4731 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100317/34443207/attachment.obj
^ permalink raw reply [flat|nested] 2+ messages in thread
* [U-Boot] soft_spi.c crash while saveenv
2010-03-17 22:02 [U-Boot] soft_spi.c crash while saveenv Horst Gall
@ 2010-03-18 9:37 ` Detlev Zundel
0 siblings, 0 replies; 2+ messages in thread
From: Detlev Zundel @ 2010-03-18 9:37 UTC (permalink / raw)
To: u-boot
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
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-03-18 9:37 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-17 22:02 [U-Boot] soft_spi.c crash while saveenv Horst Gall
2010-03-18 9:37 ` Detlev Zundel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox