This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: RedBoot to program flash on ARM Integrator
- To: Roc Chen =?UTF-8?Q?=E9=99=B3=E5=9C=A8?= =?UTF-8?Q?=E9=B5=AC?= <rocchen at incomm dot com dot tw>
- Subject: Re: [ECOS] RedBoot to program flash on ARM Integrator
- From: Gary Thomas <gthomas at redhat dot com>
- Date: 22 Oct 2001 16:35:48 +0900
- Cc: eCos Discussion <ecos-discuss at sources dot redhat dot com>
- References: <00b501c15acb$d4566fe0$2c02a8c0@rocchen>
On Mon, 2001-10-22 at 16:33, Roc Chen 陳在鵬 wrote:
> Dear All,
>
> My platform is the ARM INTEGRATOR/7TDMI board.
> The eCos source code was download from the anonymous CVS.
>
> The RedBoot is running on my INTEGRATOR board successfully now.
> However, I can not use the "fis create" command to write a loaded image into
> flash memory.
Exactly what error did you get?
Does RedBoot identify the FLASH when it starts up (you'll see messages
about the FLASH size and location). You can check this by running the
'version' command. For example, on another platform:
RedBoot> ve
RedBoot(tm) bootstrap and debug environment [ROM]
Non-certified release, version UNKNOWN - built 15:47:03, Sep 13 2001
Platform: Compaq iPAQ Pocket PC (StrongARM 1110)
Copyright (C) 2000, 2001, Red Hat, Inc.
RAM: 0x00000000-0x01fc0000, 0x0001e328-0x01f7d000 available
FLASH: 0x50000000 - 0x51000000, 64 blocks of 0x00040000 bytes each.
The last line identifies the FLASH locations and how it is structured.
If you see similar messages when you run RedBoot on the Integrator, then
that part of it is working. Note that before you can run 'fis create'
you *must* run 'fis init'.
> I traced the source code and found that the header file
> packages/devs/flash/arm/integrator/current/src/flash.h
> defines the following terms:
>
> #define FLASH_Read_ID 0x90909090
> #define FLASH_Read_Status 0x70707070
> #define FLASH_Clear_Status 0x50505050
> #define FLASH_Status_Ready 0x80808080
> #define FLASH_Program 0x10101010
> #define FLASH_Block_Erase 0x20202020
> #define FLASH_Confirm 0xD0D0D0D0
> #define FLASH_Reset 0xFFFFFFFF
>
> Some of these terms are used by the function flash_program_buf() in
> packages/devs/flash/arm/integrator/current/src/flash_program_buf.c
>
> However, the values for these term seems very strange and I believe they are
> not true
> for the flash memory on my INTEGRATOR board.
> Could anybody give me the right address for these FLASH_Xxxx terms ?
> The flash chips on my INTEGRATOR are Intel 28F320S3.
> Thank you very much.
>
These are very reasonable values for that type of FLASH.