Bug 42750 - pcmcia fails after upgrade from RH 7.0 to 7.1
pcmcia fails after upgrade from RH 7.0 to 7.1
Status: CLOSED WONTFIX
Product: Red Hat Linux
Classification: Retired
Component: kernel-pcmcia-cs (Show other bugs)
7.1
i686 Linux
medium Severity medium
: ---
: ---
Assigned To: Dave Jones
Brock Organ
:
Depends On:
Blocks: 78333
  Show dependency treegraph
 
Reported: 2001-05-29 17:06 EDT by Eric Smith
Modified: 2015-01-04 17:01 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2004-11-25 02:19:24 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
lspci -vvv output before yenta_socket is loaded (4.01 KB, text/plain)
2001-06-14 14:18 EDT, Eric Smith
no flags Details
lspci -vvv after yenta_socket is loaded, before card is inserted (4.28 KB, text/plain)
2001-06-14 14:20 EDT, Eric Smith
no flags Details
lspci -vvv after cardbus ethernet card inserted (same output for other cards) (97 bytes, text/plain)
2001-06-14 14:21 EDT, Eric Smith
no flags Details
lspci made on siemens-nixdorf (1.39 KB, text/plain)
2001-07-14 15:11 EDT, Dr. Tilmann Bubeck
no flags Details

  None (edit)
Description Eric Smith 2001-05-29 17:06:43 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.76 (Windows; U; Nt4.0; en-us)

Description of problem:
On my IBM ThinkPad 240 type 2609-31U, I had PCMCIA working fine with Red
Hat 7.0.  I routinely use an Adaptec 1480 SCSI card and a Linksys PCMPC200
Ethernet card, both of which are Cardbus, and both of which worked
perfectly with Red Hat 7.0.  I also had good luck with several 16-bit
cards, including a modem and an IDE drive interface.

When I tried to install Red Hat 7.1, I was surprised to find that the
PCMCIA boot floppy (and driver floppy) didn't recognize either card.  I
ended up copying RH 7.1 ISO images to the hard disk under 7.0, and
installing from them.

Unfortunately, while the RH 7.1 upgrade fixed several other things that I'd
formerly had problems with, now my PCMCIA cards don't work at all.

If I boot with PCMCIA disabled, then do a "service start pcmcia" with NO
cards inserted, I get these messages:

Starting PCMCIA services: modules/lib/modules/2.4.2-2/pcmcia/i82365.o:
init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including
invalid IO or IRQ parameters
/lib/modules/2.4.2-2/pcmcia/ds.o: init_module: Operation not permittedHint:
insmod errors can be caused by incorrect module parameters, including
invalid IO or IRQ parameters

/var/log/messages says:

May 29 12:38:06 zorac kernel: Linux PCMCIA Card Services 3.1.22
May 29 12:38:06 zorac kernel:   options:  [pci] [cardbus] [pm]
May 29 12:38:07 zorac kernel: Intel PCIC probe: not found.
May 29 12:38:07 zorac kernel: ds: no socket drivers loaded!
May 29 12:38:07 zorac cardmgr[6959]: starting, version is 3.1.22
May 29 12:38:07 zorac cardmgr[6959]: no pcmcia driver in /proc/devices
May 29 12:38:07 zorac cardmgr[6959]: exiting

My /etc/pcmcia contains:

PCMCIA=yes
PCIC=i82365
PCIC_opts=
CORE_opts="unreset_delay=400"  # for IDE drives

I'm baffled because it worked under RH 6.1, 6.2, and 7.0 with no
special effort on my part, other than adding the "unreset_delay=400" for
the IDE drive interface.




How reproducible:
Always

Steps to Reproduce:

1.  Boot RH 7.1 PCMCIA boot on IBM ThinkPad 240, and insert PCMCIA driver
disk when asked.
2.  Adaptec 1480 card and Linksys PCMPC200 card are not recognized. 
Probably no other cards recognized either, but I only tried those two.

Alternate steps to reproduce:

1.  Install RH 7.0 on IBM ThinkPad 240
2.  Copy RH 7.1 ISO images to hard disk, and upgrade using them.
3.  i82365 module won't load.


Additional info:
Comment 1 Arjan van de Ven 2001-05-29 17:10:45 EDT
Could you try the following sequence (after starting without pcmcia)

modprobe yenta_socket
modprobe ds
modprobe aic7xxx_mod
service pcmcia start
 
and see if that works ?
Comment 2 Eric Smith 2001-05-29 17:37:39 EDT
The ThinkPad 240 type 2609-31U uses a Texas Instruments PCI1211 cardbus bridge,
as PCI bus 0 device 10 function 0.  It is being assigned interrupt 11. 
Interrupt 11 is also being used by the USB controller (Intel 82371AB PIIX4 rev
1) and the Lucent WinModem.  I'm not trying to use the WinModem at all, and I
have no USB devices plugged in when the problem occurs.

I don't have any reason to believe that those interrupt assignments have
changed since when I was successfully using PCMCIA with Red Hat 7.0.

I changed the BIOS settings so that the Cardbus bridge was by itself on
interrupt 11, and the USB and WinModem are on interrupt 15.  (Apparently
there's no way to get the USB and WinModem on separate interrupts.)
Unfortunately I get the same behavior, so I suspect that this isn't an
interrupt problem.
Comment 3 Arjan van de Ven 2001-05-29 17:49:09 EDT
Did the sequence I mentioned work ? I've seen cases where the wrong 
module (i82365.o) was loaded instead of yenta_socket.o
Esp during upgrades when the relevant config-file was hand-edited before.
Comment 4 Eric Smith 2001-05-29 17:56:37 EDT
I hadn't yet seen your suggestion when I wrote about the interrupts.

I don't have the Adaptec card here at work today, unfortunately. I do have the
Linksys card, which is a tulip-based card. I'm not sure which PCMCIA module I
should modprobe for it. Anyhow, when I "modprobe yenta_socket", I get:

May 29 14:51:19 zorac kernel: Linux PCMCIA Card Services 3.1.22
May 29 14:51:19 zorac kernel: options: [pci] [cardbus] [pm]
May 29 14:51:19 zorac kernel: PCI: Found IRQ 11 for device 00:0a.0
May 29 14:51:19 zorac kernel: Yenta IRQ list 0698, PCI irq11
May 29 14:51:19 zorac kernel: Socket status: 30000020

Then when I "modprobe ds", I get

May 29 14:51:28 zorac kernel: cs: cb_alloc(bus 0): vendor 0x8086, device 0x7192
May 29 14:51:28 zorac kernel: PCI: Failed to allocate resource 0 for PCI device
8086:7192
May 29 14:51:28 zorac /etc/hotplug/pci.agent: ... no drivers for PCI slot

This looks bad. Has it failed at this point, or is there another driver I
should modprobe at this point?

Thanks!
Eric
Comment 5 Arjan van de Ven 2001-05-30 04:05:14 EDT
Hmm. "Failed to allocate resource".
Would it be possible to attach the output of
"lspci -vvv" to this bug ?
Comment 6 Eric Smith 2001-06-01 15:53:46 EDT
Interesting.  After I modprobe yenta_socket and ds, lspci -vvv reports:

pcilib: Cannot open /proc/bus/pci/00/0c.0
lspci: Unable to read 64 bytes of configuration space.

% ls -l /proc/bus/pci
dr-xr-xr-x    2 root    root            0 Jun  1 12:44 00
dr-xr-xr-x    2 root    root            0 Jun  1 12:44 00
-r--r--r--    1 root    root            0 Jun  1 12:44 devices

Wow, two entries with the same name, "00".  Could this be the problem?  Is
mod_yenta trying to map the Cardbus as PCI bus 00 even though the machine's
built-in PCI is bus 00?

% ls -l /proc/bus/pci/00
-rw-r--r--    1 root    root            0 Jun  1 12:48 00.0

Of course, with two entries with the same name, I can only ls one of them.

After rebooting but before any PCMCIA stuff:

% ls -l /proc/bus/pci
dr-xr-xr-x    2 root    root            0 Jun  1 12:52 00
-r--r--r--    1 root    root            0 Jun  1 12:52 devices

% ls /proc/bus/pci/00
00.0  07.0  07.1  07.2  07.3  09.0  0a.0  0b.0  0c.0


At this point, lspci -vvv spews a lot of output.  If you need it, I'll have
to find my floppy drive, since I can't use the network.



Comment 7 Arjan van de Ven 2001-06-05 05:09:57 EDT
2 busses with the same number is really not good.

could you then give me "lspci" output ?
(I mostly care about the items with "bridge" or "cardbus" in it)
Comment 8 Eric Smith 2001-06-14 14:18:41 EDT
Created attachment 21084 [details]
lspci -vvv output before yenta_socket is loaded
Comment 9 Eric Smith 2001-06-14 14:20:06 EDT
Created attachment 21085 [details]
lspci -vvv after yenta_socket is loaded, before card is inserted
Comment 10 Eric Smith 2001-06-14 14:21:08 EDT
Created attachment 21086 [details]
lspci -vvv after cardbus ethernet card inserted (same output for other cards)
Comment 11 Arjan van de Ven 2001-06-14 14:32:10 EDT
Could you check for a biosupgrade, probably at 
http://www.pc.ibm.com/qtechinfo/DSHY-42DLNW.html?lang=en_US&page=brand&brand=IBM+ThinkPad&doctype=Downloadable+files&subtype=Cat

?
Version  1.05 and later have a fix for
- (Fix) (Windows 2000 Beta 3) Cannot access CardBus cards. 

and I would not be surprised if their bugfix for the bios also fixes the 
double resource they assign...
Comment 12 Eric Smith 2001-06-14 14:41:39 EDT
I'm reluctant to do that, because the last time I upgraded the BIOS it broke the
Alt-F1 key (which still does not work).  But I needed the upgrade to make APM
work.  (They had tried to fix a bug where Alt-F1 sometimes behaved as Fn-F1,
apparently by disabling Alt-F1 entirely.  IBM must leave BIOS maintenance to
their junior engineers.)

Oh well, I'll give it a try.  I guess at this point a BIOS bug seems more likely
than a Linux bug, since apparently no one else is having this problem.

I'll report back later.

Thanks,
Eric


Comment 13 Eric Smith 2001-06-14 17:15:19 EDT
I've upgraded from BIOS version IRET72WW to IRET75WW, which is the latest
BIOS available for the ThinkPad 240, dated 17-May-2001.  The release notes for
73 through 75 do not say anything about cardbus.

The behavior is not improved or changed in any noticable way.

Remember, the PCMCIA and Cardbus were working PERFECTLY with Red Hat 7.0,
with no special effort on my part.  It is only with Red Hat 7.1 that they
do not work.  In fact, I just booted the RH 7.0 PCMCIA install floppy, and
verified that it can see my network using the Cardbus ethernet card.  But
the RH 7.1 PCMCIA install floppy can't even find my cards.

Conclusion:  it apparently IS a Linux problem, not a BIOS problem.
Comment 14 josip 2001-07-13 21:47:05 EDT
I've got a similar problem on an IBM i1460 laptop.  The NetGear FA510C pcmcia
card's I/O port settings are not detected correctly:

PCI: Failed to allocate resource 0 for PCI device 1011:0019

Command 'lspci -vvv' reveals that I/O port base for this card is OK, but there
is no size.  When I do 'cat /proc/pci' I see what one should expect EXCEPT for
the line 'I/O at 0x1000 [0xfff].'  The fact that the port range ends before
starting address strongly suggests that the I/O port size is not properly
identified by PCI.
Comment 15 Dr. Tilmann Bubeck 2001-07-14 15:09:43 EDT
I have the exact same problem as eric stated in his first bug report. I'm 
using a siemens-nixdorf machine which worked fine under RH 7.0 but did not 
work under RH 7.1.

I get the same error messages as eric wrote. But I have a unmodified 
/etc/sysconfig/pcmcia with:
PCMCIA=yes
PCIC=i82365
PCIC_OPTS=
CORE_OPTS=

Maybe a kernel problem because of linux 2.4?

As an attachment you find lspci -vv

If you want me to try out some things or send additional info, then please let 
me know.
Comment 16 Dr. Tilmann Bubeck 2001-07-14 15:11:49 EDT
Created attachment 23607 [details]
lspci made on siemens-nixdorf
Comment 17 Dr. Tilmann Bubeck 2001-07-14 15:27:29 EDT
I solved my problem!

The bug #34301 shows a similar problem with a solution and entering 
PCIC_OPTS='i365_base=0xfcfc' solved all my problems and my pcmcia network card 
(3c589) is working!
Comment 18 josip 2001-07-22 17:59:50 EDT
The "PCIC=i82365" idea does not fix my problem, and "lspci -v" does not return 
the information needed to pick the correct i365_base.  Moreover, in RH7.1 
(kernel 2.4.3-12) the attempt to use i82365 is ignored/changed to yenta_socket 
by /etc/rc.d/init.d/pcmcia.

My IBM i1460 laptop is still stuck without a working network connection.  
Although the FA510C cardbus card is seen, its I/O size is incorrectly 
identified (it is not a positive size), and consequently the driver module 
(tulip) refuses to load.
Comment 19 cold forged 2001-08-12 15:50:11 EDT
I'm having the same problems on a siemens nixdorf scenic mobile 300. 
What i get after lspci -vvv is similar to the attachment lspci made on siemens-nixdorf, but the i/o port line reads :
Region 0: I/O ports at fcec [disabled] [size=4]

The notebook is setup in the BIOS to 
- plug and play aware OS = yes
- PCMCIA card = PC

in the file /etc/sysconfig/pcmcia i have :
PCMCIA='yes'
PCIC=i82365
PCIC_OPTS='i365_base=0xfcec wakeup=1'


Comment 20 josip 2001-11-04 20:45:40 EST
The latest Red Hat 7.2 release did NOT resolve this problem. My IBM i1460 laptop
is still stuck without a working network connection. Although the FA510C cardbus
card is seen, its I/O size is incorrectly identified (it is not a positive
size), and consequently the driver module (tulip) refuses to load.
Comment 21 jalar 2001-11-05 04:02:09 EST
I also lost pcmcia when upgrading to 7.1 from 7.0. But the recommended change to use PCIC=yenta_socket solved my problem.

Strangely, when booting I also got "please use pci=biosirq", it seems that the kernel couldn't assign an irq to the pci bus associated with the pcmcia (cardbus?). It does work anyway, but I have added append="pci=biosirq" in lilo.conf. No more error message.
Comment 22 josip 2002-05-03 22:35:47 EDT
Upgrading to kernel 2.4.9-31 finally helped my IBM i1460: the NetGear FA510C 
PCMCIA card can be seen, but only after being ejected and reinserted.  It is 
not started properly on bootup, but only after eject/reinsert.  Annoying... any 
suggestions?
Comment 23 adam 2002-10-29 18:13:40 EST
I'm getting pretty much the same behavior on my Thinkpad 240, trying to get a
3ccfe575ct (it's a 3c59x card) to work -- lspci returns normal looking output
until I insert the card, at which point I get told:

pcilib: Cannot open /proc/bus/pci/00/0c.0
lspci: Unable to read 64 bytes of configuration space.

and see two '00' entries in /proc/bus/pci.

Any workarounds or suggestions?

Note You need to log in before you can comment on or make changes to this bug.