[ixp1200] RE: booting over PCI (ENP boards)...

Ing. Ricardo Camarena Ramos camarena at itesm.mx
Thu Jun 10 16:14:52 EDT 2004


Hi Willem.

Currently I'm trying to set-up five Linux (RedHat 7.2 and 7.3) workstations
with ENP-2505 boards, but failed to accomplish the task. (Using the IXA
EDU Setup guide 1.01 from Intel).I think the problem is on the pciDg.o and
pciDgNet.o modules. Because the only problem I have is regarging loading
these modules, as a result I cannot ping between Linux host and board. Linux
and W2K can ping between each other.

The main problem I have with Linux 7.2 (besides having a hard time to configure
the video card, not finished yet either) is that although it seems pciDg.o
and pciDgNet.o load correctly, eth1 is not created, I got this message:
"SIOCSIFADDR: No such device eth1: unknown interface: no such device."

With Linux 7.3 I have tried to recompile the modules following a guide from
Laboratory of Advanced Systems Research at UCLA (I think)(http://webdiee.cem.itesm.mx/web2/comunicaciones/proyectos/otraguia.doc)
but still I got a message telling me the modules "pciDg.o was compilled
for version 2.4.18-4 while this kernel version is 2.4.18-3smp." So, I decided
to follow my own re-compilation procedure. This is what I did:
cd /usr/src/linux
edit the Makefile and change the EXTRAVERSION=-4
make mrproper
make oldconfig
cd /mnt/cdrom/ENP-2505_Driver
rpm -recompile boot_drv-2.0-1.src.rpm
cd /usr/src/linux
make clean
make zImage
To big, so I change to
make bzImage
make modules
make modules_install
cp /arch/i386/boot/bzImage /boot/vmlinuz-2.4.18-4
I modified the grub.conf file to add the new kernel
reboot
uname -r and I got 2.4.18-4
cd /opt/ixasdk/enp-2505/bin
insmod pciDg.o
pciDg.o was compiled for kernel ersion 2.4.17 while this 
kernel is version 2.4.18-4

Hope you or somebody can help me. Best regards.



>-- Mensaje Original --
>Date: Thu, 10 Jun 2004 12:00:14 -0400 (EDT)
>From: ixp1200-request at lists.cs.princeton.edu
>Subject: ixp1200 Digest, Vol 7, Issue 1
>To: ixp1200 at lists.cs.princeton.edu
>Reply-To: ixp1200 at lists.cs.princeton.edu
>
>
>Send ixp1200 mailing list submissions to
	ixp1200 at lists.cs.princeton.edu

To subscribe or unsubscribe via the World Wide Web, visit
	https://lists.cs.princeton.edu/mailman/listinfo/ixp1200
or, via email, send a message with subject or body 'help' 
>o
	ixp1200-request at lists.cs.princeton.edu

You can reach the person managing the list at
	ixp1200-owner at lists.cs.princeton.edu

When replying, please edit your Subject line so it is more specific
than "Re: Contents of ixp1200 digest..."

>Today's Topics:

   1. [WORKING] booting over PCI (ENP boards) from a 2.6 kernel
      installation (Willem de Bruijn)
   2. How to duplicate a packet in memory? (?yvind Hvamstad)

>Principio del mensaje anexo
>
>From: Willem de Bruijn <wdebruij at dds.nl>
>Subject: [ixp1200] [WORKING] booting over PCI (ENP boards) from a 2.6 kernel
>	installation
>Date: Thu, 10 Jun 2004 14:48:33 +0200
>To: ixp1200 at lists.cs.princeton.edu
>Reply-To: IXP1200 Developer's List <ixp1200 at lists.cs.princeton.edu>
>
>
>Hi,

  this is just a short message for people running Linux on an IXP board
that 
connects to the host over PCI. As you probably know, most support 
applications are currently restricted to linux 2.4 kernels. For one of our

projects I'm in the p
>ocess of writing an alternate PciDg driver that will 
also work with newer (2.6) kernels. At the moment we are able to 

(1) map both ENP and EB memory over PCI to kernel- and userspace on the
host.
(2) boot the ENP boards over PCI using Radisys' o
> Intel's bvloadapp utility 
while relying on our own GPLed mmapping module instead of PciDg.

Note that pseudo-ethernet is not working yet. However, if you simply want
to 
get the board up and running that's not an issue. Please let me know if

yo
>'re interested in an updated pseudo-ethernet driver, I may consider 
investing time in it then.

If you want to try out the module, do the following: get the latest ffpf

distribution from anonymous CVS via ffpf.sourceforge.net (I'll update the

r
>gular distribution download shortly):

cvs -d:pserver:anonymous at cvs.sourceforge.net:/cvsroot/ffpf login 
cvs -z3 -d:pserver:anonymous at cvs.sourceforge.net:/cvsroot/ffpf co 
ffpf/src/v1.2
 
and then build the kernelspace modules in [dir]/kernelspac
>, using
1) for 2.5.70+ and 2.6 (kbuild) infrastructure)
ln -s Makefile.kernel.kbuild Makefile
make -C [directory of your linux src, e.g. /usr/src/linux] SUBDIRS=${PWD}

modules

2) for 2.4 and lower
make -f Makefile.kernel.nokbuild

this shoul
> give you a module called genpci.ko.
inserting this module with the proper parameters will ioremap all memory
on an 
arbitrary PCI device to the host's kernel and export it to userspace via
a 
file in /dev through both read/write/llseek and mmap mec
>anisms.

If the module is inserted without any options it will try to create the

file /dev/genpci with all memory on an ENP board mapped. Since the SDRAM
is 
in the 4th onboard memory region you'll have to add the length of the 
previous three me
>ory reigons to the offsets used in bvloadapp.c to get 
bvloadapp running:

#define LINUX_LOAD_ADDRESS 0x04008000 + 256 + 4096 + (1024*1024)
#define RAMDISK_LOAD_ADDRESS 0x04800000 + 256 + 4096 + (1024*1024)

also, bvloadapp asks for /dev/bv, so y
>u should insmod genpci.ko using the 
following command:

insmod genpci.ko name=/dev/bv

or change the filename in bvloadapp.c.

To get an EB booted, add the option device=0x1200 to the insmod parameter
list 
and move the offsets around a bit. U
>fortunately, my EB board kept resetting 
itself when put in a PCI slot, so I couldn't get it to work (I posted a

question about this before).

I hope that this can be of use to some of you.

regards,

  Willem

-- 
Willem de Bruijn
wdebrui
>_at_dds.nl
http://www.wdebruij.dds.nl/

current project : 
Fairly Fast Packet Filter (FFPF)
http://ffpf.sourceforge.net/

-- 
Dit bericht is gescand op virussen en andere gevaarlijke inhoud door ULCN
MailScanner en het bericht lijkt schoon te z
>jn.
This message has been scanned for viruses and dangerous content by ULCN
MailScanner, and is believed to be clean.



>Fin del mensaje anexo
>
>Principio del mensaje anexo
>
>From: Øyvind Hvamstad <oyvindh at ifi.uio.no>
>Subject: [ixp1200] How to duplicate a packet in memory?
>Date: Thu, 10 Jun 2004 15:58:07 +0200
>To: ixp1200 at lists.cs.princeton.edu
>Reply-To: ixp1200 at lists.cs.princeton.edu
>
>
>Hi, I'm wondering what is the best way to duplicate a packet in SDRAM?
The reason for this is that I want to send one copy of the packet to the
StrongARM and the other copy will be forwarded to a different host after
some modifications.

1. I coul
> loop in microcode and use sdram[read] -> sdram[write] in
sequence until I reach the end of the packet.

2. I can copy it using the StrongARM, but this would probably mean that
the whole forwarding process will be stalled until the copying is
fini
>hed.

3. There is some 'magic' instruction that does this for me, that I'm
unaware of.

I'd much appreciate it if someone could give me a clue about what is the
best practice here?

Info: ENP-2505, embedded linux, Intel SDK 2.01
-- 
Øyvind Hv
>mstad <oyvindh at ifi.uio.no>



>Fin del mensaje anexo
>
>_______________________________________________
ixp1200 mailing list
ixp1200 at lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/ixp1200


Ricardo Camarena Ramos
Asistente de Investigación
Departamento de Ingeniería Eléctrica y Electrónica
División de Profesional y Graduados, Campus Estado de México
Premio Nacional de Calidad 1998

Teléfono: (5255)5864.5555 x 3208, 5864.5660
camarena at itesm.mx
enlace-intercampus: 80.236.3208, www.cem.itesm.mx

Tecnológico de Monterrey,
60 AÑOS COMPROMETIDOS CON LA EXCELENCIA EDUCATIVA

Hoy mejor que ayer, y mañana mejor que hoy.



More information about the ixp1200 mailing list