TI1450 can't identify cards

Dan Christian Daniel.A.Christian at NASA.gov
Wed Sep 24 15:32:22 BST 2003


I've posted the same info to the sourceforge pcmcia-cs "Development 
issues" forum, but I that doesn't seem to be widely read.

I can't get a TI-PCI1450 based card (NI PXI-8221 cPCI adapter) to 
properly recognise cards (aironet 350 (16bit?), AmbiCom ethernet 
(32bit?), or Xircom ethernet/serial (32bit)).  The system is a single 
P-III @700Mhz with 512Mb.

The cards are either incorrectly identified or no information is 
available at all.  If I don't include memory 0xc0000-0xfffff in 
config.opts, then cardctl can't tell anything about the card.  This is 
weird because lspci doesn't show the card having a memory window there 
(see below).  It seems like the information from the 0xc0000 window is 
bogus.

It also seems to exclude large portions of the memory window that the 
card does occupy:
cs: memory probe 0xf2000000-0xfbfff000: excluding 0xf29fe000-0xf33fbfff
0xf3dfa000-0xf51f5fff 0xf5bf4000-0xf65f1fff 0xf6ff0000-0xf83ebfff
0xf8dea000-0xfa1e5fff 0xfabe4000-0xfb5e1fff 0xfbfe0000-0xfc9ddfff

I've tried both 2.4.22 and 2.6.0-test5 with utils from pcmcia-cs-3.1.31.  
I was able to apply Jean Tourrilhes' debug patch, and Pavel Roskin's 
"safer" irq patch (to 2.6).  Nothing has worked right at any time.  
Other cards in the system seem to work OK.

Any ideas?

Does the IRQ issues that people are working on have anything to do with 
not identifying the card at all?

I'm not on the list, so please CC me.
-Dan

My IO and memory in config.opts looks like this:
include memory 0xe8000000-0xf1fff000
include port 0x2400-0x24ff, port 0x2000-0x20ff
include memory 0xf2000000-0xfbfff000
include port 0x2c00-0x2cff, port 0x2800-0x28ff

lspci shows the card like this:
02:0f.0 CardBus bridge: Texas Instruments PCI1450 (rev 03)
Flags: bus master, medium devsel, latency 168, IRQ 5
Memory at e4002000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=02, secondary=05, subordinate=05, sec-latency=176
Memory window 0: ed000000-f1fff000 (prefetchable)
Memory window 1: e8000000-ecfff000
I/O window 0: 00002400-000024ff
I/O window 1: 00002000-000020ff
16-bit legacy interface ports at 0001

02:0f.1 CardBus bridge: Texas Instruments PCI1450 (rev 03)
Flags: bus master, medium devsel, latency 168, IRQ 9
Memory at e4003000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=02, secondary=05, subordinate=05, sec-latency=176
Memory window 0: f7000000-fbfff000 (prefetchable)
Memory window 1: f2000000-f6fff000
I/O window 0: 00002c00-00002cff
I/O window 1: 00002800-000028ff
16-bit legacy interface ports at 0001

Here are the debug messages:
On yenta_socket load/cardmgr startup:
Linux Kernel Card Services 3.1.22
  options:  [pci] [cardbus]
cs.c 1.279 2001/10/13 00:08:28 (David Hinds)
PCI: Enabling device 0000:02:0f.0 (0004 -> 0006)
PCI: Assigned IRQ 5 for device 0000:02:0f.0
IRQ routing conflict for 0000:01:00.0, have irq 11, want irq 5
Yenta: CardBus bridge found at 0000:02:0f.0 [0000:0000]
Yenta: Enabling burst memory read transactions
Yenta: Using CSCINT to route CSC interrupts to PCI
Yenta: Routing CardBus interrupts to PCI
Yenta: ISA IRQ list 0000, PCI irq5
Socket status: 30000006
cs: pcmcia_register_socket(0xd08551c0)
PCI: Enabling device 0000:02:0f.1 (0004 -> 0006)
PCI: Assigned IRQ 9 for device 0000:02:0f.1
IRQ routing conflict for 0000:00:09.0, have irq 10, want irq 9
PCI: Sharing IRQ 9 with 0000:00:0a.0
Yenta: CardBus bridge found at 0000:02:0f.1 [0000:0000]
Yenta: Using CSCINT to route CSC interrupts to PCI
Yenta: Routing CardBus interrupts to PCI
Yenta: ISA IRQ list 0000, PCI irq9
Socket status: 30000006
cs: pcmcia_register_socket(0xd08551c0)
PCI: Enabling device 0000:02:0f.1 (0004 -> 0006)
PCI: Assigned IRQ 9 for device 0000:02:0f.1
IRQ routing conflict for 0000:00:09.0, have irq 10, want irq 9
PCI: Sharing IRQ 9 with 0000:00:0a.0
Yenta: CardBus bridge found at 0000:02:0f.1 [0000:0000]
Yenta: Using CSCINT to route CSC interrupts to PCI
Yenta: Routing CardBus interrupts to PCI
Yenta: ISA IRQ list 0000, PCI irq9
Socket status: 30000006
cs: pcmcia_register_socket(0xd08551c0)
cs: bind_device(): client 0xcf52fa60, sock 0xcfa2d430, dev Driver 
Services
cs: register_client(): client 0xcf52fa60, sock 0xcfa2d430, dev Driver 
Services
cs: bind_device(): client 0xcf52f9a0, sock 0xcfa2d830, dev Driver 
Services
cs: register_client(): client 0xcf52f9a0, sock 0xcfa2d830, dev Driver 
Services
ds_open(socket 0)
ds_open(socket 1)
ds_open(socket 2)
ds_open(socket 2)
cs: IO port probe 0x2000-0x20ff: clean.
cs: IO port probe 0x2400-0x24ff: clean.
cs: IO port probe 0x2800-0x28ff: clean.
cs: IO port probe 0x2c00-0x2cff: clean.

On card insert:
cs: send_event(sock 0, event 4, pri 0)
ds: ds_event(0x000004, 0, 0xcf52fa60)
cs: memory probe 0xf2000000-0xfbfff000: excluding 0xf29fe000-0xf33fbfff
0xf3dfa000-0xf51f5fff 0xf5bf4000-0xf65f1fff 0xf6ff0000-0xf83ebfff
0xf8dea000-0xfa1e5fff 0xfabe4000-0xfb5e1fff 0xfbfe0000-0xfc9ddfff
cs: unable to map card memory!
cs: unable to map card memory!
cs: setup_regions(0xcf52fa60, 0, 0xcfa2d51c)
cs: unable to map card memory!
cs: unable to map card memory!
cs: setup_regions(0xcf52fa60, 1, 0xcfa2d520)
cs: unable to map card memory!
cs: unable to map card memory!

On eject:
ds_open(socket 0)
ds_open(socket 1)
ds_open(socket 2)
cs: unable to map card memory!
cs: unable to map card memory!
cs: unable to map card memory!
cs: unable to map card memory!
cs: unable to map card memory!
cs: unable to map card memory!
ds_release(socket 0)
ds_release(socket 1)
cs: send_event(sock 0, event 8, pri 1)
ds: ds_event(0x000008, 1, 0xcf52fa60)
cs: shutdown_socket(cfa2d430)



More information about the linux-pcmcia mailing list