This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Flash programming crashes on odd sectors


Hi all
We are using AMD 29gl256 flash without a file system, ie writing
directly to sectors. The CPU is a MPC8541.
We are saving equipment configuration to the flash. We use 1 sector for
each port in the system. To minimize interrupt latency during flash
programming we program erase the sector and then program in blocks of
1KByte.

What we see is that when writing to even sectors everything works fine.
But when programming odd sectors after a variable number of 1KByte
blocks we get a crash like this:
Program from 0x008cc474-0x008cc874 to 0xf3de6800: .
... Program from 0x008cc474-0x008cc874 to 0xf3de6c00: .
... Program from 0x008cc474-0x008cc874 to 0xf3de7000: .
... Program from 0x008cc474-0x008cc874 to 0xf3de7400: .
... Program from 0x008cc474-0x008cc874 to 0xf3de7800: ** Exception
0x0700 at PC: 0x00000000, MSR: 0x00001030, LR: 0x0008042c

R00: 0x00000002 0x0055296c 0x0b0b0002 0x0000ffff 0x00000000 0x0081e19c
0x00000000 0x05f59450
R08: 0x008cc64c 0x00000000 0x00000000 0x00000001 0x000003fe 0x0b0b000d
0x0081e19c 0x0003fffc
R16: 0x0b0b0010 0x0b0b0011 0x0b0b0012 0x0b0b0013 0x0b0b0014 0x00000001
0x0055114c 0x00000000
R24: 0x00000400 0x00000000 0x008cc474 0x008cc474 0xf3de7800 0x00000228
0x00551128 0x00000400

The LR points to 0x0008042c which is in cyg_hal_default_interrupt_vsr.

Anybody any idea why there would be adifference in behaviour between odd
and even sectors?


Cheers
Alex Lindeijer

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]