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: Redboot-GDB


>>>>> Michael Anburaj writes:

> Hi,
>> 
>> an ARM based platform.  Ultimately, the bug was in my initialization of the
>> interrupt controller on my target.  IIRC, I didn't mask all of the
>> interrupts that should have been masked.

> In my case, I am masking off all the interrupts at initialization. But, 
> later on Cyg_RealTimeClock::Cyg_RealTimeClock() of 
> kernel/current/src/clock.cxx gets called & this inturn calls 
> HAL_CLOCK_INITIALIZE(), which unmasks the RTC <or the ecos system timer> 
> interrupt. Is this control path ok for Redboot? If yes, or no; please 
> comment on the 4 questions I earlier asked.

Cyg_RealTimeClock::Cyg_RealTimeClock() should not be included in
RedBoot. HAL_CLOCK_INITIALIZE should not unmask RTC interrrupt.
The unmasking is done in Cyg_RealTimeClock::Cyg_RealTimeClock()
after HAL_CLOCK_INITIALIZE is called.

This (RTC interrupt) is almost certainly your problem. RedBoot will
not have a handler installed for it.

How are you configuring/building RedBoot?

You should be doing something like:

 % ecosconfig new <target_name> redboot
 % ecosconfig import ${ECOS_REPOSITORY}/hal/arm/<target_dir>/current/misc/redboot_ROM.ecm
 % ecosconfig tree
 % make

--Mark


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