Date: Wed, 9 Dec 1998 11:25:58 +0000 From: D.M.Pick@qmw.ac.uk To: FreeBSD-gnats-submit@FreeBSD.ORG Subject: kern/9030: DMPno2 - PCCards are not being recognised on insertion after system startup Message-ID: <E0znhkk-00019E-00@xi.css.qmw.ac.uk>
next in thread | raw e-mail | index | archive | help
>Number: 9030 >Category: kern >Synopsis: DMPno2 - PCCards are not being recognised on insertion after system startup >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Dec 9 03:30:01 PST 1998 >Last-Modified: >Originator: David Pick >Organization: >Release: FreeBSD 3.0-RELEASE i386 >Environment: FreeBSD 3.0 installed from Walnut Creek CDROM onto a Toshiba Libretto 50CT. >Description: PCCards are not being recognised on insertion. I had previously had FreeBSD 2.2.7 installed on that machine, and have replaced it with FreeBSD 3.0 from a Walnut Creek CDROM (installed via FTP from another FreeBSD 2.2.7 desktop machine via isolated private thin-wire Ethernet). I had been using a kernel with PCCard support and the PCCard daemon to enable me to start the machine, edit "/etc/rc.conf" to change the network parameters, and then insert the PCCard Ethernet adaptor and let the interface start with the correct parameters. (The Ethernet adaptor is a 3Com 3C589D.) I built a new kernel for FreeBSD 3.0 and attempted to do the same thing. (There had been a problem with the sound subsystem - see my separate problem report "DMPno1 - ..." - and I had initially omitted the sound drivers from this new kernel.) The system refused to recognise *any* PCCard when I inserted them. After looking up your Web site, and following the links to the PAO project, I noted they had a note that this could happen if devices were omitted from the configuration, and they especially point at sound devices. I therefore solved the sound device configuration problem "DMPno1 - ..." and rebuilt the kernel. The problem persisted. I checked the PCCard was working properly under Windows95 (spit ;-). I rebooted *with the PCCard in its slot* (which I don't normally do) *and it was recognised*. I checked it out and it worked properly. I inserted another PCCard and that was not recognised at all - no logging or console messages. Powering down and restarting the machine produced consistant results - if the PCCard was in on bootup it was recognised but if it was inserted later it was not recognised. I also tried to use "pccardc dumpcis" to look at the PCCards. Results were consistant - if the card had been recognised the CIS data was printed, if it hadn't it wasn't. That was even true when two PCCards were in the machine; one inserted before bootup and one after, only the one inserted before bootup was recognised by pccardd and dumped by pccardc. Given this evidence I suspect the problem is likely to be in the kernel rather than the userland programs, and have therefore assigned a category of "kern". I have assigned a severity of "serious" because there are times when I want to be able to remove one PCCard and insert a different one without rebooting. I use this machine for various network monitoring and diagnostic jobs: connecting it to different and unpredictable parts of my sites network at unpredictable times. I have assigned a priority of "high" because I would very much like it fixed (and please regard this a a bit of classic British understatement) as soon a practical because of the use I make of this machine, and because I guess the next release is some time away. Kernel configuration file used to build the kernel was: # # LIBRETTO based on GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks # # For more information read the handbook part System Administration -> # Configuring the FreeBSD Kernel -> The Configuration File. # The handbook is available in /usr/share/doc/handbook or online as # latest version from the FreeBSD World Wide Web server # <URL:http://www.FreeBSD.ORG/> # # An exhaustive list of options and more detailed explanations of the # device lines is present in the ./LINT configuration file. If you are # in doubt as to the purpose or necessity of a line, check first in LINT. # # $Id: GENERIC,v 1.125 1998/10/16 01:30:11 obrien Exp $ machine "i386" #cpu "I386_CPU" #cpu "I486_CPU" cpu "I586_CPU" #cpu "I686_CPU" ident LIBRETTO maxusers 32 options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options MFS #Memory Filesystem options MFS_ROOT #MFS usable as root device, "MFS" req'ed options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, "NFS" req'ed options MSDOSFS #MSDOS Filesystem options "CD9660" #ISO 9660 Filesystem options "CD9660_ROOT" #CD-ROM usable as root. "CD9660" req'ed options "EXT2FS" #Linux "ext2fs" Filesystem options PROCFS #Process filesystem options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=15000 #Be pessimistic about Joe SCSI device options UCONSOLE #Allow users to grab the console options FAILSAFE #Be conservative options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor config kernel root on wd0 controller isa0 #controller eisa0 #controller pci0 #controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr #disk fd0 at fdc0 drive 0 #disk fd1 at fdc0 drive 1 # Unless you know very well what you're doing, leave ft0 at drive 2, or # remove the line entirely if you don't need it. Trying to configure # it on another unit might cause surprises, see PR kern/7176. #tape ft0 at fdc0 drive 2 #options "CMD640" # work around CMD640 chip deficiency controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr disk wd0 at wdc0 drive 0 #disk wd1 at wdc0 drive 1 #controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr #disk wd2 at wdc1 drive 0 #disk wd3 at wdc1 drive 1 #options ATAPI #Enable ATAPI support for IDE bus #options ATAPI_STATIC #Don't do it as an LKM #device wcd0 #IDE CD-ROM #device wfd0 #IDE Floppy (e.g. LS-120) # A single entry for any of these controllers (ncr, ahb, ahc, amd) is # sufficient for any number of installed devices. #controller ncr0 #controller amd0 #controller ahb0 #controller ahc0 #controller isp0 # This controller offers a number of configuration options, too many to # document here - see the LINT file in this directory and look up the # dpt0 entry there for much fuller documentation on this. #controller dpt0 #controller adv0 at isa? port ? cam irq ? #controller adw0 #controller bt0 at isa? port ? cam irq ? #controller aha0 at isa? port ? cam irq ? #controller uha0 at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr #!CAM#controller aic0 at isa? port 0x340 bio irq 11 vector aicintr #controller nca0 at isa? port 0x1f88 bio irq 10 vector ncaintr #controller nca1 at isa? port 0x350 bio irq 5 vector ncaintr #controller sea0 at isa? bio irq 5 iomem 0xc8000 iosiz 0x2000 vector seaintr controller scbus0 device da0 device sa0 device pass0 device cd0 #Only need one of these, the code dynamically grows #device wt0 at isa? port 0x300 bio irq 5 drq 1 vector wtintr #device mcd0 at isa? port 0x300 bio irq 10 vector mcdintr #controller matcd0 at isa? port 0x230 bio #device scd0 at isa? port 0x230 bio # syscons is the default console driver, resembling an SCO console device sc0 at isa? port "IO_KBD" conflicts tty irq 1 vector scintr # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver #device vt0 at isa? port "IO_KBD" conflicts tty irq 1 vector pcrint #options XSERVER # support for X server #options FAT_CURSOR # start with block cursor # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines #options PCVT_SCANSET=2 # IBM keyboards are non-std device npx0 at isa? port "IO_NPX" irq 13 vector npxintr # # Laptop support (see LINT for more options) # device apm0 at isa? flags 0x31 # Advanced Power Management # PCCARD (PCMCIA) support controller card0 device pcic0 at card? device pcic1 at card? # You may need to reset all pccards after resuming options PCIC_RESUME_RESET # reset after resume device sio0 at isa? port "IO_COM1" flags 0x20010 tty irq 4 vector siointr device sio1 at isa? port "IO_COM2" flags 0x20000 tty irq 3 vector siointr device sio2 at isa? disable port "IO_COM3" tty irq 15 vector siointr device sio3 at isa? disable port "IO_COM4" tty irq 9 vector siointr #device lpt0 at isa? port? tty irq 7 vector lptintr controller ppc0 at isa? port? tty irq 7 vector ppcintr controller ppbus0 controller vpo0 at ppbus? device nlpt0 at ppbus? device plip0 at ppbus? device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr # Order is important here due to intrusive probes, do *not* alphabetize # this list of network interfaces until the probes have been fixed. # Right now it appears that the ie0 must be probed before ep0. See # revision 1.20 of this file. #device de0 #device fxp0 #device tl0 #device tx0 #device vx0 #device xl0 #device ed0 at isa? port 0x280 net irq 10 iomem 0xd8000 vector edintr #device ie0 at isa? port 0x300 net irq 10 iomem 0xd0000 vector ieintr device ep0 at isa? disable port 0x300 net irq 10 vector epintr #device ex0 at isa? port? net irq? vector exintr #device fe0 at isa? port 0x300 net irq ? vector feintr #device le0 at isa? port 0x300 net irq 5 iomem 0xd0000 vector le_intr #device lnc0 at isa? port 0x280 net irq 10 drq 0 vector lncintr #device ze0 at isa? port 0x300 net irq 10 iomem 0xd8000 vector zeintr #device zp0 at isa? port 0x300 net irq 10 iomem 0xd8000 vector zpintr #device cs0 at isa? port 0x300 net irq ? vector csintr pseudo-device loop pseudo-device ether pseudo-device sl 2 pseudo-device ppp 2 pseudo-device tun 2 pseudo-device pty 16 pseudo-device gzip # Exec gzipped a.out's pseudo-device vn 2 # Vnode deiver (turns a file into a device) pseudo-device snp 4 # Snoop device - to look at pty/vty/etc.. # # The PPP_BSDCOMP option enables support for compress(1) style entire # packet compression, the PPP_DEFLATE is for zlib/gzip style compression. # PPP_FILTER enables code for filtering the ppp data stream and selecting # events for resetting the demand dial activity timer - requires bpfilter. # See pppd(8) for more details. # options PPP_BSDCOMP #PPP BSD-compress support options PPP_DEFLATE #PPP zlib/deflate/gzip support options PPP_FILTER #enable bpf filtering (needs bpfilter) # KTRACE enables the system-call tracing facility ktrace(2). # This adds 4 KB bloat to your kernel, and slightly increases # the costs of each syscall. options KTRACE #kernel tracing # This provides support for System V shared memory. # options SYSVSHM # These two options provide support for System V Interface # Definition-style interprocess communication, in the form # of shared semaphores and message-queues respectively. options SYSVSEM options SYSVMSG # The `bpfilter' pseudo-device enables the Berkeley Packet Filter. Be # aware of the legal and administrative consequences of enabling this # option. The number of devices determines the maximum number of # simultaneous BPF clients programs runnable. pseudo-device bpfilter 8 #Berkeley packet filter # Allow user-mode programs to manipulate their local descriptor tables. # This option is required for the WINE Windows(tm) emulator, and is # not used for anything else (that we know of). options USER_LDT # This option includes a MD5 routine in the kernel, this is used for # various authentication and privacy used. options "MD5" options IPX # Novell IPX/SPX protocols options NETATALK # Appletalk protocols options MROUTING # Multicast routing options IPFIREWALL # Firewall options IPFIREWALL_VERBOSE # Say something about dropped packets options "IPFIREWALL_VERBOSE_LIMIT=100" # Say it only so many times #options IPFIREWALL_DEFAULT_TO_ACCEPT # Allow everything by default options IPDIVERT # Include divert sockets controller snd0 device opl0 at isa? port 0x388 # Yamaha OPL-3 >How-To-Repeat: It's very repeatable - start from cold or reboot the machine with a PCCard already inserted and it's recognised; insert a card after bootup and it isn't recognised. >Fix: <none known to me> >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E0znhkk-00019E-00>