Script to find correct PCMCIA module

Under development: PCMCIA, wireless, etc.
Post Reply
Message
Author
User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

Script to find correct PCMCIA module

#1 Post by BarryK »

The 2.6 kernel has a new system for handling PCMCIA, but Puppy up until and including Puppy3 uses the old "2.4 kernel" system. The old system took care of loading the correct kernel modules.

The are two modules to be concerned about for a PCMCIA card. Firstly, there is the bridge, or interface between the PCI bus and the PCMCIA card, and these modules are easy to determine. An example is yenta_socket.ko.

Some PCMCIA cards require another specialised kernel module. For example, PCMCIA network cards. I have a Ethernet card that requires the xirc2ps_cs.ko module. It is this second group of modules that are more tricky to determine which to load.

The second group was taken care of by the older PCMCIA sytem, but in Dingo I have gone over to the new 2.6 'pcmciautils' system. All Dingo alpha releases so far only load the PCI-PCMCIA bridge driver, not the second one.

I am seriously thinking of moving to udev, which I think will make selecting and loading the second driver easy. But, I need to learn all about udev first and it won't be in Puppy 4.00. In the meantime I have written a script that hopefully succeeds in determing the appropriate driver to load. Well, it works for my card.

Do you have a PCMCIA network card? Try the attached script, let me know if it guesses right. I have only tested this script in Dingo.

The script is rather slow. I see it as a temporary solution only, but it really should be rewritten in C if I use it in Puppy 4.00.

Attached. You will need to gunzip it and set its executable attribute.
Attachments
pcmcia_drvr.gz
(547 Bytes) Downloaded 1377 times
[url]https://bkhome.org/news/[/url]

iscove
Posts: 17
Joined: Fri 30 Dec 2005, 02:49

guesses hostap_cs correctly in 3.01

#2 Post by iscove »

changing the grep line in the script to

PCMCIAALIASES="`cat /lib/modules/$KERNELVER/modules.alias | grep.......

the script correctly reports 'hostap_cs'

Billcnz
Posts: 215
Joined: Fri 30 Jun 2006, 23:07
Location: Wellington New Zealand

#3 Post by Billcnz »

I tried with my 2 pcmcia network cards:

1) DSE 10/100 Mbps PC Card (Realtek RTL-8139):
not detected by script but works in Dingo after loading 8139too module.

2) Xircom credicard Ethernet IIps:
not detected by script and still not working in Dingo after manually loading xirc2ps_cs. But automatically detected and working in 3.01 (Muppy008).

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#4 Post by BarryK »

Billcnz wrote:I tried with my 2 pcmcia network cards:

1) DSE 10/100 Mbps PC Card (Realtek RTL-8139):
not detected by script but works in Dingo after loading 8139too module.

2) Xircom credicard Ethernet IIps:
not detected by script and still not working in Dingo after manually loading xirc2ps_cs. But automatically detected and working in 3.01 (Muppy008).
Bill,
That's strange. I have the same Xircom card and the script does return xirc2ps_cs and the card works. Well, maybe not quite the same - my card is a combo:
Xircom CreditCard Ethernet+Modem II

Would you mind doing something in Dingo:
# lsmod
-- to check that yenta_socket module is loaded, if not, then:
# modprobe yenta_socket
# cat /sys/bus/pcmcia/devices/0.0/modalias

If the card is recognised, the '0.0' directory should exist. If you can return the content of 'modalias' that will enable me to work out what is going wrong in your situation.
[url]https://bkhome.org/news/[/url]

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#5 Post by BarryK »

Billcnz wrote:I tried with my 2 pcmcia network cards:

1) DSE 10/100 Mbps PC Card (Realtek RTL-8139):
not detected by script but works in Dingo after loading 8139too module.

2) Xircom credicard Ethernet IIps:
not detected by script and still not working in Dingo after manually loading xirc2ps_cs. But automatically detected and working in 3.01 (Muppy008).
Bill,
That's strange. I have the same Xircom card and the script does return xirc2ps_cs and the card works. Well, maybe not quite the same - my card is a combo:
Xircom CreditCard Ethernet+Modem II

Would you mind doing something in Dingo:
# lsmod
-- to check that yenta_socket module is loaded, if not, then:
# modprobe yenta_socket
# cat /sys/bus/pcmcia/devices/0.0/modalias

If the card is recognised, the '0.0' directory should exist. If you can return the content of 'modalias' that will enable me to work out what is going wrong in your situation.
[url]https://bkhome.org/news/[/url]

Billcnz
Posts: 215
Joined: Fri 30 Jun 2006, 23:07
Location: Wellington New Zealand

#6 Post by Billcnz »

Hi Barry,
forum access seem's a bit intermittent today.

yenta_socket was loaded but the 0.0 directory you mention was not present, there is nothing under /sys/bus/pcmcia/devices/

My Xircom card is a little different to yours as it not a combo.

If I run the command you gave on Muppy where it works I get this:
# cat /sys/bus/pcmcia/devices/0.0/modalias
pcmcia:m0105c010Bf06fn00pfn00pa2E3EE845pbBC295B13pc947D9073pd88756CDE

User avatar
pakt
Posts: 1157
Joined: Sat 04 Jun 2005, 16:54
Location: Sweden

#7 Post by pakt »

I tested these PCMCIA cards running in Dingo alpha5 in RAM:
Note: lsmod shows yenta_socket is loaded

1. Zonet ZEW1501 802.11g card (driver: rt2500): not detected

2. 3Com 3CRSHPW696 802.11b card (driver: atmel-cs): not detected

3. SanDisk ConnectPlus 802.11b CF card in PCMCIA adapter (plus 128MB RAM) (driver: ??): not detected

4. Wlinx Fast Ethernet CardBus 10/100M (driver: tulip): not detected

5. no name 802.11b card (driver: adm8211): not detected

6. Wlinx LAN + Modem 10/100M + 56K card (driver: pcnet-cs): DETECTED pcnet_cs
cat /sys/bus/pcmcia/devices/ shows 0.0 folder and modalias string

7. 3Com Megahertz 3CCFE575CT 10/100 card (driver: 3c59x): not detected

8. 3Com Megahertz 3CXFE574CT 10/100 card (driver: 3c574_cs): DETECTED 3c574_cs
cat /sys/bus/pcmcia/devices/ shows 0.0 folder and modalias string

9. Zonet Ethernet 10Mbps card (driver: ??): DETECTED pcnet_cs
cat /sys/bus/pcmcia/devices/ shows 0.0 folder and modalias string

10. Linksys PCMPC200 EtherFast 10/100 card (driver: ??): not detected
Methinks Raspberry Pi were ideal for runnin' Puppy Linux

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#8 Post by BarryK »

Pakt,
Hmmm, not a very good hit rate!

I might just have to muddle by with Puppy 4.00, and get udev working with pcmciautils for a later version.

Of course, I could just drop back to the old 'pcmcia-cs' package ...no, I don't want to do that.

I need to study the subject a bit more. It may be that there are configure options prior to compiling to tell pcmciautils to use hotplug rather than udev -- I thought that I read something about that somewhere.

Then there's the statement I read that udev supercedes hotplug, but had a read of the hotplug intro page and it gives no hint whatsoever that it is superceded. They are surging forward developing their product for 2.6 Linux.

I'm a bit of a "babe in the woods" right now with this stuff. I'm going to study it though and find my way out.
[url]https://bkhome.org/news/[/url]

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#9 Post by BarryK »

Pakt,
One point, my script only detects PCMCIA-specific drivers, that end with '_cs'. That is why your hit-rate is so low.

With the misses, if you load the correct driver in Dingo, does it work?
[url]https://bkhome.org/news/[/url]

User avatar
pakt
Posts: 1157
Joined: Sat 04 Jun 2005, 16:54
Location: Sweden

#10 Post by pakt »

Testing most of the "misses" to load the correct driver in Dingo:
(same setup as earlier)

1. Zonet ZEW1501 802.11g card (driver: rt2500): failed
Loaded the rt2500 module
'scan' finds my two wireless networks
"Unable to find a network" (or whatever the message is)
dmesg reports: "associate with AP xx timed out"

2. Tried the above card again at a later time. This time 'scan'
didn't report any AP. Ran it again and it DID report the two
APs. Chose the 'open' AP and 'Use this profile'. I got the
"Found network" message and ran "Auto DHCP". Was successful
- got a correct IP address.

3. 3Com 3CRSHPW696 802.11b card (driver: atmel-cs): failed
Same dmesg message as above BUT iwconfig wlan0 shows
correct info. ifconfig shows WRONG IP address: 169.254.209.102
Required rebooting

Note: these erroneous "169.254.xxx.xxx" addresses should be
filtered out, instead the wizard wrongly reports
"NETWORK CONFIG OF wlan0 SUCCESSFUL".

4. Wlinx Fast Ethernet CardBus 10/100M (driver: tulip): WORKS!

5. 3Com Megahertz 3CCFE575CT 10/100 card (driver: 3c59x): ??
The 3c59x module is NOT listed in the "Select module" list.

6. Linksys PCMPC200 EtherFast 10/100 card (driver: ??): ??
Tried 'tulip' module first as info from net seemed to suggest
this. New interface was detected BUT configuring it resulted
in IP address 169.254.123.18 (erroneous "169.254.xxx.xxx"
IP address again).

Ran the 'Auto-probe' function ('Select module' ->
'More' menu. This turned out to be rather awkward to use as
after every test I was returned to the main menu and had to
click 'Select module' -> 'More' again to run the next test.
Result: no module found to work.
Methinks Raspberry Pi were ideal for runnin' Puppy Linux

wakiwan17
Posts: 5
Joined: Sat 12 Jan 2008, 12:02

#11 Post by wakiwan17 »

hey guys.. sorry i may be a bit off topic but i'm about to get a Xircom RE-100 PCMCIA Type III Network PC Card

http://www.netcomdirect.com/xire10pctyii.html

can i use the xirc2ps_cs driver on this? I'm using Puppy Linux 3.01 btw.. :) thanks for any help in advance :)

compaq54
Posts: 1
Joined: Sun 29 Jun 2008, 17:40
Location: Bognor Regis England

PCMCIA Surprise and confusion

#12 Post by compaq54 »

This is my first post so let me know how it can be improved.
OS Puppy 4, Dingo. Full Install on HD,WiFi card Netgear WG511, nothing happens when installed in Compaq Presario 2100 laptop, like it is completely dead. Same OS, same WiFi card, very very old unbranded K6 laptop plugged in, found by OS installed in seconds by taking defaults and works with WEP. Time spent on Compaq about 2 days, time spent on K6 10 minutes. My sense is a problem with the cardbus controller, #O2 Micro, Inc. CardBus/SmartCardBus Controller but I am not sure how to proceed. On the working K6 the driver for the WiFi card is The Prism54 and the cardbus controller is a TI PCI1131.
I use an Apple macbook as my main computer and am happy in Terminal, so Consol was not too much of a shock. A pointer to my next step would be great and also a brief explanation as to the thinking behind the suggestion.
Great programme and it has given me fun trying to make it work.

Kind regards
Robin

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#13 Post by BarryK »

The script I posted at start of this thread is now of historical interest only.

Puppy 4.1 handles PCMCIA properly using the 2.6 mechanism (not pcmcia_cs package). Well, it may need some tweaking -- 4.1alpha3 is just about to be released for that purpose.

So, consider this thread ended.
[url]https://bkhome.org/news/[/url]

Post Reply