From owner-freebsd-mobile Sat Jul 29 6:55:14 2000 Delivered-To: freebsd-mobile@freebsd.org Received: from telinco.net (internal.mail.telinco.net [212.1.128.4]) by hub.freebsd.org (Postfix) with ESMTP id B2AB037B53D for ; Sat, 29 Jul 2000 06:55:09 -0700 (PDT) (envelope-from b.candler@pobox.com) Received: from ppp-1-80.cvx3.telinco.net ([212.1.144.80] helo=vaio.linnet.org) by telinco.net with esmtp (Exim 3.02 #1) id 13IX50-000OHf-00 for freebsd-mobile@freebsd.org; Sat, 29 Jul 2000 14:55:07 +0100 Received: (from brian@localhost) by vaio.linnet.org (8.9.3/8.9.3) id OAA00878 for freebsd-mobile@freebsd.org; Sat, 29 Jul 2000 14:55:45 +0100 Date: Sat, 29 Jul 2000 14:55:45 +0100 From: Brian Candler To: freebsd-mobile@freebsd.org Subject: Ricoh RL5C475 PCI-PCMCIA adaptor and interrupts Message-ID: <20000729145545.A856@linnet.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0pre3us Sender: owner-freebsd-mobile@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org (Posted on -mobile because it's a pccard problem, even though this is a desktop machine :-) I have got a Melco Airconnect card (basically a rebadged Wavelan) and am trying to get it to work with the PCI adaptor which came with it, which has a single pccard slot. I've tried both 4.0-20000718-STABLE and 5.0-20000728-CURRENT snapshots with the same results. The PCI card is detected, and so is the pccard, but it gives timeout errors as soon as it is configured. [dmesg] pcic-pci0: irq 11 at device 8.0 on pci0 ... pcic0: at port 0x3e0 iomem 0xd0000 on isa0 pcic0: Polling mode ... pccardd[47]: Card "MELCO"("WLI-PCM-L11") [Version 01.01] [] matched "MELCO" ("WLI-PCM-L11") [(null)] [(null)] wi0: at port 0x200-0x23f irq 11 slot 0 on pccard0 wi0: Ethernet address: 00:02:2d:00:40:59 pccardd[47]: wi0: MELCO (WLI-PCM-L11) inserted. pccardd[47]: pccardd started # wicontrol -i wi0 -f 3 # ifconfig wi0 10.0.0.5 netmask 255.255.255.0 wi0: tx buffer allocation failed wi0: xmit failed wi0: device timeout wi0: tx buffer allocation failed wi0: xmit failed wi0: device timeout wi0: tx buffer allocation failed Now, I was having similar problems with Linux too, which turned out to be interrupt related (I could transmit one packet and then it gave timeouts). I have now got this to work though, by using the latest 3.1.19 version of pcmcia-cs, and configuring it with PCIC_OPTS="irq_mode=0 irq_list=11" Apparently the Ricoh chip has three IRQ modes (PCI, ISA, serial) and you have to explicitly enable PCI mode. [Aside: Under FreeBSD, I've also managed to lock up my machine several times when inserting cards or restarting pccardd :-( I get a 'pccard inserted' message but from that point on virtual console 1 anything I type is just echoed. I can swap to the other VCs, but they don't even echo what I type.] Anyway, I'm not very familiar with the FreeBSD bus model, so if you've got any suggestions for things I can try to narrow down the problem, please mail them to me. The output of Linux's "lspci" command is below. Notice that Linux doesn't correctly identify that the card is on IRQ 11 (so I had to configure it thus in PCIC_OPTS). Thanks, Brian Candler. # lspci -vvxx 00:08.0 CardBus bridge: Ricoh Co Ltd RL5c475 (rev 80) Subsystem: Melco Inc: Unknown device 030a Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- (32-bit, non-prefetchable) Bus: primary=00, secondary=20, subordinate=22, sec-latency=176 I/O window 0: 00000000-00000003 I/O window 1: 00000000-00000003 BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite+ 16-bit legacy interface ports at 0001 00: 80 11 75 04 07 00 10 02 80 00 07 06 00 20 02 00 10: 00 00 00 68 dc 00 00 02 00 20 22 b0 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 80 07 ^^ 40: 54 11 0a 03 01 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mobile" in the body of the message