This is the mail archive of the ecos-discuss@sources.redhat.com 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]

RedBoot FIS question


If the option CYGOPT_REDBOOT_FIS is not set, then still space of RAM are
occupied for the FIS (fis_work_block, fisdir_size).
In this case, I think so this is not necessary. The RAM workspace of RedBoot
(workspace_end) is also reduced by the size for the FIS.

See code extract from function "do_flash_init" in file
"/packages/redboot/current/src/flash.c":
   ...
    fis_work_block = (unsigned char
*)(workspace_end-FLASH_MIN_WORKSPACE-block_size);
    workspace_end = fis_work_block;
    fisdir_size = block_size;
   ...

A solution could be:
   ...
    #ifdef CYGOPT_REDBOOT_FIS
        fis_work_block = (unsigned char
*)(workspace_end-FLASH_MIN_WORKSPACE-block_size);
        workspace_end = fis_work_block;
        fisdir_size = block_size;
    #else
        workspace_end = (unsigned char
*)(workspace_end-FLASH_MIN_WORKSPACE);
        fis_work_block = NULL;
        fisdir_size = 0;
    #endif // CYGOPT_REDBOOT_FIS
   ...

NOTE: The both FIS-variables "fis_work_block" and "fisdir_size" are not
necessary at all, if option "CYGOPT_REDBOOT_FIS" is not  set.


Best regards,
Joerg Rapka
Duagon GmbH



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