From: Wolfgang Grandegger <wg@domain.hid>
To: Minh GIANG <giang.hminh@domain.hid>
Cc: xenomai-help <xenomai@xenomai.org>
Subject: Re: [Xenomai-help] Cross-link.c ---RTSER_RTIOC_WAIT_EVENT
Date: Fri, 30 Mar 2012 15:31:43 +0200 [thread overview]
Message-ID: <4F75B5BF.8030401@domain.hid> (raw)
In-Reply-To: <CAGq8jPi4S4TTBy9dLYYnWuWQdX_awhXxu0C93okgFO5vWv_20A@mail.gmail.com>
On 03/30/2012 01:15 PM, Minh GIANG wrote:
> hello,
>
> after testing a lot of time, i have one port which doesn't work well in
> writing (material problem i think). Now it works in writing and reading
> with one condtion that i have to remove the function
> "err=rt_dev_ioctl(...)" because it returns error.
Hm, what does rt_dev_ioctl() return?
> could you tell me the interet of this function? i think that rt_dev_read is
> enough to read the message.
Well, the ioctl waits for certain events and informs the task when they
occur. "cross_link.c" actually waits for the RTSER_EVENT_RXPEND meaning
that RX data are available. So, the sub-sequent read will/must work. You
do not need to call that ioctl but the read directly. But I doubt that
the read return successfully.
Maybe the interrupt service routine does detect errors due to hardware
problems:
http://www.rts.uni-hannover.de/xenomai/lxr/source/ksrc/drivers/serial/16550A.c#213
and that's why the interrupt counter increases.
You could check that by setting RTSER_EVENT_ERRPEND or reading the
status using the ioctl request RTSER_RTIOC_GET_STATUS.
Wolfgang.
> On Fri, Mar 30, 2012 at 10:45 AM, Minh GIANG <giang.hminh@domain.hid> wrote:
>
>> hello,
>> thanks for your response. i compile cross-link program in ECLIPSE C++ so
>> my command in setting configuration is
>> command : g++
>> All options: -l/usr/xenomai/include -O3 -wall -c -fmessage-length=0
>>
>> i connected 2 serial port of my computer by one cable in order to make the
>> test. The write task works well but the other task is blocked by rt_dev_ioctl(...).as
>> i already mentionned and when i removed rt_dev_ioctl, the "rt_dev_read"
>> function return 0
>> I did what you said, but it doesn't work yet
>>
>> On Fri, Mar 30, 2012 at 8:43 AM, Wolfgang Grandegger <wg@domain.hid>wrote:
>>
>>> On 03/29/2012 05:26 PM, Minh GIANG wrote:
>>>> i want to revive the topic over the problem RTSER_RTIOC_WAIT_EVENT
>>>> while compiling cross-link.c program. I cann't resolve my problem
>>>> after doing some solution given by the others
>>>>
>>>> Loading module:
>>>>
>>>> insmod ./xeno_16550A.ko io=0x3f8,0x2f8 irq=4,3 tx_fifo=10,20
>>>
>>> Hm, is a FIFO size of 20 supported by the hardware? For a first try I
>>> would drop "tx_fifo=10,20" (using the default of 16 for both uarts).
>>>
>>>> start_index=0 (i have two serial ports on my pc)
>>>>
>>>> running crosslink test:
>>>>
>>>> main : write-file opened
>>>> main : write-config written
>>>> main : read-file opened
>>>> main : read-config written
>>>> main : write-task created
>>>> main : read-task created
>>>> main : starting write-task
>>>> main : starting read-task
>>>> Nr | write->irq | irq->read | write->read |
>>>> -----------------------------------------------------------
>>>> read_task: error on RTSER_RTIOC_WAIT_EVENT, Connection timed out
>>>> read_task: error on RTSER_RTIOC_WAIT_EVENT, Connection timed out
>>>>
>>>> ...
>>>>
>>>>
>>>>
>>>> running test:
>>>>
>>>> cat /proc/xenomai/irq
>>>>
>>>> IRQ CPU0
>>>> 3: 1089 rtser1
>>>> 4: 5155 rtser0
>>>
>>> You get interrupts, at least, but not the same amount, strange. What
>>> cross-link command options do you use?
>>>
>>> Wolfgang.
>>>
>>
>>
>
next prev parent reply other threads:[~2012-03-30 13:31 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-29 15:26 [Xenomai-help] Cross-link.c ---RTSER_RTIOC_WAIT_EVENT Minh GIANG
2012-03-30 6:43 ` Wolfgang Grandegger
[not found] ` <CAGq8jPioLnu+ehj+LA5dL6OWUpxQnUH+Nh01kB088FtsLsSrGA@mail.gmail.com>
[not found] ` <CAGq8jPi4S4TTBy9dLYYnWuWQdX_awhXxu0C93okgFO5vWv_20A@mail.gmail.com>
2012-03-30 13:31 ` Wolfgang Grandegger [this message]
2012-03-30 14:34 ` Minh GIANG
2012-03-30 14:48 ` Wolfgang Grandegger
2012-04-02 8:25 ` Minh GIANG
2012-04-02 16:38 ` Wolfgang Grandegger
2012-04-04 9:18 ` Minh GIANG
2012-04-05 10:56 ` Wolfgang Grandegger
2012-04-05 12:36 ` Minh GIANG
[not found] ` <CAGq8jPgON96yy7_wOCSs83QwxVrfSsTn-fe1P+EBZ8-KLMfj0A@mail.gmail.com>
2012-04-11 14:19 ` Wolfgang Grandegger
[not found] ` <CAGq8jPhmG-Zad1EpcVitzW9aY0rvA-4asb2f9Ncfs8FZ6D2CyQ@mail.gmail.com>
2012-04-11 16:10 ` Wolfgang Grandegger
2012-04-11 16:56 ` Gilles Chanteperdrix
2012-04-11 16:59 ` Gilles Chanteperdrix
2012-04-11 19:01 ` Wolfgang Grandegger
2012-04-11 20:51 ` Minh GIANG
2012-04-12 7:52 ` Wolfgang Grandegger
2012-04-12 8:51 ` Minh GIANG
2012-04-12 16:31 ` Wolfgang Grandegger
2012-04-25 9:11 ` Minh GIANG
2012-04-25 9:27 ` Wolfgang Grandegger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F75B5BF.8030401@domain.hid \
--to=wg@domain.hid \
--cc=giang.hminh@domain.hid \
--cc=xenomai@xenomai.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.