Larry, I don't think that sprom_do_read is able to read _ANY_ valid data 
because 
if I do it today it results it

r...@openwrt:/# insmod ssb
ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x02, vendor 0x4243)
ssb: Core 1 found: IEEE 802.11 (cc 0x812, rev 0x04, vendor 0x4243)
ssb: Core 2 found: PCMCIA (cc 0x80D, rev 0x01, vendor 0x4243)
ssb: Core 3 found: V90 (cc 0x807, rev 0x01, vendor 0x4243)
ssb: Core 4 found: PCI (cc 0x804, rev 0x07, vendor 0x4243)
ssb: Core 5 found: IEEE 802.11 (cc 0x812, rev 0x04, vendor 0x4243)
ssb: Ignoring additional 802.11 core
ssb: WARNING: Invalid SPROM CRC (corrupt SPROM)
ssb: Unsupported SPROM revision 155 detected. Will extract v1
ssb: Sonics Silicon Backplane found on PCI device 0000:00:01.0
r...@openwrt:/#

reading the byte 155 (0x9b). I cannot find this byte in the SPROM which is
014000000400141425430080020002000010001800000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D002C3A8E7F
FFFFFFFFFFFFFFFFFFFFFFFFFFFF2130B01198FB4FFE88030B0B3C000000000000003E000F00FF
FF000000000000000001EF

this was read out using x86 ALIX board and the same WLAN device.
If I try to get SPROM on IPX4XX machine, I get:

r...@openwrt:/# cat /sys/devices/pci0000\:00/0000\:00\:01.0/ssb_sprom
Bad mode in data abort handler detected
Internal error: Oops - bad mode: 0 [#1]
Modules linked in: ssb [last unloaded: ssb]
CPU: 0    Not tainted  (2.6.28.10 #10)
PC is at 0xffff01fc
LR is at ssb_attr_sprom_show+0x7c/0x124 [ssb]
pc : [<ffff01fc>]    lr : [<bf010704>]    psr: a0000092
sp : c3a79e5c  ip : 00000001  fp : c3a79ecc
r10: c026e1e4  r9 : 00000000  r8 : 0000ffff
r7 : c3a9e6c8  r6 : c3a9a000  r5 : 00000065  r4 : 00000000
r3 : c48dd0c8  r2 : c3a79ea4  r1 : 00000001  r0 : d0c80000
Flags: NzCv  IRQs off  FIQs on  Mode IRQ_32  ISA ARM  Segment user
Control: 000039ff  Table: 03a18000  DAC: 00000015
Process cat (pid: 1466, stack limit = 0xc3a78260)
Stack: (0xc3a79e5c to 0xc3a7a000)
9e40:                                                                d0c80000
9e60: 00000001 c3a79ea4 c48dd0c8 00000000 00000065 c3a9a000 c3a9e6c8 0000ffff
9e80: 00000000 c026e1e4 c3a79ecc 00000001 c3a79e5c bf010704 ffff01fc a0000092
9ea0: ffffffff c3a79eb0 c3a9a000 000000dc bf010850 c3a9e600 c3a9a01c c30f4000
9ec0: c3a79ef8 c3a79ed0 bf010704 bf01085c c30f4000 fffffffb c3a11e24 00000fff
9ee0: c0267420 c3af18f4 c3a79f80 c3a79f0c c3a79efc bf010cc4 bf010694 bf016678
9f00: c3a79f24 c3a79f10 c012e43c bf010ca0 c3af18e0 c38118c0 c3a79f5c c3a79f28
9f20: c00c7548 c012e420 00000003 00001000 bea6ddb0 c3a758e0 00001000 bea6ddb0
9f40: c3a79f80 c0021f84 c3a78000 00000001 c3a79f7c c3a79f60 c008ac1c c00c74b0
9f60: c3a758e0 00000000 00000000 00000003 c3a79fa4 c3a79f80 c008af0c c008ab78
9f80: 00000000 00000000 00000000 00001000 4009c614 bea6ddb0 00000000 c3a79fa8
9fa0: c0021de0 c008aecc 00001000 4009c614 00000003 bea6ddb0 00001000 00074b70
9fc0: 00001000 4009c614 bea6ddb0 00000003 00000000 00000001 00000001 00000003
9fe0: 40052660 bea6dd94 0000db54 40052668 20000010 00000003 00000000 00000000
Backtrace:
[<bf010850>] (sprom_do_read+0x0/0xf0 [ssb]) from [<bf010704>] 
(ssb_attr_sprom_show+0x7c/0x124 [ssb])
[<bf010688>] (ssb_attr_sprom_show+0x0/0x124 [ssb]) from [<bf010cc4>] 
(ssb_pci_attr_sprom_show+0x30/0x40 [ssb])
[<bf010c94>] (ssb_pci_attr_sprom_show+0x0/0x40 [ssb]) from [<c012e43c>] 
(dev_attr_show+0x28/0x54)
  r4:bf016678
[<c012e414>] (dev_attr_show+0x0/0x54) from [<c00c7548>] 
(sysfs_read_file+0xa4/0x138)
  r5:c38118c0 r4:c3af18e0
[<c00c74a4>] (sysfs_read_file+0x0/0x138) from [<c008ac1c>] (vfs_read+0xb0/0xfc)
[<c008ab6c>] (vfs_read+0x0/0xfc) from [<c008af0c>] (sys_read+0x4c/0x84)
  r7:00000003 r6:00000000 r5:00000000 r4:c3a758e0
[<c008aec0>] (sys_read+0x0/0x84) from [<c0021de0>] (ret_fast_syscall+0x0/0x2c)
  r6:bea6ddb0 r5:4009c614 r4:00001000
Code: 00000000 00000000 00000000 00000000 (00000000)
---[ end trace b2171b3eec29f300 ]---
Segmentation fault
r...@openwrt:/#

Daniel

Larry Finger wrote:
> Daniel Schmitt wrote:
>> Hello Group,
>>
>> I posted a few days ago my problems with this WLAN minipci card:
>>
>> Linux OpenWrt 2.6.28.10 #5 Thu Sep 10 20:36:33 CEST 2009 armv5teb unknown
>> 00:02.0 0280: 14e4:4325 (rev 02)
>>           Subsystem: 1414:0004
>>           Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr+
>> Stepping- SERR+ FastB2B- DisINTx-
>>           Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- 
>> <TAbort-
>> <MAbort- >SERR- <PERR- INTx-
>>           Interrupt: pin A routed to IRQ 27
>>           Region 0: Memory at 48020000 (32-bit, non-prefetchable) [disabled]
>> [size=8K]
>>
>> If I use them (2 pieces) in a WP188 from compex, I don't get ssb.ko running. 
>> Here is the dmesg if I try to load ssb.ko and b43legacy.ko
>> PCI: enabling device 0000:00:02.0 (0140 -> 0142)
>> ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x02, vendor 0x4243)
>> ssb: Core 1 found: IEEE 802.11 (cc 0x812, rev 0x04, vendor 0x4243)
>> ssb: Core 2 found: PCMCIA (cc 0x80D, rev 0x01, vendor 0x4243)
>> ssb: Core 3 found: V90 (cc 0x807, rev 0x01, vendor 0x4243)
>> ssb: Core 4 found: PCI (cc 0x804, rev 0x07, vendor 0x4243)
>> ssb: Core 5 found: IEEE 802.11 (cc 0x812, rev 0x04, vendor 0x4243)
>> ssb: Ignoring additional 802.11 core
>> ssb: WARNING: Invalid SPROM CRC (corrupt SPROM)
>> ssb: SPROM revision 251 detected.
>> ssb: Unsupported SPROM revision 251 detected. Will extract v1
> 
> Despite this error, the program is almost doing the right thing. I do
> not understand why this happens. There will be a patch coming that
> forces the correct extraction.
> 
>> Even the SPROM is readable on the SSB:
>> r...@openwrt:/# cat /sys/devices/pci0000:00/0000:00:0c.0/ssb_sprom
>> 014000000400141425430080020002000010001800000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
>> FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D00713A0DF9
>> FFFFFFFFFFFFFFFFFFFFFFFFFFFF2130B01198FB4FFE88030B0B3C000000000000003E000F00FF
>                                         ==
> This byte is what it is selecting as the version. The nibble offset is
> 195-196 instead of 253-254.
> 
>> FF0000000000000000014D
> 
> Larry
> 
> 

_______________________________________________
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to