rule-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RULE] Summary of PCMCIA problems in Red Hat


From: C David Rigby
Subject: Re: [RULE] Summary of PCMCIA problems in Red Hat
Date: Tue, 01 Jun 2004 13:52:02 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040413 Debian/1.6-5

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
####################################################################



_______________________________________________
Rule Project HOME PAGE:  http://www.rule-project.org/en/
Rule Development Site:   http://savannah.gnu.org/projects/rule/
address@hidden
http://lists.nongnu.org/mailman/listinfo/rule-list





reply via email to

[Prev in Thread] Current Thread [Next in Thread]