Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Valued Contributor III
1,042 Views

Tse Loopback Problem

Hi All, 

i'm trying to port u-boot on a custom board.  

I follow the nioswiki guide to build u-boot.bin and the bootloader started quickly...but it seems impossible to use ethernet.  

My demo (dbc2c20) uses 83848 PHY...therefore I did some changes to altera_tse.c driver to extend support for this chip... 

What I see is that sgdma controller doesn't transmit any packet... 

This sounds strange but I would like to test the LOOP_ENA feature to check if the problem is on MAC/SGDMA or PHY but it seems impossible to set this bit in the Command_Config register...I'm trying also by hand from u-boot console (mw.l etc etc..) but without results 

Any help/idea will be appreciated... 

Bye
0 Kudos
3 Replies
Highlighted
Valued Contributor III
7 Views

OK...i found the problem...on the small mac 10/100 the loopback seems disabled Anyway...this the debug trace of a ping on u-boot consolle... Thanx in advance for any help Reseting TSE & SGDMAs Configuring PHY Link is up Duplex mode=1 PHY Speed is 100Mbit Configuring tx desc Configuring rx desc Starting rx sgdma SGDMA DEBUG : desc->source : 0x0 desc->destination : 0x10fe3f40 desc->next : 0x10fa01c0 desc->source_pad : 0x0 desc->destination_pad : 0x0 desc->next_pad : 0x0 desc->bytes_to_transfer : 0x0 desc->actual_bytes_transferred : 0x0 desc->descriptor_status : 0x0 desc->descriptor_control : 0x80 Configuring TSE Mac Adjusting TSE to link speed speed:100 100Mbit/s tse_eth_init returned 0 Using ALTERA_TSE-0 device TX Packet @ 0xd0fe3940,0x2a bytessending packet SGDMA DEBUG : desc->source : 0x10fe3940 desc->destination : 0x0 desc->next : 0x10fa0180 desc->source_pad : 0x0 desc->destination_pad : 0x0 desc->next_pad : 0x0 desc->bytes_to_transfer : 0x2a desc->actual_bytes_transferred : 0x0 desc->descriptor_status : 0x0 desc->descriptor_control : 0x85 next desc in sgdma 0x10fa0160 wait for sgdma....done tx sgdma status before clear run= 0x8 tx sgdma status = 0x18sent 0 bytes TX Packet @ 0xd0fe3940,0x2a bytessending packet SGDMA DEBUG : desc->source : 0x10fe3940 desc->destination : 0x0 desc->next : 0x10fa0180 desc->source_pad : 0x0 desc->destination_pad : 0x0 desc->next_pad : 0x0 desc->bytes_to_transfer : 0x2a desc->actual_bytes_transferred : 0x0 desc->descriptor_status : 0x0 desc->descriptor_control : 0x85 next desc in sgdma 0x10fa0160 wait for sgdma....done tx sgdma status before clear run= 0x8 tx sgdma status = 0x18sent 0 bytes

0 Kudos
Highlighted
Valued Contributor III
7 Views

Hi all again, 

I solved the previous problem...i had not DMA transfer because descriptors were not allocated in descriptor memory area... 

 

Now I have this problem...from u-boot I can ping my PC but only the first time...when I try another ping debug traces show that RX descriptors stay busy till the timeout...even after SWRESET... 

 

Why RX descriptors cannot be resetted??? 

 

I forget...the driver I'm using is altera_tse.c under /u-boot/drivers/net in the version present in the latest distribution from the nioswiki... 

 

Any idea will be well accepted..;) 

 

Thanks
0 Kudos
Highlighted
Valued Contributor III
7 Views

Hi Carlo, 

 

my reason for coming back to this thread is your last finding with DMA descriptors. 

My environment is a DE2-115 eval board with a Cyclone IV + Marvell 88E1111 PHY. 

I want to get Ethernet with u-boot running with a precompiled "WEB_SERVER_MII_ENET0" configuration. The Web application is running hereon. 

 

I have been trying u-boot-2010-06-rc2 + latest 2013 version of u-boot. 

In altera_tse.c, both are showing a malloc for the DMA descriptor in SDRAM, not in descriptor memory area. 

Changing this detail alone however does not help to produce an ethernet transmission upon ping command. 

 

Did you mange to work out running version of altera_tse.c? 

Thanks for any advise or help!
0 Kudos