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: Serial getc problem


Hi again,

I have tried to install such a serial driver but canīt access it later on in the application. How should i configure eCos? When i do a cyg_io_lookup then i can find the following drivers:

dev/ttydiag
dev/tty0
dev/hal_diag

...but during the lookup procedure there is a check on "dep_name" and that is set to "dev/ser0", which is not found among the above.

What values/strings shall be entered under the section "TTY-mode serial drivers" in eCos config tool to make this work.

Regards, Daniel

-----Original Message-----
From: Robert Cragie [mailto:rcc@jennic.com] 
Sent: den 4 juli 2002 19:26
To: Daniel Lidsten; ecos-discuss@sources.redhat.com
Subject: RE: [ECOS] Serial getc problem


You need to use a 'proper' serial driver (/dev/tty0 or /dev/tty1), not /dev/ttydiag. These allow blocking reads which will allow other threads to run; as you  have seen, /dev/ttydiag does a busy wait on a character which will stop other threads from running. You can configure eCos so that stdio uses /dev/tty0 or /dev/tty1.

Regards,

Robert Cragie, Design Engineer

Direct: +44 (0) 114 281 4512 ________________________________________________________
Jennic Ltd, Furnival Street, Sheffield, S1 4QT,  UK www.jennic.com  Tel: +44 (0) 114 281 2655


> -----Original Message-----
> From: ecos-discuss-owner@sources.redhat.com
> [mailto:ecos-discuss-owner@sources.redhat.com]On Behalf Of Daniel 
> Lidsten
> Sent: 04 July 2002 17:19
> To: ecos-discuss@sources.redhat.com
> Subject: [ECOS] Serial getc problem
>
>
> Hi,
>
> I am running a MPC850 with a few different threads in the application. 
> The network stack is also enabled and up and running. However, when a 
> thread calls the HAL_DIAG_READ_CHAR to wait for input from the user 
> then my net stack stops working. I cant reach it with a ping from my 
> local host.
>
> My first thought was that the application was running with a higher 
> priority (lower value) then the net stack but that was not the case. 
> The application runs at prio 8 and net at 6 and 7 (background).
>
> I have seen in the serial driver that when reading a char from the 
> port then the following is done:
>
> while ( !getc_non_block(..) )
>
> Can the problem be that this code is running in some form of "kernel 
> state" i.e. in a very high prio state since the driver lies within 
> eCos?
>
> Regards, Daniel
>
> --
> 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]