[U-Boot] [RFC PATCH v2] ARM: Avoid compiler optimization for usages of readb, writeb and friends.

Alexander Holler holler at ahsoftware.de
Sun Dec 19 11:22:39 CET 2010


Hello,

On 19.12.2010 08:51, Dirk Behme wrote:
> On 18.12.2010 23:27, Alexander Holler wrote:
>> gcc 4.5.1 seems to ignore (at least some) volatile definitions,
>> avoid that as done in the kernel.
>>

> Acked-by: Dirk Behme <dirk.behme at googlemail.com>

Thanks for the ack, but I have to say, that those barriers are having 
side effects here. Reading NAND now fails on my BeagleBoard. Regardless 
if I use gcc 4.3.5 or gcc 4.5.1, after applying that patch the wrong ID 
of the NAND is read. In nand_get_flash_type() 
(drivers/mtd/nand/nand_base.c) without that patch I will get the following:

*maf_id: 44, dev_id: 186

with the patch the following is read:

*maf_id: 128, dev_id: 85

Which just is wrong.

I haven't looked further up to now, maybe thats just a side effect of 
some wrong clock settings because of different timings through those 
barrieres or whatever.

Regards,

Alexander


More information about the U-Boot mailing list