Sierra Wireless CIS [Was: Re: Epia MII 10000, 2.6.13-mm2,
cs: pcmcia_socket0: unable to apply power]
Sander
sander at humilis.net
Sat Sep 17 12:28:35 EDT 2005
Dominik Brodowski wrote (ao):
> On Fri, Sep 16, 2005 at 07:00:47AM +0200, Sander wrote:
> > # cat /lib/firmware/SW_7xx_SER.cis > /sys/class/pcmcia_socket/pcmcia_socket0/cis
> > # diff /sys/class/pcmcia_socket/pcmcia_socket0/cis /lib/firmware/SW_7xx_SER.cis
> > Binary files /sys/class/pcmcia_socket/pcmcia_socket0/cis and /lib/firmware/SW_7xx_SER.cis differ
> >
> > But there is something there:
> > # cat /sys/class/pcmcia_socket/pcmcia_socket0/cis > /tmp/cis
> >
> > # file /lib/firmware/SW_7xx_SER.cis /tmp/cis
> > /lib/firmware/SW_7xx_SER.cis: PDP-11 UNIX/RT ldp
> > /tmp/cis: PDP-11 UNIX/RT ldp
> >
> > # ls -l /lib/firmware/SW_7xx_SER.cis /tmp/cis
> > -rw-r--r-- 1 root root 140 Sep 9 15:07 /lib/firmware/SW_7xx_SER.cis
> > -rw-r--r-- 1 root root 138 Sep 16 06:49 /tmp/cis
>
> can you hexdump -C both, and/or send both these files to me, please?
# hexdump -C /lib/firmware/SW_7xx_SER.cis
00000000 01 01 ff 17 03 41 00 ff 20 04 92 01 10 07 21 02 |.....A.. .....!.|
00000010 02 00 15 37 07 00 53 69 65 72 72 61 20 57 69 72 |...7..Sierra Wir|
00000020 65 6c 65 73 73 00 41 43 37 31 30 2f 41 43 37 35 |eless.AC710/AC75|
00000030 30 00 47 50 52 53 20 4e 65 74 77 6f 72 6b 20 41 |0.GPRS Network A|
00000040 64 61 70 74 65 72 00 52 31 00 ff 1a 05 01 03 00 |dapter.R1.......|
00000050 07 73 1b 10 e0 01 19 78 4d 55 5d 25 a3 60 f8 03 |.s.....xMU]%.`..|
00000060 07 30 bc 86 1b 08 a1 01 08 a3 60 f8 02 07 1b 08 |.0........`.....|
00000070 a2 01 08 a3 60 e8 03 07 1b 08 a3 01 08 a3 60 e8 |....`.........`.|
00000080 02 07 1b 04 a4 01 08 23 14 00 ff 00 |.......#....|
0000008c
# hexdump -C /sys/class/pcmcia_socket/pcmcia_socket0/cis
00000000 01 01 ff 17 03 41 00 ff 20 04 92 01 10 07 21 02 |.....A.. .....!.|
00000010 02 00 15 37 07 00 53 69 65 72 72 61 20 57 69 72 |...7..Sierra Wir|
00000020 65 6c 65 73 73 00 41 43 37 31 30 2f 41 43 37 35 |eless.AC710/AC75|
00000030 30 00 47 50 52 53 20 4e 65 74 77 6f 72 6b 20 41 |0.GPRS Network A|
00000040 64 61 70 74 65 72 00 52 31 00 ff 1a 05 01 03 00 |dapter.R1.......|
00000050 07 73 1b 10 e0 01 19 78 4d 55 5d 25 a3 60 f8 03 |.s.....xMU]%.`..|
00000060 07 30 bc 86 1b 08 a1 01 08 a3 60 f8 02 07 1b 08 |.0........`.....|
00000070 a2 01 08 a3 60 e8 03 07 1b 08 a3 01 08 a3 60 e8 |....`.........`.|
00000080 02 07 1b 04 a4 01 08 23 14 00 |.......#..|
0000008a
diff says:
9,10c9,10
< 00000080 02 07 1b 04 a4 01 08 23 14 00 ff 00 |.......#....|
< 0000008c
---
> 00000080 02 07 1b 04 a4 01 08 23 14 00 |.......#..|
> 0000008a
The hexdump output for /sys/class/pcmcia_socket/pcmcia_socket0/cis
is the same as for /tmp/cis.
Btw, if I cat /tmp/cis to /syc/class/.. and back to /tmp/cis1,
the size of the file stays the same.
If I append /tmp/cis to /tmp/cis1, and cat that to /sys/class/..
and back to /tmp/cis2, the size of the file is again the same
as /tmp/cis1 (and thus double the size of /tmp/cis).
If I append /lib/firmware/SW_7xx_SER.cis to /tmp/cis and cat
that to /sys/class/.. and back to /tmp, the file is 2 bytes
short of expected again.
If I cat /lib/firmware/SW_7xx_SER.cis (140 bytes) to /sys/class/..,
/sys/class/.. to /tmp/cis (138 bytes),
/lib/firmware/SW_7xx_SER.cis to /tmp/cis2 (140 bytes),
append /tmp/cis to /tmp/cis2 (278 bytes),
cat /tmp/cis2 to /sys/class/..,
and /sys/class/.. to /tmp/cis3
then /tmp/cis3 is 138 bytes instead of 278 bytes.
I'll attach them both.
Btw, I've tried the card in the Conceptronic on a different system, but
that system crashes. I can see (via netconsole) that it assigns a serial
port, so that is good news, but it locks solid after that. Haven't
looked into the crash yet. It is dead enough to also kill sysrq. It
happened with kernel 2.6.14-rc1-mm1 and both the oldstyle and newstyle
pcmcia tools.
> > A 2 byte difference. Does that help?
> That's strange... I do not see this if I modify the CIS firmware on my
> PCMCIA card.
>
> Does anything get printed in dmesg? If you modprobe serial_cs (or is it
> loaded by default?), does something happen? Can you "talk" to the devices
> already?
This is what I see after "modprobe yenta_socket":
[42949474.120000] ACPI: PCI Interrupt 0000:00:0a.0[A] -> Link [LNKA] -> GSI 5 (level, low) -> IRQ 5
[42949474.120000] Yenta: CardBus bridge found at 0000:00:0a.0 [1106:aa01]
[42949474.260000] Yenta: ISA IRQ mask 0x0c08, PCI irq 5
[42949474.260000] Socket status: 30000410
[42949474.260000] ACPI: PCI Interrupt 0000:00:0a.1[B] -> Link [LNKB] -> GSI 12 (level, low) -> IRQ 12
[42949474.260000] Yenta: CardBus bridge found at 0000:00:0a.1 [1106:aa01]
[42949474.400000] Yenta: ISA IRQ mask 0x0c08, PCI irq 12
[42949474.400000] Socket status: 30000006
[42949498.240000] cs: memory probe 0x0c0000-0x0fffff: excluding 0xc0000-0xdffff 0xf0000-0xfffff
[42949498.240000] cs: memory probe 0x60000000-0x60ffffff: clean.
[42949498.240000] cs: memory probe 0xa0000000-0xa0ffffff: clean.
I have to "modprobe serial_cs" by hand, and that adds nothing.
Nor does the 'pcmcia-socket-startup'
I've made modules of 'serial_core' and '8250', and they get loaded
on startup and find the onboard serial port.
I can't talk to the device yet (with minicom). 'setserial' also
doesn't have any effect.
I have no clue as what to do now. I hope the hexdump info
and the attached firmware helps. Let me know if you need more info.
Thank you for all your time and effort. Very much appreciated!
Sander
--
Humilis IT Services and Solutions
http://www.humilis.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: SW_7xx_SER.cis
Type: application/octet-stream
Size: 140 bytes
Desc: not available
Url : http://lists.infradead.org/pipermail/linux-pcmcia/attachments/20050917/119d8d08/SW_7xx_SER.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cis
Type: application/octet-stream
Size: 138 bytes
Desc: not available
Url : http://lists.infradead.org/pipermail/linux-pcmcia/attachments/20050917/119d8d08/cis.obj
More information about the linux-pcmcia
mailing list