[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] UDP packet reception triggers a hangup on the microblaze



Hi Bas,

I look at your app.
1. you should use user-apps folder for microblaze apps and changed prepare
Makefile. I believe that is not so hard to change it. (petalinux-new-app)
2. I am missing any readme how to run it. Please add it to that folder and pack
and resend.

Thanks,
Michal


> OK,
> 
> I will try tomorrow with the latest changes from svn.
> 
> the test program is also attached....
> 
> thx, for the quick responses..
> 
> Bas
> 
> On Wed, Nov 26, 2008 at 10:21 AM, Michal Simek <monstr@xxxxxxxxx> wrote:
>> Hi All,
>>
>> this changes is in latest entry.S too.
>>
>> Thanks,
>> Michal
>>
>>
>>>  Hi,
>>> We used to have the same problem, although we don't use xemac. Without
>>> going into possibly misleading details, we noticed a one-line difference
>>> between our entry.S and the one in the Petalogix tree. After making the
>>> change we've been able to run a simple script that continuously sends
>>> packets to the board for several days without crashing. Running the same
>>> script before the change, the system would freeze in seconds. I hope
>>> this helps, here's an attachment just in case.
>>>
>>> Location -
>>> petalinux/software/linux-2.6.x-petalogix/arch/microblaze/kernel/entry.S
>>>
>>>
>>> -----Original Message-----
>>> From: Bas van Tiel <bvantiel@xxxxxxxxx>
>>> To: microblaze-uclinux@xxxxxxxxxxxxxx
>>> Sent: Tue, 25 Nov 2008 15:10
>>> Subject: [microblaze-uclinux] UDP packet reception triggers a hangup on
>>> the microblaze
>>>
>>> Hello All,
>>>
>>>
>>>
>>> when I transmit a continously stream of UDP packets to the microblaze
>>>
>>> a hangup is triggered,  I have the following configuration:
>>>
>>>
>>>
>>> - petalinux-v0.30-rc1 software
>>>
>>> - xemac linux driver in PIO mode
>>>
>>> - xemac IP block which is connected via a PLB <-> OPB bridge to the
>>>
>>> ublaze. (the xemac is configured with "No DMA" and IPIF
>>>
>>> (recieve/transmit buffers) are set to 32768 bytes and FIFO depth of
>>>
>>> 16.)
>>>
>>> - EDK 9.2.02. with the patch (AR30051) from Xilinx for the microblaze v7.00.b.
>>>
>>> - 2 uarts, one for kernel console, other one for  shell access.
>>>
>>> - ML506 Evalutation platform
>>>
>>>
>>>
>>> I tried to capture the packets via AF_PACKET and AF_INET, both methods
>>>
>>> gave the same result -> a kind of hangup of the microblaze:
>>>
>>>
>>>
>>> symptoms:
>>>
>>> 1) no serial input is taken from both terminals
>>>
>>> 2) a ping to the microblaze doesn't send a reply packet back.
>>>
>>>
>>>
>>> Has anybody seen this behavior before with the xemac connected via the
>>>
>>> OPB (PLB<->OPB) to the PLB bus, or is this setup with a bridge in
>>>
>>> between
>>>
>>> asking for trouble and should I look for an alternative?
>>>
>>>
>>>
>>>
>>>
>>> Best regards,
>>>
>>> Bas
>>>
>>>
>>>
>>> --- some additional info
>>>
>>>
>>>
>>>
>>>
>>> Linux tmb 2.6.20-uc0 #1 Tue Nov 25 14:27:21 CET 2008 microblaze
>>>
>>>
>>>
>>> CPU-Family:     MicroBlaze
>>>
>>> FPGA-Arch:      virtex5
>>>
>>> CPU-Ver:        Unknown
>>>
>>> CPU-MHz:        125.00
>>>
>>> BogoMips:       62.05
>>>
>>> HW-Div:         yes
>>>
>>> HW-Shift:       yes
>>>
>>> Icache:        8kB
>>>
>>> Dcache:        8kB
>>>
>>> HW-Debug:       yes
>>>
>>>
>>>
>>>   PID PORT STAT SIZE SHARED %CPU COMMAND
>>>
>>> 1      S    135K     0K  0.0 /bin/init
>>>
>>> 2      R      0K     0K  0.0 ksoftirqd/0
>>>
>>> 3      S      0K     0K  0.0 events/0
>>>
>>> 4      S      0K     0K  0.0 khelper
>>>
>>> 5      S      0K     0K  0.0 kthread
>>>
>>> 6      S      0K     0K  0.0 kblockd/0
>>>
>>> 7      S      0K     0K  0.0 pdflush
>>>
>>> 8      S      0K     0K  0.0 pdflush
>>>
>>> 9      S      0K     0K  0.0 kswapd0
>>>
>>> 10      S      0K     0K  0.0 aio/0
>>>
>>> 11      S      0K     0K  0.0 mtdblockd
>>>
>>> 24      S      0K     0K  0.0 jffs2_gcd_mtd4
>>>
>>> 40   S0 S    656K     0K  0.0 /bin/sh
>>>
>>> 41   S0 S    643K     0K  0.0 /bin/sh --
>>>
>>> 42      S     67K     0K  0.0 /bin/inetd
>>>
>>> 55   S0 R     68K     0K  0.0 ps
>>>
>>>
>>>
>>> pseudo code:
>>>
>>>
>>>
>>> ethernet mac is running at 100 BaseTX-FD
>>>
>>>
>>>
>>> sender:  (host PC)
>>>
>>>     sd_ = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
>>>
>>>     sendto(sd_, buf, BUFLEN, 0, (struct sockaddr*)&sa_, (socklen_t)sizeof(sa_));
>>>
>>>
>>>
>>> receiver (Microblaze)
>>>
>>>  sd_ = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
>>>
>>>  bind(sd_, (struct sockaddr*)&sa, sizeof(sa))
>>>
>>>   if (!select(sd_+1, &rfds, 0, 0, &timeout)) { break; }
>>>
>>>  size = recv(sd_, buf, BUFLEN, 0);
>>>
>>> ___________________________
>>>
>>> microblaze-uclinux mailing list
>>>
>>> microblaze-uclinux@xxxxxxxxxxxxxx <mailto:microblaze-uclinux@xxxxxxxxxxxxxx>
>>>
>>> Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux <http://www.itee.uq.edu.au/%7Ejwilliams/mblaze-uclinux>
>>>
>>> Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/ <http://www.itee.uq.edu.au/%7Elistarch/microblaze-uclinux/>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>> *AOL Email goes Mobile!* You can now read your AOL Emails whilst on the
>>> move. Sign up <http://info.aol.co.uk/email1> for a free AOL Email
>>> account with unlimited storage today.
>> ___________________________
>> microblaze-uclinux mailing list
>> microblaze-uclinux@xxxxxxxxxxxxxx
>> Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
>> Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
>>
>>
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/