From owner-freebsd-mobile Sat Dec 27 09:19:04 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id JAA06204 for mobile-outgoing; Sat, 27 Dec 1997 09:19:04 -0800 (PST) (envelope-from owner-freebsd-mobile) Received: from isbalham.ist.co.uk (isbalham.ist.co.uk [192.31.26.1]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id JAA06198 for ; Sat, 27 Dec 1997 09:18:58 -0800 (PST) (envelope-from rb@gid.co.uk) Received: from gid.co.uk (uucp@localhost) by isbalham.ist.co.uk (8.8.7/8.8.4) with UUCP id RAA07183; Sat, 27 Dec 1997 17:17:11 GMT Received: from [194.32.164.2] by seagoon.gid.co.uk; Sat, 27 Dec 1997 17:06:06 GMT X-Sender: rb@194.32.164.1 Message-Id: In-Reply-To: <199712150557.OAA02926@afs.ntc.mita.keio.ac.jp> References: Your message of "Sun, 14 Dec 1997 21:17:57 -0700". <199712150417.VAA03645@mt.sri.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sat, 27 Dec 1997 17:04:49 +0000 To: hosokawa@ntc.keio.ac.jp (HOSOKAWA Tatsumi) From: Bob Bishop Subject: Re: Multifunction PC-card support Cc: mobile@FreeBSD.ORG Sender: owner-freebsd-mobile@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Hi, This information may help a bit. I have a Grey Cell GCS3000 modem/ethernet card here, which I think is a well-behaved multifunction card. I have ethernet working on ed1 (it's a NE2000 clone) using the following pccard.conf entry: -------------------------------------------------------------------------- card "Grey Cell" "GCS3000" config 0x28 "ed1" 10 insert echo Grey Cell Ethernet inserted insert /etc/pccard_ether ed1 remove echo Grey Cell Ethernet removed remove /sbin/ifconfig ed1 delete -------------------------------------------------------------------------- ...but I haven't managed to get the modem working. Here is the output of pccardc dumpcis; note that the first address in each config entry looks like an ed ethernet port and the second looks like a serial port. Also that tuple 20 (code 0x21) shows "Multifunction card": -------------------------------------------------------------------------- Configuration data for card in slot 1 Tuple #1, code = 0x1 (Common memory descriptor), length = 3 000: dc 00 ff Common memory device information: Device number 1, type Function specific, WPS = ON Speed = 100nS, Memory block size = 512b, 1 units Tuple #2, code = 0x17 (Attribute memory descriptor), length = 3 000: 49 00 ff Attribute memory device information: Device number 1, type EEPROM, WPS = ON Speed = 250nS, Memory block size = 512b, 1 units Tuple #3, code = 0x20 (Manufacturer ID), length = 4 000: 43 01 41 33 PCMCIA ID = 0x143, OEM ID = 0x3341 Tuple #4, code = 0x15 (Version 1 info), length = 30 000: 04 01 47 72 65 79 20 43 65 6c 6c 00 47 43 53 33 010: 30 30 30 00 47 6f 6c 64 20 33 00 31 00 ff Version = 4.1, Manuf = [Grey Cell],card vers = [GCS3000] Addit. info = [Gold 3],[1] Tuple #5, code = 0x1a (Configuration map), length = 5 000: 01 2f f8 03 03 Reg len = 2, config register addr = 0x3f8, last config = 0x2f Registers: XX------ Tuple #6, code = 0x1b (Configuration entry), length = 26 000: e4 81 9d 3f 55 4d 5d 86 76 36 e6 46 fc 24 ca 61 010: 00 03 1f f8 02 07 30 38 9e 08 Config index = 0x24(default) Interface byte = 0x81 (I/O) wait signal supported Vcc pwr: Nominal operating supply voltage: 5 x 1V Minimum operating supply voltage: 4.5 x 1V Maximum operating supply voltage: 5.5 x 1V Continuous supply current: 1 x 100mA, ext = 0x76 Max current average over 1 second: 3 x 100mA Max current average over 10 ms: 6 x 100mA, ext = 0x46 Wait scale Speed = 1.5 x 10 us Card decodes 4 address lines, 8 Bit I/O only IRQ modes: Level IRQ level = 4 Max twin cards = 2 Misc attr: (Audio-BVD2) (Ext byte = 0x61) Tuple #7, code = 0x1b (Configuration entry), length = 10 000: 25 08 ca 61 20 03 1f f8 02 07 Config index = 0x25 Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x320 block length = 0x20 I/O address # 2: block start = 0x2f8 block length = 0x8 Tuple #8, code = 0x1b (Configuration entry), length = 10 000: 26 08 ca 61 40 03 1f f8 02 07 Config index = 0x26 Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x340 block length = 0x20 I/O address # 2: block start = 0x2f8 block length = 0x8 Tuple #9, code = 0x1b (Configuration entry), length = 10 000: 27 08 ca 61 60 03 1f f8 02 07 Config index = 0x27 Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x360 block length = 0x20 I/O address # 2: block start = 0x2f8 block length = 0x8 Tuple #10, code = 0x1b (Configuration entry), length = 10 000: 28 08 ca 61 00 03 1f e8 03 07 Config index = 0x28 Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x300 block length = 0x20 I/O address # 2: block start = 0x3e8 block length = 0x8 Tuple #11, code = 0x1b (Configuration entry), length = 10 000: 29 08 ca 61 20 03 1f e8 03 07 Config index = 0x29 Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x320 block length = 0x20 I/O address # 2: block start = 0x3e8 block length = 0x8 Tuple #12, code = 0x1b (Configuration entry), length = 10 000: 2a 08 ca 61 40 03 1f e8 03 07 Config index = 0x2a Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x340 block length = 0x20 I/O address # 2: block start = 0x3e8 block length = 0x8 Tuple #13, code = 0x1b (Configuration entry), length = 10 000: 2b 08 ca 61 60 03 1f e8 03 07 Config index = 0x2b Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x360 block length = 0x20 I/O address # 2: block start = 0x3e8 block length = 0x8 Tuple #14, code = 0x1b (Configuration entry), length = 10 000: 2c 08 ca 61 00 03 1f e8 02 07 Config index = 0x2c Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x300 block length = 0x20 I/O address # 2: block start = 0x2e8 block length = 0x8 Tuple #15, code = 0x1b (Configuration entry), length = 10 000: 2d 08 ca 61 20 03 1f e8 02 07 Config index = 0x2d Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x320 block length = 0x20 I/O address # 2: block start = 0x2e8 block length = 0x8 Tuple #16, code = 0x1b (Configuration entry), length = 10 000: 2e 08 ca 61 40 03 1f e8 02 07 Config index = 0x2e Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x340 block length = 0x20 I/O address # 2: block start = 0x2e8 block length = 0x8 Tuple #17, code = 0x1b (Configuration entry), length = 10 000: 2f 08 ca 61 60 03 1f e8 02 07 Config index = 0x2f Card decodes 10 address lines, limited 8/16 Bit I/O I/O address # 1: block start = 0x360 block length = 0x20 I/O address # 2: block start = 0x2e8 block length = 0x8 Tuple #18, code = 0x14 (No link), length = 0 Tuple #19, code = 0x40 (Version 2 Info), length = 38 000: 00 00 00 00 00 00 00 00 01 47 72 65 79 20 43 65 010: 6c 6c 20 53 79 73 74 65 6d 73 20 4c 74 64 00 47 020: 6f 6c 64 20 33 00 Tuple #20, code = 0x21 (Functional ID), length = 2 000: 00 00 Multifunction card Tuple #21, code = 0xff (Terminator), length = 0 -------------------------------------------------------------------------- Note that no serial interface or modem capabilities are visible. I can dump off parts of the attribute memory if that will help you, but it looks rather different from your Mariner card. -- Bob Bishop (0118) 977 4017 international code +44 118 rb@gid.co.uk fax (0118) 989 4254 between 0800 and 1800 UK