News:

Latest versions:
Server plugin: 0.5.1
MVP dongle: 0.5.2
Raspberry Pi client: 0.5.2
Windows client: 0.5.2-1

Main Menu

Netzwerkkarte nicht Full-Duplex

Started by petric, November 22, 2006, 02:03:01

Previous topic - Next topic

petric

Hallo,

ich habe mal meinen Switch waehrend der Bootphase des MediaMVP beobachet.

Waehrend er sich das dongle (hier: Version 2.4) holt laeuft er im Full-Duplex Modus, nach dem das dongle geladen ist (also das Hauptmenue da ist) im Simplex Modus.

Nichts tragisches, aber vielleicht koennte man das spaeter mal aendern ...

MartenR

#1
Bitte auf englisch posten damit die nur englischsprchigen Entwickler z. B.  Mark und Chris das auch lesen können!
Please post your message in english, in order that the english speaking developer e.g. Mark and Chris can read this text also!

Regarding the issue with the half duplex stuff, there is an patch for the 2.4.31 Kernel in mvpmc repos dongle/kernel/linux-2.4.31/patches/smc91111.patch which adds improved network support, maybe it should be added, if vomp switch toward 2.4.31


petric

Sorry, my mistake.

Probably the patch can be backported, so Chris (or anyone who have access to CVS) could be able to apply it for the next release (2.5 ?).

petric

I had a view to the patch made for mvpmc. It seems to be backportable to 2.4.17.

The next days i try to integrate the patch to my local kernel copy and see what happens.

Chris

My understanding of it is that the network chip has very small buffers when compared with the system timings it has to deal with - meaning that if full duplex is enabled it would suffer a lot of packet loss. What does the patch do?

petric

#5
As far as i can see it tells the chip to go full duplex.

I have tested the patch on my system and it seems to have no side effects. Due to my limited knowledge to embedded programming this is not a final statement.

For others who want to test it i attach a patch file.

I applied it to both kernel/dev/...  and kernel/dongle/... because i don't know for which one the change was relevant.

TheAlamo

Quote from: Chris on November 26, 2006, 18:16:21
My understanding of it is that the network chip has very small buffers when compared with the system timings it has to deal with - meaning that if full duplex is enabled it would suffer a lot of packet loss. What does the patch do?


Hi everybody,

I'm using a connection over devolo's dLAN Highspeed Ethernet (http://www.devolo.de/de_DE/produkte/dlan/mldlanhsethernet.html) and I've always had problems with choppy video on some particular channels.

Now I did some tests. This is the result with vomp-dongle-0.2.5 after some 5 minutes:

BusyBox v1.00 (2006.10.18-23:02+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ # ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0D:FE:00:46:40 
          inet addr:192.168.1.5  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:121781 errors:336 dropped:0 overruns:336 frame:0
          TX packets:64219 errors:0 dropped:0 overruns:0 carrier:0
          collisions:29 txqueuelen:100
          RX bytes:181667004 (173.2 MiB)  TX bytes:0 (0.0 B)
          Interrupt:27 Base address:0x300

half duplex with errors, overruns, collisions ...

Now with my homemade dongle with the mentioned patch applied. Same channel, after some 5 minutes:

BusyBox v1.00 (2006.06.01-22:15+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ # ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0D:FE:00:46:40 
          inet addr:192.168.1.5  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:146782 errors:0 dropped:0 overruns:0 frame:0
          TX packets:75207 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:218769652 (208.6 MiB)  TX bytes:0 (0.0 B)
          Interrupt:27 Base address:0x300 DMA chan:1


Conclusion: This patch really does the trick. Well at least for my configuration. By the way, it is running in full duplex and it has "DMA chan:1".

Fourty2

Quote from: petric on November 27, 2006, 10:53:21
For others who want to test it i attach a patch file.

Can't download the patch... 404 not found. Any hints?

Fourty2

TheAlamo

Quote from: Fourty2 on December 09, 2006, 19:05:05
Can't download the patch... 404 not found. Any hints?

Fourty2
The mentioned patch is in the git repository on mvpmc.org. you can find it under dongle/kernel/linux-2.4.31/patches. The smc91111.patch adds a driver for the  smc91111 to the kernel sources. In the mvp development environment a smc91111 driver already exists - of course.
So I ended up replacing smc91111.c by a probably newer version derived from the patch. I've applied this change to both kernel/dev/  and kernel/dongle/. I have no idea why we need two kernels in the development environment.


Chris

Having two kernel trees just makes it easier and faster to generate the two different kernels needed - one for the dongle and one for doing NFS root development work. The dev kernel config sets it up for booting using NFS root, the dongle for booting from a ramdisk.

TheAlamo

Quote from: Chris on December 11, 2006, 12:40:37
The dev kernel config sets it up for booting using NFS root, the dongle for booting from a ramdisk.

Chris,

thanks for the clarification.