Sierra Wireless / AC775 / Loading an external cisfile as a 'quirck'
Dirk-Willem van Gulik
dirkx at webweaving.org
Sat Nov 12 15:45:08 GMT 2005
I've got the (correct) CIS files below for a Sierra Wireeless Airnet 775
(AC775) card. The actual data on the card (see second cut-and-paste) is
wrong (i.e. multi function instead of a modem).
So I am looking for a way to either import a CIS file dynamically; at run
time - or to translate a CIS file in what I assume should be a quirk entry
in the file /sys/dev/pccard/pccard_cis_quirks.c (is that corect) ?
I.e. something akin to:
#cat SW_775_SER.dat > /dev/pccard0.cis
Looking for a solution on either 5, 6 or CURRENT.
Any hints - or guidance how to best map this into the quirk section - as
the fields are not quite clear to me.
Dw
-- part 1 - supposedly correct CIS file as supplied
for other OS-es.
dirkx at test $ pccardc dumpcisfile SW_775_SER.dat
Configuration data for file SW_775_SER.dat
Tuple #1, code = 0x1 (Common memory descriptor), length = 1
000: ff
Tuple #2, code = 0x17 (Attribute memory descriptor), length = 3
000: 41 00 ff
Attribute memory device information:
Device number 1, type EEPROM, WPS = OFF
Speed = 250nS, Memory block size = 512b, 1 units
Tuple #3, code = 0x20 (Manufacturer ID), length = 4
000: 92 01 10 07
PCMCIA ID = 0x192, OEM ID = 0x710
Tuple #4, code = 0x21 (Functional ID), length = 2
000: 02 00
Serial port/modem
Tuple #5, code = 0x15 (Version 1 info), length = 49
000: 07 00 53 69 65 72 72 61 20 57 69 72 65 6c 65 73
010: 73 00 41 43 37 37 35 00 45 44 47 45 20 4e 65 74
020: 77 6f 72 6b 20 41 64 61 70 74 65 72 00 52 31 00
030: ff
Version = 7.0, Manuf = [Sierra Wireless], card vers = [AC775]
Addit. info = [EDGE Network Adapter],[R1]
Tuple #6, code = 0x1a (Configuration map), length = 5
000: 01 03 00 07 73
Reg len = 2, config register addr = 0x700, last config = 0x3
Registers: XX--XXX-
Tuple #7, code = 0x1b (Configuration entry), length = 16
000: e0 01 19 78 4d 55 5d 25 a3 60 f8 03 07 30 bc 86
Config index = 0x20(default)
Interface byte = 0x1 (I/O)
Vcc pwr:
Continuous supply current: 4.5 x 10mA
Max current average over 1 second: 5 x 10mA
Max current average over 10 ms: 5.5 x 10mA
Power down supply current: 2 x 10mA
Card decodes 3 address lines, 8 Bit I/O only
I/O address # 1: block start = 0x3f8 block length = 0x8
IRQ modes: Level
IRQs: 2 3 4 5 7 9 10 15
Tuple #8, code = 0x1b (Configuration entry), length = 8
000: a1 01 08 a3 60 f8 02 07
Config index = 0x21
Interface byte = 0x1 (I/O)
Card decodes 3 address lines, 8 Bit I/O only
I/O address # 1: block start = 0x2f8 block length = 0x8
Tuple #9, code = 0x1b (Configuration entry), length = 8
000: a2 01 08 a3 60 e8 03 07
Config index = 0x22
Interface byte = 0x1 (I/O)
Card decodes 3 address lines, 8 Bit I/O only
I/O address # 1: block start = 0x3e8 block length = 0x8
Tuple #10, code = 0x1b (Configuration entry), length = 8
000: a3 01 08 a3 60 e8 02 07
Config index = 0x23
Interface byte = 0x1 (I/O)
Card decodes 3 address lines, 8 Bit I/O only
I/O address # 1: block start = 0x2e8 block length = 0x8
Tuple #11, code = 0x1b (Configuration entry), length = 4
000: a4 01 08 23
Config index = 0x24
Interface byte = 0x1 (I/O)
Card decodes 3 address lines, 8 Bit I/O only
Tuple #12, code = 0x14 (No link), length = 0
Tuple #13, code = 0xff (Terminator), length = 0
ACtual stuff on the card
root at builld-jv# pccardc dumpcisfile /dev/pccard0.cis
Configuration data for file /dev/pccard0.cis
Tuple #1, code = 0x1 (Common memory descriptor), length = 2
000: 00 ff
Common memory device information:
Device number 1, type No device, WPS = OFF
Speed = No speed, Memory block size = reserved, 32 units
Tuple #2, code = 0x17 (Attribute memory descriptor), length = 3
000: 41 00 ff
Attribute memory device information:
Device number 1, type EEPROM, WPS = OFF
Speed = 250nS, Memory block size = 512b, 1 units
Tuple #3, code = 0x20 (Manufacturer ID), length = 4
000: 92 01 10 07
PCMCIA ID = 0x192, OEM ID = 0x710
Tuple #4, code = 0x21 (Functional ID), length = 2
000: 06 00
Network/LAN adapter
Tuple #5, code = 0x15 (Version 1 info), length = 49
000: 07 00 53 69 65 72 72 61 20 57 69 72 65 6c 65 73
010: 73 00 41 43 37 37 35 00 45 44 47 45 20 4e 65 74
020: 77 6f 72 6b 20 41 64 61 70 74 65 72 00 52 31 00
030: ff
Version = 7.0, Manuf = [Sierra Wireless], card vers = [AC775]
Addit. info = [EDGE Network Adapter],[R1]
Tuple #6, code = 0x1a (Configuration map), length = 5
000: 01 03 00 07 73
Reg len = 2, config register addr = 0x700, last config = 0x3
Registers: XX--XXX-
Tuple #7, code = 0x1b (Configuration entry), length = 9
000: c1 41 19 01 55 66 30 f8 ff
Config index = 0x1(default)
Interface byte = 0x41 (I/O) +RDY/-BSY active
Vcc pwr:
Nominal operating supply voltage: 5 x 1V
Card decodes 6 address lines, full 8/16 Bit I/O
IRQ modes: Level
IRQs: 3 4 5 6 7 8 9 10 11 12 13 14 15
Tuple #8, code = 0xff (Terminator), length = 0
More information about the freebsd-hackers
mailing list