[Airo-linux-general] airo_cs and IO Ports on the PPC
Status: Inactive
Brought to you by:
breed
From: Jim R. <row...@ac...> - 2003-05-16 02:22:15
|
Hello, I'm working with some custom PPC-based hardware. I'm using a Ricoh Cardbus-PCI bridge with a Cisco 350 PC Card. I get a kernel Oops when the Cisco card is being configured via an IO Port. The driver is trying to write to address 0x100 - which is the first entry in the port range given in /etc/pcmcia/config.opts. Since the PPC doesn't implement IO Ports, I was expecting the 0x100 to be translated to a virtual address somewhere before it was used to access the client card. Should it be using ioports at all? I've noticed that if I take all 'include port 0x100...." statements out of /etc/pcmcia/config.opts then there is no ioport allocated in /proc/ioports. Will the driver use IO Memory instead if this happens? If I need to use IO Ports, then how do I fix this incorrect address so that I stop getting the memory access violations? This occured when the card was being configured. The call trace goes: airo_config -> init_airo_card() -> setup_card() -> issuecommand() -> sendcommand() -> OUT4500() -> outw() -> out_le16() -> __asm__ __volatile__("sthbrx %1,0,%2; eieio" : "=m" (*addr) : "r" (val), "r" (addr)) My /proc/ioports: # cat /proc/ioports 00000100-0000013f : airo_cs b0000000-b00fffff : PCI host bridge b00f7fd0-b00fbfcf : PCI CardBus #02 b00fbfd0-b00fffcf : PCI CardBus #01 b00fffd0-b00fffdf : CMD Technology Inc PCI0680 b00fffe4-b00fffe7 : CMD Technology Inc PCI0680 b00fffe8-b00fffef : CMD Technology Inc PCI0680 b00ffff4-b00ffff7 : CMD Technology Inc PCI0680 b00ffff8-b00fffff : CMD Technology Inc PCI0680 # cat /proc/iomem 80000000-803fffff : PCI host bridge 80000000-80000fff : Ricoh Co Ltd RL5c476 II (#2) 80080000-800fffff : PCI CardBus #01 80100000-8017ffff : PCI CardBus #01 80180000-801fffff : PCI CardBus #02 80200000-8027ffff : PCI CardBus #02 803f6000-803f6fff : Ricoh Co Ltd RL5c476 II 803f7f00-803f7fff : CMD Technology Inc PCI0680 803f8000-803fbfff : Texas Instruments TSB12LV26 IEEE-1394 Controller (Link) 803ff800-803fffff : Texas Instruments TSB12LV26 IEEE-1394 Controller (Link) a0000000-a0000fff : card services c9000f00-c9000f07 : ide0 c9000f08-c9000f0f : ide1 c9000f10-c9000f17 : ide0 c9000f18-c9000f1f : ide1 # Any help would be much appreciated. -- Jim Rowe Advanced CounterMeasure Systems Phone: (916)669-4304 |