[RULE] Summary of PCMCIA problems in Red Hat

C David Rigby cdrigby at 9online.fr
Tue Jun 1 14:52:02 EEST 2004


Well, installing RH9 via slinky-v0.3.96 did not make much difference for 
the problematic machine, which I neglected to mention before is a 
Presario 1080 (codename futura).  It still uses i82365 under this 
variant, just as it does under Debian.  Since everyone is getting to 
read me thinking out loud, we can continue the exercise.  I now conclude 
that the line of output from lspci -vvb on futura:

 > 0000:00:13.0 PCMCIA bridge: Cirrus Logic CL 6729 (rev ee)

indicates a PCI-to-ISA bridge, and this controller is actually ISA 
connected and uses the i82365 driver.  The line from the output of lspci 
-vvb on Marco's computer:

 > 00:03.0 CardBus Bridge: Texas Instrument PCI1130 (rev 04)

indicates an actual PCI-to-Cardbus bridge, and presumably will indeed 
use the yenta_socket driver.

I have done a little more investigating by installing RH9 on the 
aforementioned blackbox using slinky-v0.3.96.  The relevant output if 
lspci -vvb is:

00:02.0 CardBus bridge: Texas Instruments PCI1130 (rev 04)
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- 
Stepping-
SERR- FastB2B-
         Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium 
 >TAbort- <TAbort- <MAb
ort- >SERR- <PERR-
         Latency: 168, cache line size 08
         Interrupt: pin A routed to IRQ 255
         Region 0: Memory at 10811000 (32-bit, non-prefetchable)
         Bus: primary=00, secondary=01, subordinate=03, sec-latency=176
         BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- 
PostWrite-
         16-bit legacy interface ports at 0001

00:02.1 CardBus bridge: Texas Instruments PCI1130 (rev 04)
         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
ParErr- Stepping-
SERR- FastB2B-
         Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium 
 >TAbort- <TAbort- <MAb
ort- >SERR- <PERR-
         Latency: 168, cache line size 08
         Interrupt: pin B routed to IRQ 255
         Region 0: Memory at 10810000 (32-bit, non-prefetchable)
         Bus: primary=00, secondary=04, subordinate=06, sec-latency=176
         BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- 
PostWrite-
         16-bit legacy interface ports at 0001

Compare this to the same result on Marco's NEC:

00:03.0 CardBus Bridge: Texas Instrument PCI1130 (rev 04)
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: 0
Interrupt: pin A routed to IRQ 255
Region 0: Memory at 10000000 (32-bit, non prefetchable)
Bus: primary=00, secondary=01, subordinate=04, sec-latency=0
I/O window 0: 00000000-00000003
I/O window 1: 00000000-00000003
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- PostWrite-
16-bit legacy interface ports at 0001

00:03.1 CardBus Bridge: Texas Instrument PCI1130 (rev 04)
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: 0
Interrupt: pin B routed to IRQ 255
Region 0: Memory at 10001000 (32-bit, non prefetchable)
Bus: primary=00, secondary=05, subordinate=08, sec-latency=0
I/O window 0: 00000000-00000003
I/O window 1: 00000000-00000003
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- PostWrite-
16-bit legacy interface ports at 000


In other words, we are running exactly the same controller chip, just 
connected a bit differently.  So, the good news is, if we can get FC2 on 
his notebook, then the fix I outlined earlier for my Thinkpad will 
probably work for his NEC.  The bad news is, that when I attempt those 
commands under RedHat 9 with the default 2.4.20-8 kernel that is 
installed by slinky, those commands DO NOT WORK:

modprobe pcmcia_core             # works ok - lsmod shows it installed

modprobe yenta_socket            # Nope!

/lib/modules/2.4.20-8/kernel/drivers/pcmcia/yenta_socket.o: init_module: 
No such devic
e
/lib/modules/2.4.20-8/kernel/drivers/pcmcia/yenta_socket.o: insmod 
/lib/modules/2.4.20
-8/kernel/drivers/pcmcia/yenta_socket.o failed
/lib/modules/2.4.20-8/kernel/drivers/pcmcia/yenta_socket.o: insmod 
yenta_socket failed
Hint: insmod errors can be caused by incorrect module parameters, 
including invalid IO
  or IRQ parameters.
       You may find more information in syslog or the output from dmesg

modprobe yenta_socket pci=biosirq  # This is the part that works under
                                    # kernel 2.6.5-1.358 from FC2 - but
                                    # not here!

Warning: ignoring pci=biosirq, no such parameter in this module
/lib/modules/2.4.20-8/kernel/drivers/pcmcia/yenta_socket.o: init_module: 
No such devic
e
/lib/modules/2.4.20-8/kernel/drivers/pcmcia/yenta_socket.o: insmod 
/lib/modules/2.4.20
-8/kernel/drivers/pcmcia/yenta_socket.o failed
/lib/modules/2.4.20-8/kernel/drivers/pcmcia/yenta_socket.o: insmod 
yenta_socket failed
Hint: insmod errors can be caused by incorrect module parameters, 
including invalid IO
  or IRQ parameters.
       You may find more information in syslog or the output from dmesg

In particular, note how we get the "Warning: ignoring pci=biosirq..." 
message.  Not the same as for FC2.

So, some more thought and experimentation will be needed.  I'll report 
back when I have done some.

CDR
C David Rigby wrote:
> Hi Marco,
> 
>     This note has a subtitle of "what has not worked so far," but it may 
> be useful in understanding the issues involved.  If others besides Marco 
> are interested in the issue, then read on!
> 
> Marco, I am assuming that
> 
> modprobe pcmcia_core
> modprobe yenta_socket
> modprobe yenta_socket pci=biosirq
> modprobe ds
> 
> does not work for you.  This is how I got my Thinkpad 765L (codename 
> blackbox) to function, as previously indicated in another message.
> 
> I fired up the notebook computer I have that previously caused me so 
> much grief with respect to configuring the i82365.  When I issue the 
> command
> 
> lspci -vvb
> 
> the relevant results for the pcmcia controller are:
> 
> 0000:00:13.0 PCMCIA bridge: Cirrus Logic CL 6729 (rev ee)
>         Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping+ SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Interrupt: pin A routed to IRQ 255
>         Region 0: I/O ports at fcfc
> 
> Note the difference in the format of the output, compared to the result 
> you got (see Marco's original below).  The last line is of interest for 
> getting the driver to hande the controller properly in my case.  Now, 
> admittedly, I am running Debian testing on this machine, but I think 
> (hope) that the output from the command should follow the same format. 
> To get the CL 6729 controller recognized, the command I need to use is
> 
> modprobe i82365 i365_base=0xfcfc
> 
> This assumes that module pcmcia_core is already loaded.  If it is not, I 
> have to first issue
> 
> modprobe pcmcia_core
> 
> It seems that your controller hardware is a bit different.  In my case, 
> there is a I/O port at 0xfcfc.  In your case, the controller seems to be 
> memory-mapped?
> 
> The crux of the matter may be that my Debian testing system is using 
> David Hind's pcmcia-cs package.  I believe that RH9 uses the in-kernel 
> pcmcia support.  As the i82365 man page indicates, the i82365 drivers 
> are significantly different: in-kernel i82365 is for ISA bus only; 
> yenta_socket for PCI.  DH's external pcmcia-cs uses the same i82365 for 
> both ISA & PCI.  Since my notebook previously ran an older version of 
> Slackware, which is where I figured this stuff out, I conclude that 
> Slackware also uses pcmcia-cs.  Indeed, a quick check with my Slackware 
> 9-based firewall/router notebook shows that pcmcia-cs-3.2.4-i386-1 is 
> installed.
> 
> So, I suspect that you can either install pcmcia-cs (which is not part 
> of RH9 - you will indeed have to download and compile source, or grab it 
> from a compatible distribution) or we will have to figure out what it 
> takes to get yenta_socket working for you.  To that end, I am going to 
> RULE-install RH9 on my pesky notebook (I left some space on the drive 
> for RULE/slinky testing, but I need to preserve the existing Debian 
> system if possible) and see if I can get yenta_socket to work there.  If 
> I do, it may provide the clues we need to get it functioning for you also.
> 
> Tune in next time!  {8->
> 
> CDR
> 
> M. Fioretti wrote:
> 
>> Hello,
>>
>> this is a summary of all the info I gatered about what is not working
>> in my laptop with Red Hat 9. Including lspci output as David
>> requested. What's happening is that I can't even hang the PC with
>> PCMCIA cards because it doesn't activate (as far as I understand) the
>> cardbus bridge chip.
>>
>> NEC VERSA 6030x laptop with the TI PCI1130 cardbus bridge which
>> doesn't work.According to what I've found online it requires the
>> i82365 module, and works with "just a regular 2.4 kernel and pcmcia-cs
>> 3.2.5 (to detect pcmcia card insertion)" according to the author of
>> http://patter.mine.nu/thinkpad.html). The same guy also wrote me to
>> use:
>>
>> "Relevant kernel config options, add in support for whichever pcmcia
>> cards you have, I've used:
>>
>> CONFIG_HOTPLUG=y
>> CONFIG_PCMCIA=m
>> CONFIG_CARDBUS=y
>> CONFIG_I82365=y
>> "
>>
>> Even this page: http://www.dei.unipd.it/~am23/comp/fujitsu555T.html
>> confirms that that bridge works under Linux, and gives details about
>> modules used (i82365) IRQ (11) and a working /etc/pcmcia/config.opts.
>>
>> The relevant output of lspci -vvb on Red Hat 9 is:
>> ####################################################################
>> 00:03.0 CardBus Bridge: Texas Instrument PCI1130 (rev 04)
>> 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: 0
>> Interrupt: pin A routed to IRQ 255
>> Region 0: Memory at 10000000 (32-bit, non prefetchable)
>> Bus: primary=00, secondary=01, subordinate=04, sec-latency=0
>> I/O window 0: 00000000-00000003
>> I/O window 1: 00000000-00000003
>> BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- PostWrite-
>> 16-bit legacy interface ports at 0001
>>
>> 00:03.1 CardBus Bridge: Texas Instrument PCI1130 (rev 04)
>> 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: 0
>> Interrupt: pin B routed to IRQ 255
>> Region 0: Memory at 10001000 (32-bit, non prefetchable)
>> Bus: primary=00, secondary=05, subordinate=08, sec-latency=0
>> I/O window 0: 00000000-00000003
>> I/O window 1: 00000000-00000003
>> BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- PostWrite-
>> 16-bit legacy interface ports at 0001
>> ####################################################################
>>
> 
> 
> _______________________________________________
> Original home page of the RULE project: www.rule-project.org
> Original Rule Development Site http://savannah.gnu.org/projects/rule/> 
Original RULE mailing list: Rule-list at nongnu.org, hosted at http://mail.nongnu.org/mailman/listinfo/rule-list
> http://lists.nongnu.org/mailman/listinfo/rule-list
> 


_______________________________________________
Original home page of the RULE project: www.rule-project.org
Original Rule Development Site http://savannah.gnu.org/projects/rule/
Original RULE mailing list: Rule-list at nongnu.org, hosted at http://mail.nongnu.org/mailman/listinfo/rule-list
http://lists.nongnu.org/mailman/listinfo/rule-list



This full static mirror of the Run Up to Date Linux Everywhere Project mailing list, originally hosted at http://lists.hellug.gr/mailman/listinfo/rule-list, is kept online by Free Software popularizer, researcher and trainer Marco Fioretti. To know how you can support this archive, and Marco's work in general, please click here