mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: bigboy <snakky.zhang@gmail.com>
To: linux-kernel@vger.kernel.org
Subject: How to active/validate the NPE-B NIC of intel_ixdp465?
Date: Mon, 12 Jan 2009 17:37:24 +0800	[thread overview]
Message-ID: <47ae62e20901120137k13e9987eyb8fb5d5691d0b3cc@mail.gmail.com> (raw)

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

             reply	other threads:[~2009-01-12  9:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-12  9:37 bigboy [this message]
2009-01-12 10:09 ` Mikael Pettersson
2009-01-13  1:15   ` bigboy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47ae62e20901120137k13e9987eyb8fb5d5691d0b3cc@mail.gmail.com \
    --to=snakky.zhang@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®