[En-Nut-Discussion] UFLASH Write Appends Trash Data

Bob Wirka bobwirka at yahoo.com
Sun Mar 22 14:16:03 CET 2015

Unfortunately, I don't have time to upgrade; the product must ship (with a less than perfect fix, if necessary).
We're doing another version of this product, so I'll upgrade for that. I did notice, for instance, that the CRC fix was not in the 5.1.0-1 code base. Makes me wonder if I should be working right from the subversion repository?
BTW, I did run across a rather obscure issue; you might want to look at this in /arch/arm/dev/atmel/ostimer_at91.c:
/*! * \brief Calculate system ticks for a given number of milliseconds. */uint32_t NutTimerMillisToTicks(uint32_t ms){ unsigned long long     product;
 product = (unsigned long long)ms * (unsigned long long)NutGetTickClock(); return product / 1000;
 /*  * _RCW_: 16-Aug-2013 : This would overflow for ms values > 4,294,967, as  * the product of ms * NutGetTickClock() had to be <= 0xffff_ffff.  *///    return (ms * NutGetTickClock()) / 1000;}
Thanks again,
      From: Ole Reinhardt <ole.reinhardt at embedded-it.de>
 To: en-nut-discussion at egnite.de 
 Sent: Saturday, March 21, 2015 7:59 PM
 Subject: Re: [En-Nut-Discussion] UFLASH Write Appends Trash Data
Hi Bob,

Am 22.03.2015 00:47, schrieb Bob Wirka:
> Thank you for your reply.
> I have updated my svn version of the trunk from Source Forge.
> When you speak of the latest dataflash and uflash implementation, do you mean only "/dev/spi_flash_at45d.c" and "/fs/uflashfs.c"? Or are there other files that I should update?
> I see the checksum changes in the spi driver, and the memory leak fix in uflashfs.c. If it's only those two files, that would be great. With other files I see some new #defines that would have to get dragged in.
> Hope you're doing well, and thanks again for your help.

In general those two files and perhaps the header files as well.

But I would suggest to update everything, as I do not know if any
dependencies have changed as well. For example the support for the
select() function was introduced in some 5.x version. The select
function support added one entry to the NUTDEVICE struct.

Beside of these changes there have been a lot of improvements and
bugfixes since 4.10.x

Best regards,


kernel concepts GmbH            Tel: +49-271-771091-14
Sieghuetter Hauptweg 48        Mob: +49-177-7420433
D-57072 Siegen


More information about the En-Nut-Discussion mailing list