JMicron JMC250 jme interface not receiving

Internal storage, motherboards, PCI cards, stuff inside the case.

JMicron JMC250 jme interface not receiving

Postby ocrow » 25 Jun 2010, 21:18

I posted this to the freebsd-hardware list yesterday. I hope you'll forgive me for cross-posting here for a broader audience.

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.

Code: Select all
# 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

Code: Select all
# ifconfig jme0

jme0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    ether e0:cb:4e:08:37:f5
    inet netmask 0xffffff00 broadcast
    media: Ethernet autoselect (100baseTX <full-duplex>)
    status: active

Code: Select all
# netstat -nr

Routing tables

Destination        Gateway            Flags    Refs      Use  Netif Expire       link#1             U           0       15   jme0         link#1             UHS         0        0    lo0          link#2             UH          0        4    lo0

Code: Select all
# arp -a

Code: Select all
# ping

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

Code: Select all
# uname -a

FreeBSD  8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:48:17 UTC 2009 [email][/email]:/usr/obj/usr/src/sys/GENERIC  i386

Code: Select all
# 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
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
  AMD Features=0x100000<NX>
  AMD Features2=0x1<LAHF>
  TSC: P-state invariant
real memory  = 1073741824 (1024 MB)
avail memory = 1027768320 (980 MB)
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,
Junior Member
Posts: 2
Joined: 24 Jun 2010, 21:23

Postby DutchDaemon » 26 Jun 2010, 15:25

User avatar
Old Fart
Posts: 10466
Joined: 16 Nov 2008, 20:17
Location: The Netherlands


Postby ocrow » 30 Jun 2010, 05:52

I posted the somewhat unsatisfactory resolution here:

Briefly, the problem fixed itself for no particular reason that I was able to ascertain.
Junior Member
Posts: 2
Joined: 24 Jun 2010, 21:23

Postby singing_sky » 16 Feb 2012, 09:08

I've got the same problem with my Broadcom 4312 under FreeBSD 9. But I can't find the solution yet....
Junior Member
Posts: 4
Joined: 07 Dec 2010, 04:28
Location: Guangzhou, China

Return to System Hardware

Who is online

Users browsing this forum: No registered users and 0 guests