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]
Other format: [Raw text]

Re: MIPS 5KC Target


"Devaughn, Hans" <hans.devaughn@siemens.com> writes:

> I have tried building the library, from config tool, for the Atlas and Malta
> 5KC processors. Both result in the same cache header file error
> 
> mipsisa32-elf-gcc -c  -I/ecos-work/mips_install/include
> -I/eCos/packages/hal/mips/arch/current
> -I/eCos/packages/hal/mips/arch/current/src
> -I/eCos/packages/hal/mips/arch/current/tests -I. -I/ecos-
> /eCos/packages/hal/mips/arch/current/src/ -finline-limit=7000 -mips64 -EL
> -msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef  -g
> -O2 -ffunction-sections -fdata-sections  -fno-exceptions   -G0
> -Wp,-MD,src/hal_misc.tmp -o src/hal_mips_arch_hal_misc.o /ecos-
> /eCos/packages/hal/mips/arch/current/src/hal_misc.c
> In file included from
> /ecos-work/mips_install/include/cyg/hal/hal_cache.h:64,
>                  from
> /eCos/packages/hal/mips/arch/current/src/hal_misc.c:65:
> /ecos-work/mips_install/include/cyg/hal/var_cache.h:92:2: #error Unknown
> MIPS32 Variant
> /ecos-work/mips_install/include/cyg/hal/var_cache.h:198:5: warning:
> "HAL_DCACHE_WRITETHRU_MODE" is not defined
> /ecos-work/mips_install/include/cyg/hal/var_cache.h:202:2: #error
> HAL_DCACHE_FLUSH undefined for MIPS32 writeback cache
> /ecos-work/mips_install/include/cyg/hal/var_cache.h:207:5: warning:
> "HAL_DCACHE_WRITETHRU_MODE" is not defined
> /ecos-work/mips_install/include/cyg/hal/var_cache.h:211:2: #error
> HAL_DCACHE_STORE undefined for MIPS32 writeback cache
> make[1]: Leaving directory `/ecos-work/mips_build/hal/mips/arch/current'
> make[1]: *** [src/hal_misc.o.d] Error 1
> 
> The problem is that the generic version of cache header file (on
> cyg/hal/var_cache.h) has a check for the MIPS 4KC and generates a compile
> error (#error). The 5KC cache header file is in the makefile and on
> hal/mips/mips64/current/include/var_cache.h. It would seem that the 5KC
> header should be used instead of the 4KC header.
> 
> Does anybody have a fix for this apparent problem?

I believe that we only ever built RedBoot for the 5kc, since that is
all MIPS wanted at the time. It was used to support GNUPro
development. eCos was never ported since it would have required
sorting out any 64 bit issues.

I have just tried a configure and build of RedBoot for the atlas 5kc
and it seems to create an executable image. I have no idea whether it
would work, however. Trying an eCos build, it fails because the
toolchain is lacking a 64bit libgcc. In both cases the configuration
selects the correct var_cache.h from mips64.

So, I don't see the problem you have, which config tool are you using,
the GUI tool or ecosconfig?

Even if you do fix this problem, there is no guarantee that eCos will
run in 64 bit mode. However, the 5kc is fully compatible with the 4kc
and you can run 32 bit RedBoot and eCos binaries built for the 4kc on
the 5kc with no trouble.


-- 
Nick Garnett                    eCos Kernel Architect
http://www.ecoscentric.com/     The eCos and RedBoot experts


-- 
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]