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: MIPS32 gdb vectors question


"Tim Michals" <t dot michals at attbi dot com> writes:

> 0104001708a2200001ffe00000000000c0c0c0064440002426e03e6340000000012008411000
                                 ^^^^^^^^^

If this is a recent dump of what GDB is saying, then the CP0 registers
are still being added to the packet. 0xc0c0c0006 (yes it is 9 digits!)
is one of the values put in an unused register slot. It turns up here
as 0x0c0c0c006.

> 
> If I change mips-stub.h to #if defined(CYGPKG_HAL_MIPS_GDB_REPORT_CP0)
> #define NUMREGS   37
> #else
> #define NUMREGS    37
> #endif

Note that this is not an adequate fix for the problem, since this
value only controls how many registers GDB sends over the line. The
code in hal_arch.h does not see this and will still happily save 107
registers, potentially overwriting something else.

The correct approach is to disable CYGPKG_HAL_MIPS_GDB_REPORT_CP0 in
the mips32 package -- which is one of the things my patch did.

> Further tracing needs to be done on my part, what is confusing, is no else
> is seeing this problem with gdb 5.3? I'll recompile gdb 5.3 again and
> retrace and provide better flow of what is happening.

Double check that you have installed the latest RedBoot. The evidence
above suggests not. Make sure you reconfigure from scratch in a clean
build directory -- its very easy for old configurations to mess up new
ones.


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


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


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