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: how does the ctrlc happen when the serial port interrupt(ARM). Thanks


Thanks Johathan.

So for example if I include the serial device driver(implement  interrupt
for the UART RX and TX) for that platform, it will overwrite the interrupt
talbe and ctrlc will not be supported. Is that right. (e.g. ARM E7T board,
if ecos app built with serial package(use interrupt) then the ctrlc will not
be supported when debug such ecos app with redboot??)
Thanks a lot

-----Original Message-----
From: ecos-discuss-owner@sources.redhat.com
[mailto:ecos-discuss-owner@sources.redhat.com]On Behalf Of Jonathan Larmour
Sent: 29 January 2003 16:52
To: Qiang Huang
Cc: Ecos-Discuss
Subject: Re: [ECOS] how does the ctrlc happen when the serial port
interrupt(ARM). Thanks


Qiang Huang wrote:
> Hi all:
>    As far as I know ctrlc is normally support in the by first calling the
> "hal_default_isr()" function, but when the "cyg_drv_interrupt_attach()" in
> the serial device driver will overwrite the "hal_interrupt_handlers" in
> vectors.S. so when install the interrupt handler by
> "cyg_drv_interrupt_attach()" for the serial port "hal_default_isr()" will
be
> replaced by the ISR installed, how and where will be the place to examine
> the "0x03" for ctrlc support? Thanks a lot.

It isn't. If you install the serial driver it overrides the ctrl-c
support, and that's just the way it has to be. If you want to do something
with ctrl-c, you should do it yourself when you read stuff from the serial
port.

> Is the following calling path correct? Thanks
> (ARM target)
>
> IRQ happens -->
> (1). if the interrupt in the hal_interrupt_handlers table entry not get
> replaced by calling cyg_xxx_attach() then default as:
> hal_default_isr() --> hal_ctrlc_isr( ) --> cyg_hal_plf_serial_isr( ) -->
> cyg_hal_user_break( )  this will look for the ctrlc.

The details sometimes vary by platform, but that looks about right.

Jifl
--
eCosCentric       http://www.eCosCentric.com/       <info@eCosCentric.com>
--[ "You can complain because roses have thorns, or you ]--
--[  can rejoice because thorns have roses." -Lincoln   ]-- Opinions==mine


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


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