From archie@packetdesign.com Tue Oct 31 17:20:46 2000 Return-Path: Received: from mailman.packetdesign.com (dns.PACKETDESIGN.NET [216.15.46.10]) by hub.freebsd.org (Postfix) with ESMTP id 2D87F37B4D7 for ; Tue, 31 Oct 2000 17:20:46 -0800 (PST) Received: from bubba.packetdesign.com (bubba.packetdesign.com [192.168.0.223]) by mailman.packetdesign.com (8.11.0/8.11.0) with ESMTP id eA11KhQ90962 for ; Tue, 31 Oct 2000 17:20:43 -0800 (PST) (envelope-from archie@packetdesign.com) Received: (from archie@localhost) by bubba.packetdesign.com (8.11.1/8.11.1) id eA11Ki008714; Tue, 31 Oct 2000 17:20:44 -0800 (PST) (envelope-from archie) Message-Id: <200011010120.eA11Ki008714@bubba.packetdesign.com> Date: Tue, 31 Oct 2000 17:20:44 -0800 (PST) From: Archie Cobbs Reply-To: archie@packetdesign.com To: FreeBSD-gnats-submit@freebsd.org Subject: PCMCIA card using ed driver temporarily freezes system X-Send-Pr-Version: 3.2 >Number: 22460 >Category: kern >Synopsis: PCMCIA card using ed driver temporarily freezes system >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: closed >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Oct 31 17:30:01 PST 2000 >Closed-Date: Thu Sep 13 11:49:47 PDT 2001 >Last-Modified: Thu Sep 13 11:50:07 PDT 2001 >Originator: Archie Cobbs >Release: FreeBSD 4.1.1-STABLE i386 >Organization: Packet Design, Inc. >Environment: FreeBSD 4.1.1-RELEASE PMX PE-200 PCMCIA Ethernet card, uses the "ed" driver >Description: This problem was originally reported on freebsd-mobile. The email below describes the situation. The patch suggested does in fact fix the problem. > From owner-freebsd-mobile Mon Oct 30 4:27:55 2000 > Delivered-To: freebsd-mobile@freebsd.org > Received: from lavender.sanpei.org (ppp153.dialup.st.keio.ac.jp [131.113.27.153]) > by hub.freebsd.org (Postfix) with ESMTP id F033E37B4C5 > for ; Mon, 30 Oct 2000 04:27:48 -0800 (PST) > Received: (from sanpei@localhost) > by lavender.sanpei.org (8.11.0/3.7W) id e9UCRIb08030; > Mon, 30 Oct 2000 21:27:18 +0900 (JST) > Date: Mon, 30 Oct 2000 21:27:18 +0900 (JST) > Message-Id: <200010301227.e9UCRIb08030@lavender.sanpei.org> > To: archie@dellroad.org > Cc: freebsd-mobile@FreeBSD.ORG > Subject: Re: PCMCIA card temporarily freezes system > In-Reply-To: Your message of "Sat, 28 Oct 2000 11:52:10 -0700 (PDT)". > <200010281852.e9SIqAO34152@curve.dellroad.org> > From: sanpei@sanpei.org (MIHIRA Yoshiro) > X-Mailer: mnews [version 1.22] 1999-12/19(Sun) > Sender: owner-freebsd-mobile@FreeBSD.ORG > Precedence: bulk > X-Loop: FreeBSD.org > > archie@dellroad.org wrote: > > >> I have this PCMCIA card: PMX PE-200, which uses the "ed" driver. > >> It has worked for me before on another system, but in trying > >> on a ThinkPad A20m laptop with FreeBSD 4.1.1-REL, it seems > >> to temporarily "freeze" the system when plugged in. > >> > >> That is, if pccardd is not running, everything looks normal. > >> When pccardd is started, it detects the card and the kernel > >> spits out the probe message with the IRQ and memory address, > >> and then the system completely freezes: > >> > >> pccard: card inserted, slot 0 > >> ed0 at port 0x300-0x31f iomem 0xd4000-0xd43ff irq 10 slot 0 on pccard0 > >> > >> Pressing keys on the keyboard does nothing. But then if I pop out > >> the card, the system continues normally (responding to any keys > >> pressed while frozen), printing out the card's Ethernet address, > >> etc. Of course then pccard immediately detects the card has been > >> popped out and detaches the interface: > >> > >> ed0: address 00:20:e0:0f:a6:9f, type NE2000 (16 bit) > >> ed0: detached > >> pccard: card removed, slot 0 > >> stray irq 10 > >> > >> This can be repeeated any number of times. > >> > >> Any ideas? I've tried different interrupts, etc., to no avail. > >> This card works fine under Win98 on the same laptop. Dmesg > >> excerpts below.. > > Try below quick hack patch. > Some PC-Card which uses "ed" driver have hung-up with ed_get_linksys. > But we don't solve this problem.... > > Cheers > MIHIRA Yoshiro > > --- sys/dev/ed/if_ed_pccard.c.org Mon Oct 30 21:24:34 2000 > +++ sys/dev/ed/if_ed_pccard.c Mon Oct 30 21:24:48 2000 > @@ -201,13 +201,17 @@ > return (error); > } > > +#if 0 > if (ed_get_Linksys(sc) == 0) { > +#endif > pccard_get_ether(dev, ether_addr); > for (i = 0, sum = 0; i < ETHER_ADDR_LEN; i++) > sum |= ether_addr[i]; > if (sum) > bcopy(ether_addr, sc->arpcom.ac_enaddr, ETHER_ADDR_LEN); > +#if 0 > } > +#endif > > error = ed_attach(sc, device_get_unit(dev), flags); > return (error); >How-To-Repeat: See above. >Fix: Apply the patch shown above. >Release-Note: >Audit-Trail: State-Changed-From-To: open->closed State-Changed-By: archie State-Changed-When: Thu Sep 13 11:49:47 PDT 2001 State-Changed-Why: This bug has been fixed for a while now (thanks to Warner). http://www.FreeBSD.org/cgi/query-pr.cgi?pr=22460 >Unformatted: