Subject: fxp - unable to map device registers
To: None <port-i386@netbsd.org>
From: Adam Glass <adam@clarity.net>
List: port-i386
Date: 04/15/2003 01:36:34
I have an Intel 845 chipset-based system with two fxp interfaces.  I
just compiled two kernels from the same ~4/12/03 1.6 sources: GENERIC
and a customized/stripped-down kernel ("CUSTOM").  CUSTOM is only able
to deal with the first of the fxp interfaces.  Here's what the
relevant dmesg output looks like when I boot under CUSTOM:

  fxp0 at pci2 dev 6 function 0: i82559 Ethernet, rev 8
  fxp0: interrupting at irq 12
  fxp0: Ethernet address 00:30:48:51:e4:68
  inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
  fxp1 at pci2 dev 7 function 0: unable to map device registers

Note the last line.  Here's what GENERIC sees (this is correct):

  fxp0 at pci2 dev 6 function 0: i82559 Ethernet, rev 8
  fxp0: interrupting at irq 12
  fxp0: Ethernet address 00:30:48:51:e4:68
  inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
  fxp1 at pci2 dev 7 function 0: i82559 Ethernet, rev 8
  fxp1: interrupting at irq 10
  fxp1: Ethernet address 00:30:48:51:e4:69
  inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 4

I searched the archives a bit and someone recommended that the
dmesg buffer size be increased, boot be given the -d flag, and
pci_config_dump be enabled.  So I tried that.  And guess what?
Just adding the debugging info, fxp1 was detected just fine.

Any suggestions?

I've made the dmesg output available at:

  http://www.clarity.net/adam/netbsd/GENERIC
  http://www.clarity.net/adam/netbsd/CUSTOM
  http://www.clarity.net/adam/netbsd/DEBUG

I can make the kernel config files avilable, too, if that would make
any difference.  The difference between DEBUG and CUSTOM is minimal:
"options MSGBUFSIZE=512144" and "options PCI_CONFIG_DUMP" (in DEBUG)
... the difference between DEBUG/CUSTOM and GENERIC is pretty
significant.

Thanks in advance for any assistance.

Adam