On 2006-10-06 16:07 +0100, Chris Jones wrote: > Nick and I have got somewhat further with the E1 build of loon 3s but > are still suffering some 2K-page-size-NAND-related problems. Summary of > discoveries: > > - udelay was not implemented in bootldr for PXA so NAND access was > sometimes premature (before the NAND was really ready after a command). > This explained all the blocks getting marked bad and is now fixed and > checked in on the bootldr36-pxa-sa1100 branch. Reading NAND_RNB doesn't > yet work because it's not mapped to a register in the FPGA. > > - checking out latest bootldr source from branch bootldr36-pxa-sa1100, > doing the mods for udelay and new FPGA, results in weird yaffs > behaviour: We can write a zImage in, but trying to boot it results in it > being detected as a BSD kernel image! Upon a reset all the files in > yaffs have disappeared. > > - for comparison, we took an old version of the bootldr from SVN > (release 76, before the balloon2/3 to balloon rename took place) and did > the same mods. This works properly and yaffs doesn't misbehave. We > haven't yet figured out the difference. Interesting - slightly different problems to the ones I'm having. I found that the code in branch bootldr36-pxa-sa1100 works OK on 512b balloons, and on 2K balloons it works for yaffs write but not yaffs load (partition flash ends up totally blank - nothing written at all). I tried debugging this and broke it completely. :-( (currently my small and large builds are 250K bigger than they should be, for two different versions of bootldr, thw different chroots and two different compilers - very wierd). One thing that is a pain is that bootldr currently has it's own internal c-library and zlib but uses external headers. This is just asking for trouble IMHO. I'm moving to using a consistent external set. > - However, there remains some kernel oddness. The test-v0.1 kernel from > balloonboard.org grinds to a halt after initialising the serial ports > (it really does stop, not just change baud rate!). Trying a slightly > newer kernel and/or a 'known good' one from a random L3 dev board > results in most of the NAND getting reported as bad blocks. Nick thinks > this is a 2K page implementation issue in the kernel. I haven't been able to work out if the kernel is working right on 2K because I haven't managed to load a rootfs yet... Nick - come on IRC if you want to compare notes further. Wookey -- Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK Tel +44 (0) 1223 811679 work: http://www.aleph1.co.uk/ play: http://wookware.org/