Yenta Socket work with 32-bit card but not 16-bit
David Clark
dlclark at chtech.com
Thu Feb 15 13:18:20 EST 2007
I see the following lines in my dmesg output.
"cs: memory probe 0x80000000-0xfcffffff"
" excluding 0x80000000-0xfcffffff"
I may be way off track here and pleasae tell me if so. From looking at
the source code in "rsrc_nonstatic.c" I gather that the first time the
socket comes up, the kernel probes (do_mem_probe()) the PCI memory space
to find a suitable memory region which can be allocated to the PCMCIA
cards.
In my case 0x80000000-0xfcffffff is the entire memory range available to
the host PCI bridge. Not all of this memory range is allocated to the
various PCI devices, so why then does the memory probe not find any
available resources?
Is this potentially related to my problem? Again I'm trying my best to
understand how this all works.
Thanks,
David
******** /proc/iomem ********
~ # cat /proc/iomem
80000000-fcffffff : PCI host bridge
80000000-803fffff : PCI CardBus #02
bf8ff000-bfcfefff : PCI CardBus #02
bfcff000-bfcfffff : 0000:00:14.0
bfcff000-bfcfffff : yenta_socket
bfd00000-bfdfffff : PCI Bus #01
bfe00000-bfefffff : PCI Bus #01
bfff7c00-bfff7fff : 0000:00:12.0
bfff7c00-bfff7fff : tulip
bfff8000-bfffffff : 0000:00:10.0
fc004500-fc004507 : serial
~ #
******** lspci -vvv ********
~ # lspci -vvv
00:00.0 Host bridge: Motorola MPC8245 [Unity] (rev 14)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Step
ping- SERR- FastB2B-
Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort-
<MAbort+ >SERR- <PERR-
Latency: 64, Cache Line Size 08
Interrupt: pin A routed to IRQ 0
Region 0: Memory at <unassigned> (32-bit, prefetchable)
Region 2: Memory at <unassigned> (32-bit, prefetchable)
00:10.0 I2O: Anchor Chips Inc. AN3042Q CO-MEM Lite (rev 02) (prog-if 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Step
ping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort
- <MAbort- >SERR- <PERR-
Latency: 128, Cache Line Size 08
Interrupt: pin ? routed to IRQ 20
Region 0: Memory at 00000000bfff8000 (32-bit, non-prefetchable)
[size=32
K]
Region 1: I/O ports at bffff8 [size=8]
00:12.0 Ethernet controller: Digital Equipment Corporation DECchip
21142/43 (rev
41)
Subsystem: Unknown device 0400:0001
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Step
ping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort
- <MAbort- >SERR- <PERR-
Latency: 128 (5000ns min, 10000ns max), Cache Line Size 08
Interrupt: pin A routed to IRQ 16
Region 0: I/O ports at bfff00 [size=128]
Region 1: Memory at 00000000bfff7c00 (32-bit, non-prefetchable)
[size=1K
]
Expansion ROM at 00000000dfbc0000 [disabled] [size=256K]
00:13.0 PCI bridge: Texas Instruments PCI2250 PCI-to-PCI Bridge (rev 02)
(prog-i
f 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Step
ping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort
- <MAbort- >SERR- <PERR-
Latency: 128, Cache Line Size 08
Bus: primary=00, secondary=01, subordinate=01, sec-latency=128
I/O behind bridge: 00bfe000-00bfefff
Memory behind bridge: bfe00000-bfefffff
Prefetchable memory behind bridge: bfd00000-bfdfffff
Secondary status: 66Mhz- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort
- <MAbort+ <SERR- <PERR-
BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B-
Capabilities: [dc] Power Management version 1
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot
-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00:14.0 CardBus bridge: Texas Instruments PCI1620 PC Card Controller
(rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Step
ping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort
- <MAbort- >SERR- <PERR-
Latency: 168, Cache Line Size 08
Interrupt: pin A routed to IRQ 19
Region 0: Memory at 00000000bfcff000 (32-bit, non-prefetchable)
[size=4K
]
Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
Memory window 0: bf8ff000-bfcfe000 (prefetchable)
Memory window 1: 80000000-803ff000
I/O window 0: 00000000-000001ff
I/O window 1: 00000400-000005ff
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt+
PostWrite+
16-bit legacy interface ports at 0001
00:14.2 System peripheral: Texas Instruments PCI1620 Firmware Loading
Function (
rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Step
ping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort
- <MAbort- >SERR- <PERR-
Latency: 128 (1750ns min, 1000ns max), Cache Line Size 08
Interrupt: pin ? routed to IRQ 19
Region 0: I/O ports at bf9fc0 [size=64]
Capabilities: [44] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot
-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
More information about the linux-pcmcia
mailing list