Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Jun 2010 15:57:15 -0700
From:      Oliver Crow <ocrow@skymind.com>
To:        freebsd-hardware@freebsd.org
Subject:   JMicron JMC250 jme interface not receiving
Message-ID:  <4C23E2CB.1070008@skymind.com>

next in thread | raw e-mail | index | archive | help

I'm asking for help getting a JMicron JMC250 network interface working 
under FreeBSD. It appears that the jme driver is not functioning 
correctly on this hardware. The machine is an Asus Eee Box B202 with a 
JMicron JMC250 ethernet chip on the motherboard. I'm running the 
8.0-RELEASE Generic kernel. The machine boots fine, recognizing the 
interface as jme0, but I can't connect to any hosts on the network. When 
I ping the router or another host on the subnet, I see the packet lights 
flash on the router, but I get no ping responses. The arp cache remains 
empty.

I know that it's not a hardware problem, because the machine can connect 
to the network fine under Windows XP, using the same NIC, cable and 
router port. Under FreeBSD I can assign an IP address, take the 
interface down and up, and can see the link light on the router turn off 
and on again when the interface comes up, but I can't ping any hosts.

When I ping the EeeBox from another host the EeeBox MAC address is added 
to the other hosts' arp cache, but no ping response packets are 
received. On the EeeBox the arp cache remains empty. Perhaps the EeeBox 
can transmit packets, but somehow not receive?

I have tried booting with MSI and MSI-X disabled (in loader.conf: 
hw.jme.msi_disable="1", hw.jme.msix_disable="1"). The interface came up 
without MSI, but I was still unable to connect to any hosts. I tried 
disabling the following interface options using ifconfig, also without 
result:  -rxcsum, -txcsum, -tso, -wol, -vlanhwtag.

# pciconf -vlbc
...
jme0@pci0:1:0:0:    class=0x020000 card=0x839c1043 chip=0x0250197b 
rev=0x11 hdr=0x00
     vendor     = 'JMicron Technology Corp.'
     class      = network
     subclass   = ethernet
     bar   [10] = type Memory, range 32, base 0xfbefc000, size 16384, 
enabled
     bar   [18] = type I/O Port, range 32, base 0xec80, size 128, enabled
     bar   [1c] = type I/O Port, range 32, base 0xe800, size 256, enabled
     cap 01[68] = powerspec 3  supports D0 D3  current D0
     cap 10[50] = PCI-Express 1 legacy endpoint max data 128(128) link 
x1(x1)
     cap 11[40] = MSI-X supports 8 messages in map 0x10 enabled
     cap 05[70] = MSI supports 8 messages, 64 bit, vector masks

# ifconfig jme0

jme0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
     
options=219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC>
     ether e0:cb:4e:08:37:f5
     inet 10.25.2.49 netmask 0xffffff00 broadcast 10.25.2.255
     media: Ethernet autoselect (100baseTX <full-duplex>)
     status: active

# netstat -nr

Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
10.25.2.0/24       link#1             U           0       15   jme0
10.25.2.49         link#1             UHS         0        0    lo0
127.0.0.1          link#2             UH          0        4    lo0

# arp -a

# ping 10.25.2.1

PING 10.25.2.1 (10.25.2.1): 56 data bytes
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down
^C
--- 10.25.2.1 ping statistics ---
9 packets transmitted, 0 packets received, 100.0% packet loss

# uname -a

FreeBSD  8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:48:17 UTC 
2009 root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386


# dmesg

Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
     The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:48:17 UTC 2009
     root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Atom(TM) CPU N270   @ 1.60GHz (1608.02-MHz 686-class CPU)
   Origin = "GenuineIntel"  Id = 0x106c2  Stepping = 2
   
Features=0xbfe9fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
   Features2=0x40c39d<SSE3,DTES64,MON,DS_CPL,EST,TM2,SSSE3,xTPR,PDCM,<b22>>
   AMD Features=0x100000<NX>
   AMD Features2=0x1<LAHF>
   TSC: P-state invariant
real memory  = 1073741824 (1024 MB)
avail memory = 1027768320 (980 MB)
ACPI APIC Table: <A_M_I_ OEMAPIC >
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 1 core(s) x 2 HTT threads
  cpu0 (BSP): APIC ID:  0
  cpu1 (AP/HT): APIC ID:  1
ACPI Warning: Optional field Pm2ControlBlock has zero address or 
length:        0     820/0 20090521 tbfadt-655
ACPI Warning: Invalid length for Pm2ControlBlock: 0, using default 8 
20090521 tbfadt-707
ioapic0: Changing APIC ID to 2
ioapic0 <Version 2.0> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <A_M_I_ OEMRSDT> on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
acpi0: reservation of 0, a0000 (3) failed
acpi0: reservation of 100000, 3f700000 (3) failed
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0
acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on 
acpi0
Timecounter "HPET" frequency 14318180 Hz quality 900
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
vgapci0: <VGA-compatible display> port 0xdc80-0xdc87 mem 
0xfbd00000-0xfbd7ffff,0xd0000000-0xdfffffff,0xfbcc0000-0xfbcfffff irq 16 
at device 2.0 on pci0
agp0: <Intel 945GME SVGA controller> on vgapci0
agp0: detected 7932k stolen memory
agp0: aperture size is 256M
vgapci1: <VGA-compatible display> mem 0xfbd80000-0xfbdfffff at device 
2.1 on pci0
pci0: <multimedia, HDA> at device 27.0 (no driver attached)
pcib1: <ACPI PCI-PCI bridge> irq 16 at device 28.0 on pci0
pci3: <ACPI PCI bus> on pcib1
pcib2: <ACPI PCI-PCI bridge> irq 17 at device 28.1 on pci0
pci2: <ACPI PCI bus> on pcib2
pci2: <network> at device 0.0 (no driver attached)
pcib3: <ACPI PCI-PCI bridge> irq 18 at device 28.2 on pci0
pci1: <ACPI PCI bus> on pcib3
jme0: <JMicron Inc, JMC250 Gigabit Ethernet> port 
0xec80-0xecff,0xe800-0xe8ff mem 0xfbefc000-0xfbefffff irq 18 at device 
0.0 on pci1
jme0: Using 8 MSIX messages.
miibus0: <MII bus> on jme0
jmphy0: <JMP211 10/100/1000 media interface> PHY 1 on miibus0
jmphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 
1000baseT-FDX, auto
jme0: Ethernet address: e0:cb:4e:08:37:f5
jme0: [FILTER]
jme0: [FILTER]
jme0: [FILTER]
jme0: [FILTER]
jme0: [FILTER]
jme0: [FILTER]
jme0: [FILTER]
jme0: [FILTER]
uhci0: <Intel 82801G (ICH7) USB controller USB-A> port 0xd480-0xd49f irq 
23 at device 29.0 on pci0
uhci0: [ITHREAD]
uhci0: LegSup = 0x0f30
usbus0: <Intel 82801G (ICH7) USB controller USB-A> on uhci0
...

Thanks for any assistance,
Oliver




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C23E2CB.1070008>