[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <47ae62e20901120137k13e9987eyb8fb5d5691d0b3cc@mail.gmail.com>
Date: Mon, 12 Jan 2009 17:37:24 +0800
From: bigboy <snakky.zhang@...il.com>
To: linux-kernel@...r.kernel.org
Subject: How to active/validate the NPE-B NIC of intel_ixdp465?
Hi,
I have an Intel IXDP465 target with a NPE-B mezzanine card and that
was supported & validated with linux-2.6.21 + "Intel IXP400 Software
Access Library". And now the NPE ether net driver moved into the linux
baseline (drivers/net/arm/ixp4xx_eth.c) so I want to try it without
Intel's lib but failed. Here is my operations:
Build the zImage with linux-2.6.28, I configure the kernel with
ixp4xx_defconfig and just change the IXP4XX_ETH to Y.
Build the firmware for NPE-B:
-) download the "Intel(R) IXP400 software - Access Library
(non-crypto)" to get the head file IxNpeMicrocode.h;
-) download the "Intel IXP400 software - NPE microcode (non-crypto)",
both 2.4 and 3.0/3.0.1 version, unpack it and copy the head file
IxNpeMicrocode.h to its source code subdirectory;
-) Edit the head file and comment out those macros for NPE-A and NPE-C
and just leave the one for NPE-B;
-) Edit the IxNpeMicrocode.c and comment out line 25664, the 8 bytes
of "END OF IMAGE LIBRARY MARKER".
-) "gcc ixNpeDlImageConverter.c" and get a a.out; run it and get the
firmware called IxNpeMicrocode.dat.
-) Rename the IxNpeMicrocode.dat to NPE-B and copy it to the NFS
rootfs of the target in /lib/firmware.
There is a PCI E100 NIC and the linux kernel mount NFS rootfs through
it. The kernel can find two NICs related to NPE, eth1 for NPE-B and
eth2 for NPE-C. Then, I tried to active the NIC of NPE-B(eth1):
-) "ifconfig eth1 hw ether 1234567890ab 192.168.1.1 netmask
255.255.255.0 broadcast 192.168.1.255". With this I can see the driver
output "eht1: link up, speed 100 Mb/s, full duplex".
-) Then "ping -I eth1 192.168.1.2". Then all I can get is "Destination
Host Unreachable" :-(
With the firmware built with Microcode-V2.4, it can send up to 6
packages(get tx irq) and at last the "Link is down"; with the firmware
of V3.0, no package TX and at last the TX queue full and was
deactivated. With both of these firmware, no packages received.
I wonder if there are anything wrong with my operations or if I need
some other special configurations/operations? Or any advises on
debugging that.
Thanks
Xiao
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists