[ECOS] Re: Flash support for ea2648 target

Sergei Gavrikov sergei.gavrikov@gmail.com
Tue Mar 2 08:04:00 GMT 2010


On Tue, 2 Mar 2010, viren.dobariya@aftek.com wrote:
>> On Tue, 2 Mar 2010, viren.dobariya wrote:
>>> Hi, sergei,
>>>      I am still struggling with flash problem in EA-2468 board.
>>>      In this mail, you mention that Youqiang Zou added
>>> CYG_FLASH_DRIVER definition to flash_ea2468.c. Can you explain me
>>> detail?
>>> Should I add same definition for my board??
>>
>> As I could understand, it is possible the same definition should be added
>> to current platform specific driver. But, Youqiang also pointed that he
>> use other flash parts, so, do not apply his lines as is. To know what the
>> macro is (does), please, refer to eCos documentation:
>>
>> http://ecos.sourceware.org/docs-latest/ref/io-flash.html
>> http://ecos.sourceware.org/docs-latest/ref/ecos-flash-v2-dev.html
>>
>> Sergei
>
> Hi, Sergei,
>   Thanks for documentation.
>   Can you ask Youqiang Zou that how did he add CYG_FLASH_DRIVER 
> defination?? If he gives us example then i will add according to my 
> device.
>
>
> Thanks,
> Viren

I was looking the cludges when I got his e-mail and I'd seen that he did
CC to the list, but, may be he is not subscribed to the list, so, you have
got no copy. Well, he wrote

---------------------------------------------------------------------->8
>From elitechip@gmail.com Sun Feb 28 18:42:54 2010
Date: Mon, 1 Mar 2010 00:42:54 +0800
From: youqiang zou <elitechip@gmail.com>
To: sergei.gavrikov@gmail.com
Cc: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] Re: Re: Flash support for ea2648 target

Refered to the arm_aim711_flash.c, I changed the flash_ea2468.c as the below
list.
 
// Device properties
#include <pkgconf/devs_flash_ea2468.h>

// The EA LPC2468 OEM board has one SST 39VF3201 part
#define CYGNUM_FLASH_INTERLEAVE (1)
#define CYGNUM_FLASH_SERIES     (1)
#define CYGNUM_FLASH_WIDTH      (16)
#define CYGNUM_FLASH_BASE       (0x80000000)
//--------------------------------------------------------------------------
// Platform specific extras
#define CYGPKG_DEVS_FLASH_SST_39VF3201
#ifdef CYGINT_DEVS_FLASH_SST_39VFXXX_REQUIRED
//--------------------------------------------------------------------------
// Now include the driver code.
#include "cyg/io/flash_sst_39vfxxx.inl"
static const cyg_flash_block_info_t cyg_flash_sst_block_info[1] = {
    { FLASH_BLOCK_SIZE, FLASH_NUM_REGIONS * CYGNUM_FLASH_SERIES }
};
CYG_FLASH_DRIVER(cyg_flash_sst_flashdev,
                 &cyg_sst_funs,
                 0,                     // Flags
                 CYGNUM_FLASH_BASE,     // Start
                 CYGNUM_FLASH_BASE + (FLASH_BLOCK_SIZE * FLASH_NUM_REGIONS *
CYGNUM_FLASH_SERIES) - 1,    // End
                 1,                     // Number of block infos
                 cyg_flash_sst_block_info,
                 NULL                   // priv
    );
#endif
// ------------------------------------------------------------------------
// EOF flash_ea2468.c
 
I had not the EA2468 board, my platform is:
    Platform: LPC2478 Board (ARM7TDMI-S)
    RAM: 0xa0000000-0xa2000000 [0xa000aac8-0xa1ffc000 available]
    FLASH: 0x81000000-0x811fffff, 512 x 0x1000 blocks
 
Should change the MACRO
    #define CYGPKG_DEVS_FLASH_SST_39VF3201
to
    #define CYGPKG_DEVS_FLASH_SST_39VF1601
---------------------------------------------------------------------->8

My comments: as I can see there is fitted other flash parts on his board,
so, I do not think that you must change own definition, just define
CYG_FLASH_DRIVER properly acording the used FLASH's "geometry".


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


More information about the Ecos-discuss mailing list