Intel FLASH

Jani Monoses jani@iv.ro
Tue Sep 30 11:30:00 GMT 2003


> I started off defining BOOTBLOCK_FLASH, and that didn't work -- my
> device returns 0x65 for the device code, hence my digression into CFI.
>  I now have

the datasheet I have lists W parts as having 0x5X ids...strange

> 
> // Secret decoder ring:
> // CYGOPT_FLASH_IS_BOOTBLOCK
> //      flash_erase_block.c
> //      flash_unlock_block.c
> //              use this to erase or unlock the smaller blocks at the
> //              bottom of flash.  In the case of

	also lock.c should have that but I only needed unlocking the
bootblocks..

> // CYGOPT_FLASH_IS_SYNCHRONOUS
[...]
> the K3 device supports individual block locking/unlocking.

The original strata the J3 does not hence the option. K3 is
synchronous strata flash.

> 
> Also, a few other observations...
> 1) The few datasheets I have looked at for the B3, K3, etc... devices
> all say that either 0x40 or 0x10 can be used to program a single word
> into the device.  So, conditioning 'FLASH_Program' to be 0x40 vs 0x10
> based on'CYGOPT_FLASH_IS_BOOTBLOCK' is a little confusing.

I thinks so too.

> 2) 'flash_program_buf()' writes the 'FLASH_Program' word to 'BA[0]'
> rather than '*addr', which is what the datasheets I've seen so far all
> say to do.

You're right, I wonder why it worked for me...I had to write to BA[0]
instead of ROM[0] though..Looks like a safe change.

> the 28Fxxxx code).  All questions, comments, and words of
> encouragement are welcome at this point.

go Patrick!



More information about the Ecos-patches mailing list