sora / ethpipe

EtherPIPE: an Ethernet character device for packet processing
15 stars 3 forks source link

versa ECP3 modul crashes #1

Open tseiman opened 10 years ago

tseiman commented 10 years ago

Hello, i'm extremely happy to find this project - as i'm struggling especially with a working linux module for the Lattice ECP3 Versa board. I was able to build from sources the ethpipe FPGA configuration and ethpipe kernel module.

However when loading the module it is not creating the device (/dev/ethpipe/) and if i access /sys/kernel/ethpipe/ it crashes with a Kernel Oops (no other ECP3 modules loaded, FPGA configuration apparently loaded successfully to FPGA). Same when i try to unload the module (without having done anything before, just loaded/unloaded).

I'm fighting with very similar issues on the Lattice demo package.

Would you be so kind to give me an idea what kernel version and which Linux you are using ? I tried that on a Ubuntu 13.10, kernel 3.11.0 x86_64

Many Thanks Kind Regards Thomas Schmidt

tmatsuya commented 10 years ago

Hi,

I am Takeshi Matsuya.

Could you try the below commands?

lspci -d 3776:8001 -v

01:00.0 Non-VGA unclassified device: Device 3776:8001 Subsystem: Device 3776:8001 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at f7e00000 (32-bit, non-prefetchable) [size=4K] Memory at f0000000 (64-bit, prefetchable) [size=64K] Capabilities: [50] Power Management version 3 Capabilities: [70] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [90] Express Endpoint, MSI 00 Capabilities: [100] Device Serial Number 00-00-00-00-00-00-00-00 Kernel driver in use: ethpipe

rmmod ethpipe

modprobe ethpipe

dmesg | tail -n 20

[ 29.706974] e1000e: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx [ 29.707328] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready [ 33.670302] fuse init (API version 7.22) [ 101.720353] ethpipe_cleanup [ 101.721106] ethpipe_remove_one [ 108.027210] ethpipe Etherpipe driver 0.2.1 [ 108.027214] ethpipe_init [ 108.027304] board_idx: 0 [ 108.027310] mmio0_start: F7E00000 [ 108.027311] mmio0_end : F7E00FFF [ 108.027313] mmio0_flags: 40200 [ 108.027314] mmio0_len : 1000 [ 108.027327] mmio1_start: F0000000 [ 108.027328] mmio1_end : F000FFFF [ 108.027329] mmio1_flags: 14220C [ 108.027330] mmio1_len : 10000 [ 108.027450] dma1_virt_ptr : FFFF8800D8800000 [ 108.027451] dma1_phys_ptr : D8800000 [ 108.027583] dma2_virt_ptr : FFFF8800C2900000 [ 108.027585] dma2_phys_ptr : C2900000

lsmod | grep ethpipe

ethpipe 28617 0

ls -l /dev/ethpipe/

合計 0 crw-rw-rw- 1 root root 10, 59 4月 3 09:56 0 crw-rw-rw- 1 root root 10, 58 4月 3 09:56 r0

uname -a

Linux tmtx100s3 3.13.7-200.fc20.x86_64 #1 SMP Mon Mar 24 22:01:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

free

         total       used       free     shared    buffers     cached

Mem: 8145368 1344924 6800444 9088 140952 496500 -/+ buffers/cache: 707472 7437896 Swap: 32767996 0 32767996

Regards

Takeshi MATSUYA macchan@sfc.wide.ad.jp Jun Murai Lab. Graduate School of Media and Governance, Keio University

2014/04/03 8:21、tseiman notifications@github.com のメール:

Hello, i'm extremely happy to find this project - as i'm struggling especially with a working linux module for the Lattice ECP3 Versa board. I was able to build from sources the ethpipe FPGA configuration and ethpipe kernel module.

However when loading the module it is not creating the device (/dev/ethpipe/) and if i access /sys/kernel/ethpipe/ it crashes with a Kernel Oops (no other ECP3 modules loaded, FPGA configuration apparently loaded successfully to FPGA). Same when i try to unload the module (without having done anything before, just loaded/unloaded).

I'm fighting with very similar issues on the Lattice demo package.

Would you be so kind to give me an idea what kernel version and which Linux you are using ? I tried that on a Ubuntu 13.10, kernel 3.11.0 x86_64

Many Thanks Kind Regards Thomas Schmidt

— Reply to this email directly or view it on GitHub.

tseiman commented 10 years ago

Hello Mr. Matsuya,

I am very thankful for your eMail !

I figured out that the Lattice ECP3 board was not correctly flashed. After correcting that, I can see the output I attached at the end of the eMail (which looks OK for me). But in any case - if I unload the module I get some kind of crash. - before (when the card was not flashed correctly) I got the kernel Oops when unloading the module or accessing the /sys/kernel/ethpipe/* - this is just a minor issue in my opinion - and nothing which is problematic for experimental system - however a bit more challenging is that the complete system hangs, when I try to unload the ethpipe module now (ECP3 card correctly flashed and getting output as seen at the end of email). Unfortunately I cannot give you a better idea what happens because the complete system freezes and I have to reset it in a hard way (apparently nothing from the crash in logs).

However once the ethpipe module is loaded I see now the module’s entries in sysfs and in devfs. When I try to do basic test like that one in software/driver/test.sh I cannot see anything on the ethernet line - which is not surprising because the interfaces seem to be down (I connected crossover to a standard ethernet port on the host and as well tested against a switch).

Question:

Many Thanks, Arigato,

Kind Regards Thomas Schmidt

Output when ethpipe module is loaded (after I have corrected my issue with flashing the ECP3 Card):

lspci: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:/home/tseiman/work/ethpipe/software/driver# lspci -d 3776:8001 -v 03:00.0 Non-VGA unclassified device: Device 3776:8001 Subsystem: Device 3776:8001 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at c0100000 (32-bit, non-prefetchable) [size=4K] Memory at c0000000 (64-bit, prefetchable) [size=64K] Capabilities: [50] Power Management version 3 Capabilities: [70] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [90] Express Endpoint, MSI 00 Capabilities: [100] Device Serial Number 00-00-00-00-00-00-00-00 Kernel driver in use: ethpipe

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

syslog: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v- … Apr 3 16:52:00 baldr udisksd[2018]: Acquired the name org.freedesktop.UDisks2 on the system message bus Apr 3 16:55:29 baldr kernel: [ 350.941358] ethpipe Etherpipe driver 0.2.1 Apr 3 16:55:29 baldr kernel: [ 350.941363] ethpipe_init Apr 3 16:55:29 baldr kernel: [ 350.941462] board_idx: 0 Apr 3 16:55:29 baldr kernel: [ 350.941466] mmio0_start: C0100000 Apr 3 16:55:29 baldr kernel: [ 350.941467] mmio0_end : C0100FFF Apr 3 16:55:29 baldr kernel: [ 350.941469] mmio0_flags: 40200 Apr 3 16:55:29 baldr kernel: [ 350.941470] mmio0_len : 1000 Apr 3 16:55:29 baldr kernel: [ 350.941482] mmio1_start: C0000000 Apr 3 16:55:29 baldr kernel: [ 350.941483] mmio1_end : C000FFFF Apr 3 16:55:29 baldr kernel: [ 350.941484] mmio1_flags: 14220C Apr 3 16:55:29 baldr kernel: [ 350.941486] mmio1_len : 10000 Apr 3 16:55:29 baldr kernel: [ 350.941665] dma1_virt_ptr : FFFF880036900000 Apr 3 16:55:29 baldr kernel: [ 350.941667] dma1_phys_ptr : 36900000 Apr 3 16:55:29 baldr kernel: [ 350.941851] dma2_virt_ptr : FFFF880036A00000 Apr 3 16:55:29 baldr kernel: [ 350.941852] dma2_phys_ptr : 36A00000 Apr 3 17:12:22 baldr dbus[674]: [system] Activating service name='org.debian.apt' (using servicehelper) ...

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

ls /dev/ethpipe -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:~# ls -la /dev/ethpipe/ total 0 drwxr-xr-x 2 root root 80 Apr 3 16:55 . drwxr-xr-x 18 root root 4300 Apr 3 16:55 .. crwxrwxrwx 1 root root 10, 57 Apr 3 16:55 0 crw-rw-rw- 1 root root 10, 56 Apr 3 16:55 r0 root@baldr:~# -^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

free: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:~# free -h total used free shared buffers cached Mem: 3.9G 1.3G 2.5G 0B 63M 731M -/+ buffers/cache: 551M 3.3G Swap: 7.5G 0B 7.5G

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

uname: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:~# uname -a Linux baldr 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

Am 03.04.2014 um 03:06 schrieb Takeshi MATSUYA notifications@github.com:

Hi,

I am Takeshi Matsuya.

Could you try the below commands?

lspci -d 3776:8001 -v

01:00.0 Non-VGA unclassified device: Device 3776:8001 Subsystem: Device 3776:8001 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at f7e00000 (32-bit, non-prefetchable) [size=4K] Memory at f0000000 (64-bit, prefetchable) [size=64K] Capabilities: [50] Power Management version 3 Capabilities: [70] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [90] Express Endpoint, MSI 00 Capabilities: [100] Device Serial Number 00-00-00-00-00-00-00-00 Kernel driver in use: ethpipe

rmmod ethpipe

modprobe ethpipe

dmesg | tail -n 20

[ 29.706974] e1000e: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx [ 29.707328] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready [ 33.670302] fuse init (API version 7.22) [ 101.720353] ethpipe_cleanup [ 101.721106] ethpipe_remove_one [ 108.027210] ethpipe Etherpipe driver 0.2.1 [ 108.027214] ethpipe_init [ 108.027304] board_idx: 0 [ 108.027310] mmio0_start: F7E00000 [ 108.027311] mmio0_end : F7E00FFF [ 108.027313] mmio0_flags: 40200 [ 108.027314] mmio0_len : 1000 [ 108.027327] mmio1_start: F0000000 [ 108.027328] mmio1_end : F000FFFF [ 108.027329] mmio1_flags: 14220C [ 108.027330] mmio1_len : 10000 [ 108.027450] dma1_virt_ptr : FFFF8800D8800000 [ 108.027451] dma1_phys_ptr : D8800000 [ 108.027583] dma2_virt_ptr : FFFF8800C2900000 [ 108.027585] dma2_phys_ptr : C2900000

lsmod | grep ethpipe

ethpipe 28617 0

ls -l /dev/ethpipe/

合計 0 crw-rw-rw- 1 root root 10, 59 4月 3 09:56 0 crw-rw-rw- 1 root root 10, 58 4月 3 09:56 r0

uname -a

Linux tmtx100s3 3.13.7-200.fc20.x86_64 #1 SMP Mon Mar 24 22:01:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

free

total used free shared buffers cached Mem: 8145368 1344924 6800444 9088 140952 496500 -/+ buffers/cache: 707472 7437896 Swap: 32767996 0 32767996

tmatsuya commented 10 years ago

Hi Thomas,

Question:

  • is there any activity needed (may I missed something from scripts and documentation) - to bring up a interface ?

You have to change jumper pins. "J10 and J12 pins": "Short" means ETHERNET phy disable. "Open" means phy enable. *useful link (p.12) http://www.latticesemi.com/~/media/Documents/UserManuals/JL/LatticeECP3VersaEvaluationBoardUsersGuide.pdf

  • in which mode is the PHY behind the FPGA (10/100/1000MBit, Half/Full Duplex) - or does the FPGA configuration support auto sensing ?

Ethpipe only supports 1000BASE-T.

  • are the LEDs at the ECP3's ETH ports under control ? should they give light when ethernet cable is connected (they are always dark) ?

Yes. You need correct jumper setting.

  • in documentation there are devices /dev/ethpipe/{0,1} however I have there {0,r0} is that ok ? what is the meaning of r0 ? what happened to /dev/ethpipe/1 ?

Ethpipe can only support port0. Because phy#1 does not work correctly. ;-( It was the same result using demo design(LatticeECP3 Versa - TSMAC Demo - Design Files for Windows).

Regards,

Takeshi

Takeshi MATSUYA macchan@sfc.wide.ad.jp Jun Murai Lab. Graduate School of Media and Governance, Keio University 5322 Endo, Fujisawa, Kanagawa 252-0882, Japan TEL: +81-466-49-1100, FAX: +81-466-49-1395 http://www.sfc.wide.ad.jp/~macchan/

2014/04/04 3:16、tseiman notifications@github.com のメール:

Hello Mr. Matsuya,

I am very thankful for your eMail !

I figured out that the Lattice ECP3 board was not correctly flashed. After correcting that, I can see the output I attached at the end of the eMail (which looks OK for me). But in any case - if I unload the module I get some kind of crash. - before (when the card was not flashed correctly) I got the kernel Oops when unloading the module or accessing the /sys/kernel/ethpipe/* - this is just a minor issue in my opinion - and nothing which is problematic for experimental system - however a bit more challenging is that the complete system hangs, when I try to unload the ethpipe module now (ECP3 card correctly flashed and getting output as seen at the end of email). Unfortunately I cannot give you a better idea what happens because the complete system freezes and I have to reset it in a hard way (apparently nothing from the crash in logs).

However once the ethpipe module is loaded I see now the module’s entries in sysfs and in devfs. When I try to do basic test like that one in software/driver/test.sh I cannot see anything on the ethernet line - which is not surprising because the interfaces seem to be down (I connected crossover to a standard ethernet port on the host and as well tested against a switch).

Question:

  • is there any activity needed (may I missed something from scripts and documentation) - to bring up a interface ?
  • in which mode is the PHY behind the FPGA (10/100/1000MBit, Half/Full Duplex) - or does the FPGA configuration support auto sensing ?
  • are the LEDs at the ECP3's ETH ports under control ? should they give light when ethernet cable is connected (they are always dark) ?
  • in documentation there are devices /dev/ethpipe/{0,1} however I have there {0,r0} is that ok ? what is the meaning of r0 ? what happened to /dev/ethpipe/1 ?

Many Thanks, Arigato,

Kind Regards Thomas Schmidt

Output when ethpipe module is loaded (after I have corrected my issue with flashing the ECP3 Card):

lspci: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:/home/tseiman/work/ethpipe/software/driver# lspci -d 3776:8001 -v 03:00.0 Non-VGA unclassified device: Device 3776:8001 Subsystem: Device 3776:8001 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at c0100000 (32-bit, non-prefetchable) [size=4K] Memory at c0000000 (64-bit, prefetchable) [size=64K] Capabilities: [50] Power Management version 3 Capabilities: [70] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [90] Express Endpoint, MSI 00 Capabilities: [100] Device Serial Number 00-00-00-00-00-00-00-00 Kernel driver in use: ethpipe

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

syslog: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v- … Apr 3 16:52:00 baldr udisksd[2018]: Acquired the name org.freedesktop.UDisks2 on the system message bus Apr 3 16:55:29 baldr kernel: [ 350.941358] ethpipe Etherpipe driver 0.2.1 Apr 3 16:55:29 baldr kernel: [ 350.941363] ethpipe_init Apr 3 16:55:29 baldr kernel: [ 350.941462] board_idx: 0 Apr 3 16:55:29 baldr kernel: [ 350.941466] mmio0_start: C0100000 Apr 3 16:55:29 baldr kernel: [ 350.941467] mmio0_end : C0100FFF Apr 3 16:55:29 baldr kernel: [ 350.941469] mmio0_flags: 40200 Apr 3 16:55:29 baldr kernel: [ 350.941470] mmio0_len : 1000 Apr 3 16:55:29 baldr kernel: [ 350.941482] mmio1_start: C0000000 Apr 3 16:55:29 baldr kernel: [ 350.941483] mmio1_end : C000FFFF Apr 3 16:55:29 baldr kernel: [ 350.941484] mmio1_flags: 14220C Apr 3 16:55:29 baldr kernel: [ 350.941486] mmio1_len : 10000 Apr 3 16:55:29 baldr kernel: [ 350.941665] dma1_virt_ptr : FFFF880036900000 Apr 3 16:55:29 baldr kernel: [ 350.941667] dma1_phys_ptr : 36900000 Apr 3 16:55:29 baldr kernel: [ 350.941851] dma2_virt_ptr : FFFF880036A00000 Apr 3 16:55:29 baldr kernel: [ 350.941852] dma2_phys_ptr : 36A00000 Apr 3 17:12:22 baldr dbus[674]: [system] Activating service name='org.debian.apt' (using servicehelper) ...

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

ls /dev/ethpipe -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:~# ls -la /dev/ethpipe/ total 0 drwxr-xr-x 2 root root 80 Apr 3 16:55 . drwxr-xr-x 18 root root 4300 Apr 3 16:55 .. crwxrwxrwx 1 root root 10, 57 Apr 3 16:55 0 crw-rw-rw- 1 root root 10, 56 Apr 3 16:55 r0 root@baldr:~# -^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

free: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:~# free -h total used free shared buffers cached Mem: 3.9G 1.3G 2.5G 0B 63M 731M -/+ buffers/cache: 551M 3.3G Swap: 7.5G 0B 7.5G

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

uname: -v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-

root@baldr:~# uname -a Linux baldr 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-

Am 03.04.2014 um 03:06 schrieb Takeshi MATSUYA notifications@github.com:

Hi,

I am Takeshi Matsuya.

Could you try the below commands?

lspci -d 3776:8001 -v

01:00.0 Non-VGA unclassified device: Device 3776:8001 Subsystem: Device 3776:8001 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at f7e00000 (32-bit, non-prefetchable) [size=4K] Memory at f0000000 (64-bit, prefetchable) [size=64K] Capabilities: [50] Power Management version 3 Capabilities: [70] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [90] Express Endpoint, MSI 00 Capabilities: [100] Device Serial Number 00-00-00-00-00-00-00-00 Kernel driver in use: ethpipe

rmmod ethpipe

modprobe ethpipe

dmesg | tail -n 20

[ 29.706974] e1000e: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx [ 29.707328] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready [ 33.670302] fuse init (API version 7.22) [ 101.720353] ethpipe_cleanup [ 101.721106] ethpipe_remove_one [ 108.027210] ethpipe Etherpipe driver 0.2.1 [ 108.027214] ethpipe_init [ 108.027304] board_idx: 0 [ 108.027310] mmio0_start: F7E00000 [ 108.027311] mmio0_end : F7E00FFF [ 108.027313] mmio0_flags: 40200 [ 108.027314] mmio0_len : 1000 [ 108.027327] mmio1_start: F0000000 [ 108.027328] mmio1_end : F000FFFF [ 108.027329] mmio1_flags: 14220C [ 108.027330] mmio1_len : 10000 [ 108.027450] dma1_virt_ptr : FFFF8800D8800000 [ 108.027451] dma1_phys_ptr : D8800000 [ 108.027583] dma2_virt_ptr : FFFF8800C2900000 [ 108.027585] dma2_phys_ptr : C2900000

lsmod | grep ethpipe

ethpipe 28617 0

ls -l /dev/ethpipe/

合計 0 crw-rw-rw- 1 root root 10, 59 4月 3 09:56 0 crw-rw-rw- 1 root root 10, 58 4月 3 09:56 r0

uname -a

Linux tmtx100s3 3.13.7-200.fc20.x86_64 #1 SMP Mon Mar 24 22:01:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

free

total used free shared buffers cached Mem: 8145368 1344924 6800444 9088 140952 496500 -/+ buffers/cache: 707472 7437896 Swap: 32767996 0 32767996

— Reply to this email directly or view it on GitHub.

sora commented 10 years ago

Hi Thomas,

Thank you for your interest in our work! Now, we're developing new offloading functions on FPGA.

Therefore, we changed the design of the FPGA logic and the device driver interface. And many code and wiki contents are based on old design yet.

what happened to /dev/ethpipe/1 ?

Now we disable '/dev/ethpipe/1' and port 1 logics of FPGA because we'd like to shorten the time of FPGA compile. But if you used the /dev/ethpipe/0 with 'ethpipe-loopback-v0_1_0a.bit' (https://github.com/sora/ethpipe/releases) image, packets are sent from port 1 and are received from port 2. For instance, 'cat /dev/ethpipe/0 > /dev/ethpipe/0' work fine as the bridging between port 1 and port 2.

When I try to do basic test like that one in software/driver/test.sh I cannot see anything on the ethernet line

To run the test.sh, please use the ethpipe-loopback-v0_1_0a.bit and connect between port 1 and port 2 directly.

thanks, Yohei

tseiman commented 10 years ago

Hello, yes your work is tremendously interesting - and i’m very happy that I found some people who are working with ECP3 Versa Kit - and making results available for study. My long term target is to implement a tunnel endpoint for GPRS Tunneling Protocol (GTP). I’m educating my self on FPGAs and PCI driver implementations on linux. Unfortunately the user groups for those things are quiet small - the NetFPGA group is bigger - but hardware is unfortunately too expensive. In the moment i’m looking for one working setup on top of Versa ECP3 board - with a working linux (dma enabled) driver and a working (understandable) FPGA configuration as an example and reference. The Lattice kernel module unfortunately was written for a older 2.6 kernel and I tried to enable it for a more modern kernel, unfortunately the kernel DMA/PCI API changed recently and I’m not able to get a kernel panic free version to live.

Now I tried following things:

after I have checked the jumpers (that was really stupid mistake by me) I can see on all 3 setups only one of the 2 ports physically coming up with 1000BaseT (the lower, to PCI slot one) - the upper PETH Port seems to be dead. As well i never see any packets leaving the ports or packets coming in are seen in the driver or software. When sending on ethpipe packets the /sys/kernel/ethpipe/local_time1 is set - but local_time2 (I assume is for incoming packets?) is always 0. I went as well trough "sora/fpga-workshop-2012f“ including the slides (Thank you for making those public (thanks as well to google translate :-) )) I tried also (as it has a simple FPGA logic with no PCI) to run tutorial 3-4 - but unfortunately it didn’t turn up the ETH port (I’ll check a bit more careful lpf file (and which PHY is configured there) later …).

Takeshi was writing that PHY#1 is not working correctly, also not for the demo design. Does it mean that it definitively does not come up ? means there is a bug in hardware design ? Can you suggest or do you know a implementation which runs (as your modules) on actual linux kernel, demonstrates DMA and usage of PHY for this Versa ECP3 Board ?

Would be nice to get ethpipe as well up and running as I definitively like the idea of it ...

Many Thanks, Arigato Thomas

Am 04.04.2014 um 02:30 schrieb Yohei Kuga notifications@github.com:

Hi Thomas,

Thank you for your interest in our work! Now, we're developing new offloading functions on FPGA.

• RX timestamp • TX timestamping • Scheduled transmission with per packet Therefore, we changed the design of the FPGA logic and the device driver interface. And many code and wiki contents are based on old design yet.

what happened to /dev/ethpipe/1 ?

Now we disable '/dev/ethpipe/1' and port 1 logics of FPGA because we'd like to shorten the time of FPGA compile. But if you used the /dev/ethpipe/0 with 'ethpipe-loopback-v0_1_0a.bit' (https://github.com/sora/ethpipe/releases) image, packets are sent from port 1 and are received from port 2. For instance, 'cat /dev/ethpipe/0 > /dev/ethpipe/0' work fine as the bridging between port 1 and port 2.

When I try to do basic test like that one in software/driver/test.sh I cannot see anything on the ethernet line

To run the test.sh, please use the ethpipe-loopback-v0_1_0a.bit and connect between port 1 and port 2 directly.

thanks, Yohei

— Reply to this email directly or view it on GitHub.

sora commented 10 years ago

My long term target is to implement a tunnel endpoint for GPRS Tunneling Protocol (GTP).

really interest project.

means there is a bug in hardware design ?

Maybe yes.

Last year, ECP3 board sold very cheap price ($99). And we bought 4~5 ECP3 boards but many boards can't work single ethernet port. If your board has same problem, you can try to click 'reset button' on ECP3 board many times. Sometime both PHY's LED is up (you need reboot the PC after linkup.)

Please tell me if there is progress.