This is the mail archive of the ecos-discuss@sourceware.org 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: cirrus ep93xx - ecos works, network problems


I am not sure if I understand correctly what you describe. I 
remember running into problems in the past because of calls 
to HAL_DELAY_US in the network code. You say something about 
changing timeouts to the order of magnitude of seconds, so 
keep in mind that HAL_DELAY_US implements a busy wait, which 
could start waiting for a _very_ long period of time if you 
do that. The behavior you describe indicates that it could be 
something like that.

Bob


---- Original message ----
>Date: Tue, 11 Oct 2005 16:09:56 +0200
>From: Andrew Lunn <andrew@lunn.ch>  
>Subject: Re: [ECOS] cirrus ep93xx - ecos works, network 
problems  
>To: "Deak, Ferenc" <ferenc.deak@stp.hu>
>Cc: ecos-discuss@ecos.sourceware.org
>
>On Tue, Oct 11, 2005 at 03:17:46PM +0200, Deak, Ferenc wrote:
>> > > 
>> > > We have a custom cirrus ep9307 based board. Cirrus has 
a software package
>> > > for their ep93xx-based boards, which contains patches 
for linux and a
>> > > redboot-only ecos. Redboot and linux works fine on our 
board. I have
>> > > managed to work the basic ecos, but I have trouble 
with the network.
>> > > 
>> > > Is there anybody who made the network work, and can 
help? We would be very 
>> > > thankful for any help.
>> > 
>> > The normal problem here is that the network device 
driver for Redboot
>> > is polled io, where as a full eCos device driver is 
interrupt
>> > driven. I suggest you take a look at the device driver 
and see what it
>> > actually implements.
>> 
>> The problem is not so theoretical:-) I'm looking and 
testing and
>> modifying the driver until yesterday. It seems that 
someone at cirrus have written
>> the driver "correctly" because there is a redboot and a 
real-kernel related
>> code in it, there is an IT initialised, a NETDEVTAB_ENTRY 
etc. (but,
>> strange that the real IT related routines usually in 
hal/<proc>/src/proc_misc.c 
>> were missing from the patch, but I've added them...) 
Network ITs are working etc.
>> 
>> The problem where I stopped: There is register in the 
network related part of the processor, 
>> which is set to 1 to sign that there is a new data filled 
and ready to send. But when this register
>> is set to 1 second times the whole board stops working at 
this line, prints before this line are 
>> appearing but prints after are not. (but these lines are 
common with the redboot code, so 
>> perhaps these are algorithmically right) 
>> On the other hand the board cannot be ping-ed, end receive 
events are not comming (but these are 
>> coming under redboot...)
>> 
>> So if somebody has an ideo to try, I would be very 
grateful.
>
>What is the license on the code? Can you let us see it or is 
it closed
>source?
>
>        Andrew
>
>-- 
>Before posting, please read the FAQ: 
http://ecos.sourceware.org/fom/ecos
>and search the list archive: 
http://ecos.sourceware.org/ml/ecos-discuss
>

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


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