Use this page to discuss PCMCIA driver development. Appropriate topics could include suggesting patches, or requests for new features; discussion of changes in beta versions of the PCMCIA package; and PCMCIA programming questions and discussion of driver internals. Beta releases of the PCMCIA drivers are kept here.

Messages Inline: 0 1

Sad Trouble with Cirrus ctlr & multiple PCI busses

Date: 1999, Oct 30
From: Dave Tuttle Dave_T

It looks like I am going to have to dive into the source code, but perhaps someone can help. I have an 'industrial PC' system based on a Force CPCI-730 processor board in a CompactPCI backplane. My PCMCIA slot (not CardBus) is via a Ramix PMC230 mezzanine card with a Cirrus PD6729 controller. There is a middling-complicated bus structure, such that the Cirrus chip is behind a DEC PCI Bridge.

For reasons unknown, everything appears to work except for card recognition. The system cannot read the CIS for any card that I insert, in spite of getting the insertion signal. The Ramix people suggested that I have to reprogram the PCI bus bridge to create a memory window (to something, for somewhere) to access the CIS. Is there something else I am missing?

The processor is a Pentium Pro Mobile (low power) at 333 MHz, with a system bus at 100 MHz, 128MB of SDRAM with ECC. The PCI busses all run at 33 MHz. Here is a listing of the PCI structure, from /proc/pci:

PCI devices found:
  Bus  0, device   0, function  0:
    Host bridge: Intel 440BX - 82443BX Host (no AGP) (rev 3).
      Medium devsel.  Master Capable.  Latency=64.  
      Prefetchable 32 bit memory at 0xfe800000 [0xfe800008].
  Bus  0, device   7, function  0:
    ISA bridge: Intel 82371AB PIIX4 ISA (rev 2).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  No bursts.  
  Bus  0, device   7, function  1:
    IDE interface: Intel 82371AB PIIX4 IDE (rev 1).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  Latency=64.  
      I/O at 0xfcd0 [0xfcd1].
  Bus  0, device   7, function  2:
    USB Controller: Intel 82371AB PIIX4 USB (rev 1).
      Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master Capable.  Latency=64.  
      I/O at 0xfce0 [0xfce1].
  Bus  0, device   7, function  3:
    Bridge: Intel 82371AB PIIX4 ACPI (rev 2).
      Medium devsel.  Fast back-to-back capable.  
  Bus  0, device   8, function  0:
    Ethernet controller: DEC DC21142 (rev 65).
      Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master Capable.  Latency=165.  Min Gnt=20.Max Lat=40.
      I/O at 0xfc00 [0xfc01].
      Non-prefetchable 32 bit memory at 0xfedffc00 [0xfedffc00].
  Bus  3, device   4, function  0:
    Ethernet controller: DEC DC21142 (rev 65).
      Medium devsel.  Fast back-to-back capable.  IRQ 9.  Master Capable.  Latency=165.  Min Gnt=20.Max Lat=40.
      I/O at 0xdc00 [0xdc01].
      Non-prefetchable 32 bit memory at 0xfcdff800 [0xfcdff800].
  Bus  3, device   5, function  0:
    Ethernet controller: DEC DC21142 (rev 65).
      Medium devsel.  Fast back-to-back capable.  IRQ 9.  Master Capable.  Latency=165.  Min Gnt=20.Max Lat=40.
      I/O at 0xd880 [0xd881].
      Non-prefetchable 32 bit memory at 0xfcdff400 [0xfcdff400].
  Bus  3, device   6, function  0:
    Ethernet controller: DEC DC21142 (rev 65).
      Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master Capable.  Latency=165.  Min Gnt=20.Max Lat=40.
      I/O at 0xd800 [0xd801].
      Non-prefetchable 32 bit memory at 0xfcdff000 [0xfcdff000].
  Bus  3, device   7, function  0:
    Ethernet controller: DEC DC21142 (rev 65).
      Medium devsel.  Fast back-to-back capable.  IRQ 5.  Master Capable.  Latency=165.  Min Gnt=20.Max Lat=40.
      I/O at 0xd480 [0xd481].
      Non-prefetchable 32 bit memory at 0xfcdfec00 [0xfcdfec00].
  Bus  0, device   9, function  0:
    PCI bridge: DEC DC21150 (rev 3).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  Latency=99.  Min Gnt=12.
  Bus  0, device  10, function  0:
    PCI bridge: DEC DC21150 (rev 3).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  Latency=64.  Min Gnt=4.
  Bus  1, device  12, function  0:
    PCMCIA bridge: Cirrus Logic CL 6729 (rev 7).
      Slow devsel.  IRQ 5.  
      I/O at 0xecfc [0xecfd].
  Bus  1, device  13, function  0:
    VGA compatible controller: Chips & Technologies Unknown device (rev 100).
      Vendor id=102c. Device id=c0.
      Medium devsel.  Fast back-to-back capable.  IRQ 9.  
      Non-prefetchable 32 bit memory at 0xfd000000 [0xfd000000].
  Bus  2, device  13, function  0:
    PCI bridge: DEC DC21152 (rev 3).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  Latency=64.  Min Gnt=4.
  Bus  2, device  14, function  0:
    Bridge: Tundra Unknown device (rev 2).
      Vendor id=10e3. Device id=860.
      Medium devsel.  Fast back-to-back capable.  IRQ 9.  Master Capable.  Latency=64.  
      Non-prefetchable 32 bit memory at 0xfcffe000 [0xfcffe000].
      Non-prefetchable 32 bit memory at 0xfcf00000 [0xfcf00000].

> --------------

I have tried this on RedHat Linux 5.2 with Pcmcia 3.0.9, on RedHat Linux 6.0 with 3.0.9, and on RedHat 6.1 with both 3.0.9 and 3.1.3. Nothing works. Here is the typical system log, the last entry following insertion of a SanDisk SDP3B FlashDisk ATA card:

 Linux PCMCIA Card Services 3.1.3
   kernel build: 2.2.12-20 #1 Mon Sep 27 10:40:35 EDT 1999
   options:  [pci] [cardbus] [apm] [pnp]
 PnP: PNP BIOS installation structure at 0xc00f7170
 PnP: PNP BIOS version 1.0, entry at f0000:a317, dseg at 400
 PCI routing table version 1.0 at 0xfded0
 Intel PCIC probe: 
   Cirrus PD6729 PCI-to-PCMCIA at bus 1 slot 12, port 0xecfc, 2 sockets
     host opts [0]: [ring] [6/16/2] [6/36/2]
     host opts [1]: [ring] [6/16/2] [6/36/2]
     ISA irqs (default) = 11 polling interval = 1000 ms
 cs: IO port probe 0x1100-0x17ff: clean.
 cs: IO port probe 0x0110-0x04ff: excluding 0x158-0x15f 0x290-0x297 0x378-0x37f
 cs: IO port probe 0x0a00-0x0aff: clean.
 memory_cs: mem0: anonymous: unknown size

/etc/sysconfig/pcmcia:

 PCMCIA=yes
 PCIC="i82365"
 PCIC_OPTS="cycle_time=10 fast_pci=1 cmd_time=16 setup_time=6 recov_time=2 poll_interval=100 irq_list=11,12"
 CORE_OPTS="cis_speed=350 probe_mem=0"
 CARDMGR_OPTS=
 SCHEME=

/etc/pcmcia/config.opts:

 #
 # Local PCMCIA Configuration File
 #
 # System resources available for PCMCIA devices
 #
 include port 0x110-0x4ff, port 0x1100-0x17ff
 include memory 0xc8000-0xcffff
 include memory 0xa0000000-0xa0ffffff
 #include memory 0x60000000-0x60ffffff
 #
 # Extra port range for IBM Token Ring
 #
 include port 0xa00-0xaff
 #
 # Resources we should not use, even if they appear to be available
 #
 # First built-in serial port
 exclude irq 4
 # Second built-in serial port
 exclude irq 3
 # First built-in parallel port
 exclude irq 7

> ----------

Dave Tuttle, NorthStar Internetworking

Note I think you're right about the bridge being the issue

Re: Sad Trouble with Cirrus ctlr & multiple PCI busses (Dave Tuttle)
Date: 1999, Nov 02
From: David Hinds <dhinds@pcmcia.sourceforge.org>

A PCI bus bridge will normally have a set of registers that describe apertures of IO and memory space for use by devices on the far side of the bridge. Bus accesses that fall inside one of these apertures are forwarded to the other side of the bridge.

Your BIOS was smart enough to probe beyond the bridge, see the PD6729, and enable access to its IO registers... but the BIOS cannot know how to configure the PCI bridge to accommodate cards attached to the PD6729. So, pick a memory window to reserve for PCMCIA devices, program the bus bridge to match this window, and set up /etc/pcmcia/config.opts to use the same window. You will also probably need to set up or adjust the bridge's IO windows, and set appropriate IO port ranges in /etc/pcmcia/config.opts.

You'll need to get a datasheet for whichever bridge the PD6729 is attached to.

-- Dave

Agree Thanks for the reply; "Have doc, will travail"

Re: Note I think you're right about the bridge being the issue (David Hinds)
Date: 1999, Nov 02
From: Dave Tuttle Dave_T

It took a little bit of searching to find the DEC DC21150 datasheet, because DEC sold that semiconductor line to Intel a while back. I do have it, though, so now I need to find where in Linux or in the PCMCIA support to put the setup logic. In my system there is usually a VGA controller as well as the PD6729 on the downstream side of the bridge in question, so I will have to accomodate both needs at the same time.

 -- Dave Tuttle

None It doesn't need to be fancy...

Re: Agree Thanks for the reply; "Have doc, will travail" (Dave Tuttle)
Date: 1999, Nov 02
From: David Hinds <dhinds@pcmcia.sourceforge.org>

You might be able to get away with just using the "setpci" utility
(part of the pciutils package) to set some PCI registers from a shell
script at system startup time.  Not elegant, but since a general
solution to the problem would be quite difficult, this seems as good a
kludge as any.

-- Dave

Question Are pcmcia clients in the kernel supported?

Date: 1999, Nov 05
From: Bas Vermeulen TallGuy

I've been using kernel 2.3.18 on my laptop, with the pcnet_cs and a custom driver compiled into the kernel. This worked very well (no more need for modules), until I upgraded to 2.3.25, where the cardmgr couldn't find the correct driver any more.
I upgraded the cardmgr to 3.1.3 (I was using 3.0.7 for 2.3.18), and it still wouldn't work.

So my question is this: Is it officially supported to compile pcmcia client drivers into the kernel? (If it is, it ain't working at the moment, at least not for me).

Regards,

Bas Vermeulen

None The kernel PCMCIA system is incomplete and experimental

Re: Question Are pcmcia clients in the kernel supported? (Bas Vermeulen)
Date: 1999, Nov 05
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The status of the PCMCIA support in the 2.3 kernel tree is pretty much
that you are on your own for now.  It is very much experimental and a
work in progress.  If you are not sure you know what you are doing and
why you need the in-kernel PCMCIA support, and willing/able to track
down problems on your own, you are better off ignoring it completely.
It will be some time before it is well integrated with the rest of the
PCMCIA toolset.

I can't be sure what your specific problem is without knowing more: it
might help to say exactly what cardmgr's complaint was, or to compare
the system log traces from the working setup with the new setup.  You
also say you're using a custom driver: it is hard for me to speculate
about what problems there could be in code that I've never seen.  The
kernel Makefile/configfile stuff is "tricky" and my first guess would
be that your driver has not actually been linked into the kernel.

-- Dave

Feedback Bugfix for debugging code

Date: 1999, Nov 14
From: Steve Bonds sbonds

While trying to debug a PCMCIA installation problem, I discovered that several of the PCMCIA modules were segfaulting when pc_debug=<number> was used. I went through the code and discovered that in many modules (i82365.c, tcic.c, others) there is the following declaration:

static int pc_debug = PCMCIA_DEBUG;
followed by:
MODULE_PARM(pc_debug, "i");
which tries to change the value of the static variable. This causes segfaults.

I'm currently using version 3.0.14, though I have checked and the bug appears to still be present in version 3.1.4.

None I don't think that's the problem

Re: Feedback Bugfix for debugging code (Steve Bonds)
Date: 1999, Nov 15
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I think you're confusing "const" with "static".  Static variables have
file scope but are writable.  You'll notice that I generally declare
all module parameters as static, not just pc_debug.  And this does
work.

If you really get a segfault (i.e., you run "insmod ... pc_debug=#"
and get a core dump, not a kernel trap), then my guess would be that
the problem is in your modutils.  I don't have any problems with this
with the 2.1.121 modutils.

-- Dave

None Wierd...

Re: None I don't think that's the problem (David Hinds)
Date: 1999, Nov 20
From: Steve Bonds sbonds

That's pretty bizzare, then. Switching away from static cleared the segfaults right up. I didn't actually find a core file generated, but I got the familiar "segmentation fault" message and the module would not load.

I'm also using modutils 2.1.121.

Question Accessing mapped memory of a cardbus pc-card

Date: 1999, Nov 19
From: Patrick Osterloh p_osterloh

Hi folks!

I wondered if there is an other possibiliy of accessing
the mapped memory of a cardbus pc-card than writing/reading
to/from the device node (e.g /dev/cbmem0s1). The reason
for my question: I developed a CardBus PC Card that
implements a 32 MByte memory. When I write a 32-bit data
word to the device node (/dev/cbmem0s1), the data appears 
on the CardBus in two consecutive 16-bit memory transfers.
I´m not sure, wether the socket controller (TI 1131) or 
file handling in the operating system is responsible for
splitting one 32-bit transfer into two 16-bit transfers.
I´d like to write the 32-bit data directly into the 
mapped memory of my CardBus card, but I actually don´t
know how to manage it. I already tried something like

extern volatile u_int *mem_start = 0xa0000000;
*memstart = 0x12345678;

but without succes, since the second line produces a
segmentation fault.

Perhaps someone of you out there has a solution for this
problem? 

Regards

Patrick

None The memory_cb driver is not very bright

Re: Question Accessing mapped memory of a cardbus pc-card (Patrick Osterloh)
Date: 1999, Nov 19
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The memory_cb driver has some dumb code for reading and writing, that
doesn't give control over the bus transfer sizes.  For memory regions,
it does in fact do 16-bit transfers, because I used a helper function
that was written with the 16-bit PCMCIA interface in mind.

You cannot do things like this:

> extern volatile u_int *mem_start = 0xa0000000;
> *memstart = 0x12345678;

because the card's memory is not mapped into your virtual address
space.  It should be possible to extend the memory_cb driver to allow
this (with a mmap call), but I'm not really clear on how to do that.

Anyway, I will modify the memory_cb driver to use 32-bit transfers
whenever possible.  The change will be in the next beta drivers.

-- Dave

Warning cardmgr.c Patch - Linux 2.2.14pre9 patch to /usr/src/linux/include/scsi/scsi.h adds spinlocks

Date: 1999, Nov 27
From: Todd A. Wood tawman

Built a 2.2.14pre9 kernel and had problems compiling pcmcia-cs-3.0.14. Then I grabbed pcmcia-cs-3.1.4 and had the same problem.

This problem did not exist with 2.2.14pre8.

make[1]: Entering directory `/usr/local/src/pcmcia-cs-3.1.4/cardmgr'
cc  -MD -O -Wall -Wstrict-prototypes -pipe -I../include -I/usr/src/linux/include -I../modules -I/usr/X11R6/include -I/usr/X11/include -I/usr/X11R6/include/X11 -c cardmgr.c
In file included from cardmgr.c:201:
/usr/src/linux/include/scsi/scsi.h:21: parse error before `scsi_malloc_lock'
/usr/src/linux/include/scsi/scsi.h:21: warning: data definition has no type or storage class
make[1]: *** [cardmgr.o] Error 1

I took a look at scsi/scsi.h and some other files in the kernel 2.2.14pre9 patch which had spinlocks added. The end result is to modify cardmgr.c and include the proper spinlocks.h file for the kernel version.

Apply the following patch to cardmgr and it will compile with 2.2.14pre9:

# diff -urN cardmgr/cardmgr.c.orig cardmgr/cardmgr.c
--- cardmgr/cardmgr.c.orig	Tue Nov  9 00:37:34 1999
+++ cardmgr/cardmgr.c	Sat Nov 27 23:49:12 1999
@@ -198,8 +198,13 @@
 #ifdef __linux__

 #include 
-#include 
 #define VERSION(v,p,s) (((v)<<16)+(p<<8)+s)
+#if LINUX_VERSION_CODE >= VERSION(2,3,18)
+#include 
+#elif LINUX_VERSION_CODE >= VERSION(2,1,95)
+#include 
+#endif /* version >= 2.1.95 */
+#include 
 #if (LINUX_VERSION_CODE < VERSION(2,1,126))
 #define SCSI_DISK0_MAJOR SCSI_DISK_MAJOR
 #endif

None This is really a bug in the header, not in PCMCIA

Re: Warning cardmgr.c Patch - Linux 2.2.14pre9 patch to /usr/src/linux/include/scsi/scsi.h adds spinlocks (Todd A. Wood)
Date: 1999, Nov 29
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The problem is that <scsi/scsi.h>, which is needed by both user and
kernel code, was changed to depend on an internal kernel header file.
I will send an email to Alan Cox about it.

-- Dave

Warning Cardmgr compilation problem under 2.0.38 kernel with pcmcia-cs-3.1.6

Date: 1999, Dec 11
From: Stephane COLIN bigbob

I've just checked to switch from v3.1.4 to v3.1.6 and since, the compilation doesn't finish properly.

Here is the error in the cardmgr directory :

make[1]: Entering directory `/usr/src/pcmcia-cs-3.1.6/cardmgr' cc -O -pipe -I../include -I/usr/src/linux/include -I../modules -I/usr/X11R6/include -I/usr/X11/include -I/usr/X11R6/include/X11 -c lex_config.c lex_config.l: In function `do_source': lex_config.l:190: `GLOB_NOMAGIC' undeclared (first use this function) lex_config.l:190: (Each undeclared identifier is reported only once lex_config.l:190: for each function it appears in.) make[1]: *** [lex_config.o] Error 1 make[1]: Leaving directory `/usr/src/pcmcia-cs-3.1.6/cardmgr' make: *** [all] Error 2

Some idea ???

PS : I use kernel 2.0.38 ...

Thanks in advance ...

None My mistake, it's a glibc thing

Re: Warning Cardmgr compilation problem under 2.0.38 kernel with pcmcia-cs-3.1.6 (Stephane COLIN)
Date: 1999, Dec 12
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Oops, looks like I inadvertently included a glibc dependency.

I'll find another way to do that that doesn't rely on GLOB_NOMAGIC.

-- Dave

Feedback How i can fix the compilation problem of cardmgr under libc5+2.0.38

Re: Warning Cardmgr compilation problem under 2.0.38 kernel with pcmcia-cs-3.1.6 (Stephane COLIN)
Date: 1999, Dec 12
From: Stephane COLIN bigbob

just same as the Title ... :-)

Feedback Temporary tips ...

Re: Warning Cardmgr compilation problem under 2.0.38 kernel with pcmcia-cs-3.1.6 (Stephane COLIN)
Date: 1999, Dec 12
From: Stephane COLIN bigbob

I'm not a coder so i have decided to copy the lex_config.c from the pcmcia-cs-3.1.4 to continue the compilation ...

Question Does the tcic.o module support multiple cards/controllers?

Date: 1999, Dec 15
From: Dan dan

Hi,

I noticed that the i82365 module supports multiple controllers with the extra_sockets(?) option.

Does the tcic module support more than one card/controller? Upon quick perusal of the sources, there didn't seem to be an equivalent option.

Maybe this is just a module-loading/linux issue... Any tips are appreciated.

Lastly, has anyone had any luck using two different controller types in the same machine? (e.g. tcic and i82365, both? - don't ask...)

thanks,

danno

None Not directly, but there's a workaround

Re: Question Does the tcic.o module support multiple cards/controllers? (Dan)
Date: 1999, Dec 15
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The tcic module only supports one controller.  It would not be too
hard to modify the driver to handle more than one, but there was never
any call for it.

Actually, as a quick hack which should work, you could just load two
copies of the tcic module with different values for tcic_base, like:

    insmod -o tcic1 tcic.o tcic_base=0x240
    insmod -o tcic2 tcic.o tcic_base=0x270

Loading both the tcic and i82365 modules should also work fine.  The
rest of the PCMCIA system should handle multiple socket drivers with
no problems.

-- Dave

Question Difference between pcmcia-cs and RedHat's kernel-pcmcia-cs??

Date: 1999, Dec 26
From: Scott Petrack scott.petrack

I need to start looking at the pcmcia sources in order to solve a problem I posted elsewhere. I am running RedHat 6.1. The first thing I notice is that David Hind's package is called pcmcia-cs, and what I have installed seems to be kernel-pcmcia-cs:

[root@scott /tmp]# rpm -qa | grep pcmcia

kernel-pcmcia-cs-2.2.12-20

I'm about to go get the source from RedHat, but perhaps you could save me some trouble by telling me how I use your code on a RedHat system? Is it as simple as uninstalling the RedHat kernel-pcmcia-cs package and then compiling/installing the pcmcia-cs package?

The only reason I'm doing this is

a) to get some debug information about why my system won't recognize my modem card. The kernel-pcmcia-cs drivers seem to be compiled with no debug info.

b) to fix the problem if I can. I assume that the RedHat release doesn't use the latest sources.

Thanks

None No difference

Re: Question Difference between pcmcia-cs and RedHat's kernel-pcmcia-cs?? (Scott Petrack)
Date: 1999, Dec 27
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Red Hat just bundles pcmcia-cs in their kernel RPM.  I think it is
mentioned in the HOWTO.

-- Dave

Question Problems with compiling cs-3.1.9 under K 2.3.38

Date: 2000, Jan 09
From: Stefan Kapfhammer StefanKapfhammer

Hello everyone,

I have problems compiling pcmcia-cs 3.1.8/9 with Kernel 2.3.38 (no problems with K 2.2.14). I disabled all static in-kernel pcmcia features (see below .config) but tried also with enabled serial_cb, tulip_cb, cardbus. Everytime it results in stopping the compile process. What did I wrong?

Every help is welcome.

Regards,

Stefan

--------------- Hard-/software profile ----------------

Toshiba Tecra 8000 - 256 MB RAM - ToPIC97 enabled - Xircom RBEM56G-100BTX Tecra Bios: 8.20

SuSE Linux 6.3 - gcc 2.95.2 - make 3.78.1 - glibc 2.1.2 - modutils 2.3.7

    -------- Linux PCMCIA Configuration Script --------

The default responses for each question are correct for most users. Consult the PCMCIA-HOWTO for additional info about each option.

Linux source directory [/usr/src/linux]:

The kernel source tree is version 2.3.38. The current kernel build date is Sun Jan 9 15:20:42 2000.

Alternate target install directory []:
  Module install directory [/lib/modules/2.3.38]:
Build 'trusting' versions of card utilities (y/n) [n]:
Include 32-bit (CardBus) card support (y/n) [y]:
Include PnP BIOS resource checking (y/n) [n]:

The PCMCIA drivers need to be compiled to match the kernel they will be used with, or some or all of the modules may fail to load. If you are not sure what to do, please consult the PCMCIA-HOWTO.

How would you like to set kernel-specific options?
    1 - Read from the currently running kernel
    2 - Read from the Linux source tree
Enter option (1-2) [2]:

Kernel configuration options:
    Static in-kernel PCMCIA support is disabled.
    Symmetric multiprocessing support is disabled.
    PCI BIOS support is enabled.
    Advanced Power Management (APM) support is enabled.
    SCSI support is disabled.
    Networking support is enabled.
     Radio network interface support is disabled.
     Token Ring device support is disabled.
     Fast switching is disabled.
    Module version checking is disabled.
    /proc filesystem support is enabled.

It looks like you have a System V init file setup.

------------------ Output of 'make all' ----------------

make[1]: Entering directory `/usr/src/pcmcia-cs-3.1.9/modules' cc -MD -O2 -Wall -Wstrict-prototypes -pipe -I../include -I/usr/src/linux/include -D__KERNEL__ -DMODULE -c i82365.c i82365.c: In function `set_bridge_opts': i82365.c:1236: incompatible types in assignment i82365.c:1236: structure has no member named `next' i82365.c:1235: warning: `p' might be used uninitialized in this function i82365.c: In function `add_cb_bridge': i82365.c:1759: incompatible types in assignment i82365.c:1759: structure has no member named `next' i82365.c:1772: structure has no member named `next' i82365.c:1773: incompatible types in assignment i82365.c:1758: warning: `child' might be used uninitialized in this function i82365.c:1763: warning: `s' might be used uninitialized in this function i82365.c:1763: warning: `s' might be used uninitialized in this function i82365.c:1763: warning: `s' might be used uninitialized in this function i82365.c:1763: warning: `s' might be used uninitialized in this function make[1]: *** [i82365.o] Error 1 make[1]: Leaving directory `/usr/src/pcmcia-cs-3.1.9/modules' make: *** [all] Error 2

--------- /usr/src/linux/.config (Kernel 2.3.38) ---------

#
# Automatically generated by make menuconfig: don't edit
#
CONFIG_X86=y CONFIG_ISA=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y

#
# Processor type and features
#
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
CONFIG_M686=y # CONFIG_MK7 is not set CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_TSC=y CONFIG_X86_GOOD_APIC=y CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y # CONFIG_SMP is not set

#
# Loadable module support
#
CONFIG_MODULES=y # CONFIG_MODVERSIONS is not set CONFIG_KMOD=y

#
# General setup
#
CONFIG_NET=y # CONFIG_VISWS is not set CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y CONFIG_PCI_NAMES=y # CONFIG_MCA is not set

#
# PCMCIA/CardBus support
#
# CONFIG_PCMCIA is not set
CONFIG_SYSVIPC=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_SYSCTL=y CONFIG_KCORE_ELF=y # CONFIG_KCORE_AOUT is not set CONFIG_BINFMT_AOUT=m CONFIG_BINFMT_ELF=y CONFIG_BINFMT_MISC=m CONFIG_PARPORT=m CONFIG_PARPORT_PC=m CONFIG_PARPORT_PC_FIFO=y
# CONFIG_PARPORT_AMIGA is not set
# CONFIG_PARPORT_MFC3 is not set
# CONFIG_PARPORT_ATARI is not set
# CONFIG_PARPORT_SUNBPP is not set
# CONFIG_PARPORT_OTHER is not set
CONFIG_PARPORT_1284=y # CONFIG_ACPI is not set CONFIG_APM=y # CONFIG_APM_IGNORE_USER_SUSPEND is not set CONFIG_APM_DO_ENABLE=y CONFIG_APM_CPU_IDLE=y CONFIG_APM_DISPLAY_BLANK=y
# CONFIG_APM_IGNORE_MULTIPLE_SUSPEND is not set
# CONFIG_APM_IGNORE_SUSPEND_BOUNCE is not set
# CONFIG_APM_RTC_IS_GMT is not set
CONFIG_APM_ALLOW_INTS=y
# CONFIG_APM_BAD_ENTRY_OFFSET is not set
# CONFIG_APM_REAL_MODE_POWER_OFF is not set

#
# Plug and Play configuration
#
# CONFIG_PNP is not set
# CONFIG_ISAPNP is not set

#
# Block devices
#
CONFIG_BLK_DEV_FD=m CONFIG_BLK_DEV_IDE=y # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEPCI=y CONFIG_BLK_DEV_IDEDMA_PCI=y CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set CONFIG_IDEDMA_PCI_EXPERIMENTAL=y
# CONFIG_BLK_DEV_OFFBOARD is not set
# CONFIG_BLK_DEV_AEC6210 is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_CMD646 is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
CONFIG_BLK_DEV_PIIX=y CONFIG_BLK_DEV_PIIX_TUNING=y
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_PDC202XX is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
CONFIG_BLK_DEV_IDEDMA=y CONFIG_IDEDMA_AUTO=y
# CONFIG_IDE_CHIPSETS is not set
# CONFIG_BLK_CPQ_DA is not set
CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_NBD=m
# CONFIG_BLK_DEV_MD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_BLK_DEV_XD is not set
# CONFIG_BLK_DEV_DAC960 is not set
CONFIG_PARIDE_PARPORT=m # CONFIG_PARIDE is not set CONFIG_BLK_DEV_IDE_MODES=y # CONFIG_BLK_DEV_HD is not set

#
# Networking options
#
CONFIG_PACKET=m CONFIG_PACKET_MMAP=y
# CONFIG_NETLINK is not set
# CONFIG_NETFILTER is not set
# CONFIG_FILTER is not set
CONFIG_UNIX=y CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_IP_ROUTER is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_IP_ALIAS is not set
# CONFIG_SYN_COOKIES is not set
CONFIG_SKB_LARGE=y
# CONFIG_IPV6 is not set
# CONFIG_KHTTPD is not set
# CONFIG_ATM is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_DECNET is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_BRIDGE is not set
# CONFIG_LLC is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_FASTROUTE is not set
# CONFIG_NET_HW_FLOWCONTROL is not set

#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set

#
# Telephony Support
#
# CONFIG_PHONE is not set
# CONFIG_PHONE_IXJ is not set

#
# SCSI support
#
# CONFIG_SCSI is not set

#
# I2O device support
#
# CONFIG_I2O is not set
# CONFIG_I2O_PCI is not set
# CONFIG_I2O_BLOCK is not set
# CONFIG_I2O_LAN is not set
# CONFIG_I2O_SCSI is not set
# CONFIG_I2O_PROC is not set

#
# Network device support
#
CONFIG_NETDEVICES=y

#
# ARCnet devices
#
# CONFIG_ARCNET is not set
CONFIG_DUMMY=m
# CONFIG_EQUALIZER is not set
# CONFIG_NET_SB1000 is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set
# CONFIG_RTL8139 is not set
# CONFIG_DM9102 is not set
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_NET_ISA is not set
# CONFIG_NET_EISA is not set
# CONFIG_NET_POCKET is not set

#
# Ethernet (1000 Mbit)
#
# CONFIG_YELLOWFIN is not set
# CONFIG_ACENIC is not set
# CONFIG_SK98LIN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOMP=m CONFIG_SLIP=m
# CONFIG_SLIP_COMPRESSED is not set
# CONFIG_SLIP_SMART is not set
# CONFIG_SLIP_MODE_SLIP6 is not set

#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set

#
# Token Ring driver support
#
# CONFIG_TR is not set
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set

#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set

#
# IrDA (infrared) support
#
CONFIG_IRDA=m # CONFIG_IRLAN is not set CONFIG_IRCOMM=m # CONFIG_IRDA_ULTRA is not set CONFIG_IRDA_OPTIONS=y CONFIG_IRDA_CACHE_LAST_LSAP=y # CONFIG_IRDA_FAST_RR is not set CONFIG_IRDA_DEBUG=y CONFIG_IRDA_COMPRESSION=y CONFIG_IRDA_DEFLATE=m

#
# Infrared-port device drivers
#
CONFIG_IRTTY_SIR=m CONFIG_IRPORT_SIR=m
# CONFIG_NSC_FIR is not set
# CONFIG_WINBOND_FIR is not set
CONFIG_TOSHIBA_FIR=m
# CONFIG_SMC_IRCC_FIR is not set
# CONFIG_DONGLE is not set

#
# ISDN subsystem
#
# CONFIG_ISDN is not set

#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set

#
# Character devices
#
CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_SERIAL=m CONFIG_SERIAL_EXTENDED=y # CONFIG_SERIAL_MANY_PORTS is not set CONFIG_SERIAL_SHARE_IRQ=y
# CONFIG_SERIAL_DETECT_IRQ is not set
# CONFIG_SERIAL_MULTIPORT is not set
# CONFIG_HUB6 is not set
# CONFIG_SERIAL_NONSTANDARD is not set
CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=0 CONFIG_PRINTER=m # CONFIG_LP_CONSOLE is not set CONFIG_PPDEV=m

#
# I2C support
#
# CONFIG_I2C is not set

#
# Mice
#
# CONFIG_BUSMOUSE is not set
CONFIG_MOUSE=m CONFIG_PSMOUSE=y
# CONFIG_82C710_MOUSE is not set
# CONFIG_PC110_PAD is not set

#
# Joysticks
#
# CONFIG_JOYSTICK is not set
# CONFIG_QIC02_TAPE is not set

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
# CONFIG_NVRAM is not set
# CONFIG_RTC is not set

#
# Video For Linux
#
# CONFIG_VIDEO_DEV is not set
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set

#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
# CONFIG_DRM is not set
# CONFIG_DRM_TDFX is not set
CONFIG_AGP=m CONFIG_AGP_INTEL=y
# CONFIG_AGP_I810 is not set
# CONFIG_AGP_VIA is not set
# CONFIG_AGP_AMD is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_ALI is not set

#
# USB support
#
CONFIG_USB=m CONFIG_USB_UHCI=m # CONFIG_USB_OHCI_HCD is not set CONFIG_USB_PROC=y # CONFIG_USB_PRINTER is not set CONFIG_USB_SCANNER=m
# CONFIG_USB_AUDIO is not set
# CONFIG_USB_ACM is not set
# CONFIG_USB_SERIAL is not set
# CONFIG_USB_CPIA is not set
# CONFIG_USB_OV511 is not set
# CONFIG_USB_DC2XX is not set
# CONFIG_USB_SCSI is not set
# CONFIG_USB_EZUSB is not set
# CONFIG_USB_USS720 is not set
# CONFIG_USB_DABUSB is not set
# CONFIG_USB_HID is not set
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set
# CONFIG_INPUT_KEYBDEV is not set
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_EVDEV is not set

#
# Misc devices
#

#
# Filesystems
#
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_BFS_FS is not set
CONFIG_FAT_FS=m CONFIG_MSDOS_FS=m CONFIG_UMSDOS_FS=m CONFIG_VFAT_FS=m
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
CONFIG_ISO9660_FS=m CONFIG_JOLIET=y CONFIG_MINIX_FS=m
# CONFIG_NTFS_FS is not set
# CONFIG_HPFS_FS is not set
CONFIG_PROC_FS=y CONFIG_DEVPTS_FS=y
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_EXT2_FS=y
# CONFIG_SYSV_FS is not set
# CONFIG_UDF_FS is not set
# CONFIG_UFS_FS is not set

#
# Network File Systems
#
# CONFIG_CODA_FS is not set
# CONFIG_NFS_FS is not set
# CONFIG_NFSD is not set
# CONFIG_SUNRPC is not set
# CONFIG_LOCKD is not set
# CONFIG_SMB_FS is not set
# CONFIG_NCP_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
# CONFIG_SGI_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
CONFIG_NLS=y

#
# Native Language Support
#
CONFIG_NLS_CODEPAGE_437=m
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=m
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_2=m
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_14 is not set
CONFIG_NLS_ISO8859_15=y # CONFIG_NLS_KOI8_R is not set

#
# Console drivers
#
CONFIG_VGA_CONSOLE=y
# CONFIG_VIDEO_SELECT is not set
# CONFIG_MDA_CONSOLE is not set

#
# Frame-buffer support
#
# CONFIG_FB is not set

#
# Sound
#
CONFIG_SOUND=y
# CONFIG_SOUND_CMPCI is not set
# CONFIG_SOUND_ES1370 is not set
# CONFIG_SOUND_ES1371 is not set
# CONFIG_SOUND_ESSSOLO1 is not set
# CONFIG_SOUND_MAESTRO is not set
# CONFIG_SOUND_SONICVIBES is not set
# CONFIG_SOUND_TRIDENT is not set
# CONFIG_SOUND_MSNDCLAS is not set
# CONFIG_SOUND_MSNDPIN is not set
CONFIG_SOUND_OSS=y
# CONFIG_SOUND_DMAP is not set
# CONFIG_SOUND_AD1816 is not set
# CONFIG_SOUND_SGALAXY is not set
# CONFIG_SOUND_CS4232 is not set
# CONFIG_SOUND_SSCAPE is not set
# CONFIG_SOUND_GUS is not set
# CONFIG_SOUND_VMIDI is not set
# CONFIG_SOUND_TRIX is not set
# CONFIG_SOUND_MSS is not set
# CONFIG_SOUND_MPU401 is not set
# CONFIG_SOUND_NM256 is not set
# CONFIG_SOUND_MAD16 is not set
# CONFIG_SOUND_PAS is not set
# CONFIG_SOUND_PSS is not set
# CONFIG_SOUND_SOFTOSS is not set
# CONFIG_SOUND_SB is not set
# CONFIG_SOUND_WAVEFRONT is not set
# CONFIG_SOUND_MAUI is not set
# CONFIG_SOUND_VIA82CXXX is not set
CONFIG_SOUND_YM3812=m # CONFIG_SOUND_OPL3SA1 is not set CONFIG_SOUND_OPL3SA2=y CONFIG_OPL3SA2_CHIPSET=-1 CONFIG_OPL3SA2_BASE=530 CONFIG_OPL3SA2_IRQ=5 CONFIG_OPL3SA2_DMA=1 CONFIG_OPL3SA2_DMA2=0 CONFIG_OPL3SA2_CTRL_BASE=538 CONFIG_OPL3SA2_MPU_BASE=330 CONFIG_OPL3SA2_MPU_IRQ=5 # CONFIG_SOUND_UART6850 is not set

#
# Additional low level sound drivers
#
# CONFIG_LOWLEVEL_SOUND is not set

#
# Kernel hacking
#
CONFIG_MAGIC_SYSRQ=y

None Hazards of being on the cutting edge

Re: Question Problems with compiling cs-3.1.9 under K 2.3.38 (Stefan Kapfhammer)
Date: 2000, Jan 09
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I will see if it can be fixed, but the 2.3 kernel tree is quickly
evolving in a direction where it will be essentially impossible to
compile the standalone PCMCIA package.  So you'll have the in-kernel
PCMCIA support, period.

-- Dave

Feedback cardctl/cardmgr separately available?

Re: None Hazards of being on the cutting edge (David Hinds)
Date: 2000, Jan 10
From: Stefan Kapfhammer StefanKapfhammer

Hi David, in the 2.3.38 DVLP-kernel the help text in the general setup / pcmcia setup it reads that the pcmcia-cs package is needed. Shure, that problems come with DVLP-versions, but is the cardmgr/cardctl package also available standalone? 2.3.38 ships with 3.1.4 cardservice drivers and i had no problem in combination (K2.2.14/cs-3.1.4)

Friendly regards,

Stefan

None You will need to be more self sufficient

Re: Feedback cardctl/cardmgr separately available? (Stefan Kapfhammer)
Date: 2000, Jan 10
From: David Hinds <dhinds@pcmcia.sourceforge.org>

At the moment, if you need working PCMCIA, I would advise you to not
be running a 2.3.37 or later kernel.  If you need to do so for some
reason, you're welcome to send me patches that will make it work.

To just build cardmgr etc, do a "make config" in the PCMCIA tree, then
cd to the cardmgr directory and do "make install".

-- Dave

Question Could you provide some hints?

Re: None Hazards of being on the cutting edge (David Hinds)
Date: 2000, Jan 27
From: Paul Koning pkoning

Dave,

I understand about cutting edges and all that, but could you offer some hints? I tried building 2.3.40 with the kernel PCMCIA support enabled. That appeared to work but attempts to insmod the 3c589_cs.o module produced a complaint about being unable to allocate the IRQ. That was with cardmgr active. With cardmgr not active, the card wasn't activated, as far as I can tell. The reason I'm trying to use 2.3.40 isn't the new PCMCIA stuff, and I'm no wizard (especially not in that area) so I don't know where to start.

Tried to build the full 3.1.9 pcmcia package; that got a compile error in wireless/airo_cs.c. But skipping that directory, while it produced a build that completed, didn't result in working PCMCIA Ethernet.

Thanks,
	paul

None Well, I can't get it to work either

Re: Question Could you provide some hints? (Paul Koning)
Date: 2000, Jan 27
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I do not normally use 2.3.* kernels, and it has been quite difficult
to put together a PCMCIA package that builds against the most recent
kernels.  I'll continue to work on it, but it is just one of many
things I need to do.  2.3.* kernels are for developers, not for
general use.

It isn't that I'm holding out on you; if I had hints to give, I would
have just fixed the problems in the first place.

It might be useful to post system log messages for this interrupt
allocation problem.

-- Dave

Ok Works now!

Re: None Well, I can't get it to work either (David Hinds)
Date: 2000, Feb 02
From: Paul Koning pkoning

Sorry for the delayed response. I spotted 3.1.10 on the FTP server and tried it. That version works with the 2.3.40 kernel.

Thanks!

	paul

Sad Oops, no, it doesn't.

Re: Ok Works now! (Paul Koning)
Date: 2000, Feb 07
From: Paul Koning pkoning

I spoke too soon. It turns out that it's still broken, but you have to test it the right way. :-(

Specifically, what I found with 3.1.10, kernel 2.3.42, is this:

Starting after a powerup fails, IRQ in use message.

If I first run a 2.3.35 kernel with 3.1.8 pcmcia, it works fine. I do have to start the pcmcia support; starting the 2.3.35 kernel in single-user mode is not sufficient.

I tried to rebuild the 2.3.42 kernel without isapnp support, on the off chance that that's intefering with the irq selection. It made no difference. (I have isapnp support included in the 2.3.35 kernel, by the way.)

Attached is a startup log, up to the error message. I didn't try to trim it down. This particular run was with the pcmcia card in place at startup. I also tried inserting it after startup is complete; that produces the same failure.

	paul

Feb  7 10:43:32 pkoning syslogd 1.3-3: restart.
Feb  7 10:43:32 pkoning kernel: klogd 1.3-3, log source = /proc/kmsg started.
Feb  7 10:43:33 pkoning kernel: Cannot find map file.
Feb  7 10:43:33 pkoning kernel: Error seeking in /dev/kmem 
Feb  7 10:43:33 pkoning kernel: Error adding kernel module table entry. 
Feb  7 10:43:33 pkoning kernel: Linux version 2.3.42RTLV3.0.pre3 (pkoning@pkoning.xedia.com) (gcc version 2.7.2.3) #6 Mon Feb 7 10:18:25 EST 2000
Feb  7 10:43:33 pkoning kernel: e820: 0009fc00 @ 00000000 (usable)
Feb  7 10:43:33 pkoning kernel: e820: 00000400 @ 0009fc00 (reserved)
Feb  7 10:43:33 pkoning kernel: e820: 0000e964 @ 000f169c (reserved)
Feb  7 10:43:33 pkoning kernel: e820: 02f00000 @ 00100000 (usable)
Feb  7 10:43:33 pkoning kernel: e820: 0000e964 @ ffff169c (reserved)
Feb  7 10:43:33 pkoning kernel: On node 0 totalpages: 00003000
Feb  7 10:43:33 pkoning kernel: zone(0): 4096 pages.
Feb  7 10:43:33 pkoning kernel: zone(1): 8192 pages.
Feb  7 10:43:33 pkoning kernel: zone(2): 0 pages.
Feb  7 10:43:33 pkoning kernel: Initializing CPU#0
Feb  7 10:43:33 pkoning kernel: Detected 166199240 Hz processor.
Feb  7 10:43:33 pkoning kernel: Console: colour VGA+ 80x25
Feb  7 10:43:33 pkoning kernel: Calibrating delay loop... 331.78 BogoMIPS
Feb  7 10:43:33 pkoning kernel: Memory: 46276k/49152k available (982k kernel code, 2488k reserved, 93k data, 140k init, 0k highmem)
Feb  7 10:43:33 pkoning kernel: Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Feb  7 10:43:33 pkoning kernel: Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
Feb  7 10:43:33 pkoning kernel: CPU: Intel Pentium MMX stepping 04
Feb  7 10:43:33 pkoning kernel: Checking 386/387 coupling... OK, FPU using exception 16 error reporting.
Feb  7 10:43:33 pkoning kernel: Checking 'hlt' instruction... OK.
Feb  7 10:43:33 pkoning kernel: Intel Pentium with F0 0F bug - workaround enabled.
Feb  7 10:43:33 pkoning kernel: POSIX conformance testing by UNIFIX
Feb  7 10:43:33 pkoning kernel: PCI: PCI BIOS revision 2.10 entry at 0xf5cae
Feb  7 10:43:33 pkoning kernel: PCI: Using configuration type 1
Feb  7 10:43:33 pkoning kernel: PCI: Probing PCI hardware
Feb  7 10:43:33 pkoning kernel: PCI: Cannot allocate resource region 0 of device 00:03.0
Feb  7 10:43:33 pkoning kernel: PCI: Cannot allocate resource region 2 of device 00:03.0
Feb  7 10:43:33 pkoning kernel: Linux NET4.0 for Linux 2.3
Feb  7 10:43:33 pkoning kernel: Based upon Swansea University Computer Society NET3.039
Feb  7 10:43:33 pkoning kernel: NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Feb  7 10:43:33 pkoning kernel: NET4: Linux TCP/IP 1.0 for NET4.0
Feb  7 10:43:33 pkoning kernel: IP Protocols: ICMP, UDP, TCP
Feb  7 10:43:33 pkoning kernel: IP: routing cache hash table of 512 buckets, 4Kbytes
Feb  7 10:43:33 pkoning kernel: TCP: Hash tables configured (established 4096 bind 4096)
Feb  7 10:43:33 pkoning kernel: Initializing RT netlink socket
Feb  7 10:43:33 pkoning kernel: apm: BIOS version 1.2 Flags 0x03 (Driver version 1.11)
Feb  7 10:43:33 pkoning kernel: Starting kswapd v1.6
Feb  7 10:43:33 pkoning kernel: Serial driver version 4.92 (2000-1-27) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled
Feb  7 10:43:33 pkoning kernel: ttyS00 at 0x03f8 (irq = 4) is a 16550A
Feb  7 10:43:33 pkoning kernel: ttyS01 at 0x02f8 (irq = 3) is a 16550A
Feb  7 10:43:33 pkoning kernel: pty: 256 Unix98 ptys configured
Feb  7 10:43:33 pkoning kernel: Uniform Multi-Platform E-IDE driver Revision: 6.30
Feb  7 10:43:33 pkoning kernel: CMD643: IDE controller on PCI bus 00 dev 18
Feb  7 10:43:33 pkoning kernel: CMD643: not 100ative mode: will probe irqs later
Feb  7 10:43:33 pkoning kernel:     ide0: BM-DMA at 0xfcf0-0xfcf7, BIOS settings: hda:pio, hdb:pio
Feb  7 10:43:33 pkoning kernel:     ide1: BM-DMA at 0xfcf8-0xfcff, BIOS settings: hdc:pio, hdd:pio
Feb  7 10:43:33 pkoning kernel: hda: IBM-DCRA-22160, ATA DISK drive
Feb  7 10:43:33 pkoning kernel: hdc: CD-ROM CDR_N110, ATAPI CDROM drive
Feb  7 10:43:33 pkoning kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Feb  7 10:43:33 pkoning kernel: ide1 at 0x170-0x177,0x376 on irq 15
Feb  7 10:43:33 pkoning kernel: hda: IBM-DCRA-22160, 2067MB w/96kB Cache, CHS=525/128/63
Feb  7 10:43:33 pkoning kernel: hdc: ATAPI 10X CD-ROM drive, 128kB Cache
Feb  7 10:43:33 pkoning kernel: Uniform CD-ROM driver Revision: 3.06
Feb  7 10:43:33 pkoning kernel: Partition check:
Feb  7 10:43:33 pkoning kernel:  hda: hda1 hda3 hda4
Feb  7 10:43:33 pkoning kernel: Floppy drive(s): fd0 is 1.44M
Feb  7 10:43:33 pkoning kernel: FDC 0 is a National Semiconductor PC87306
Feb  7 10:43:35 pkoning cardmgr[260]: starting, version is 3.1.9
Feb  7 10:43:35 pkoning cardmgr[260]: watching 2 sockets
Feb  7 10:43:35 pkoning cardmgr[260]: initializing socket 0
Feb  7 10:43:35 pkoning cardmgr[260]: socket 0: 3Com 589 Ethernet
Feb  7 10:43:35 pkoning cardmgr[260]: executing: 'insmod /lib/modules/2.3.42RTLV3.0.pre3/pcmcia/3c589_cs.o'
Feb  7 10:43:36 pkoning cardmgr[260]: get dev info on socket 0 failed: Resource temporarily unavailable
Feb  7 10:43:33 pkoning kernel: Linux PCMCIA Card Services 3.1.9
Feb  7 10:43:33 pkoning kernel:   options:  [pci] [cardbus] [apm]
Feb  7 10:43:33 pkoning kernel: Adding cardbus controller 0: Texas Instruments PCI1130
Feb  7 10:43:33 pkoning kernel: Yenta IRQ list 0000, PCI irq0
Feb  7 10:43:33 pkoning kernel: Socket status: 30000010
Feb  7 10:43:33 pkoning kernel: Adding cardbus controller 1: Texas Instruments PCI1130 (#2)
Feb  7 10:43:33 pkoning kernel: Yenta IRQ list 0000, PCI irq0
Feb  7 10:43:33 pkoning kernel: Socket status: 30000006
Feb  7 10:43:33 pkoning kernel: VFS: Mounted root (ext2 filesystem) readonly.
Feb  7 10:43:33 pkoning kernel: Freeing unused kernel memory: 140k freed
Feb  7 10:43:33 pkoning kernel: Adding Swap: 68540k swap-space (priority -1)
Feb  7 10:43:33 pkoning kernel: YM3812 and OPL-3 driver Copyright (C) by Hannu Savolainen, Rob Hooft 1993-1996
Feb  7 10:43:33 pkoning kernel: cdrom: open failed.
Feb  7 10:43:35 pkoning kernel: cs: IO port probe 0x1000-0x17ff: clean.
Feb  7 10:43:36 pkoning sshd[277]: log: Server listening on port 22.
Feb  7 10:43:36 pkoning sshd[277]: log: Generating 768 bit RSA key.
Feb  7 10:43:35 pkoning kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x220-0x22f 0x330-0x337 0x378-0x37f 0x398-0x39f 0x3c0-0x3df 0x4d0-0x4d7
Feb  7 10:43:35 pkoning kernel: cs: IO port probe 0x0a00-0x0aff: clean.
Feb  7 10:43:35 pkoning kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean.
Feb  7 10:43:35 pkoning kernel: 3c589_cs: RequestIRQ: Resource in use

More More debug results, where should they go?

Re: Sad Oops, no, it doesn't. (Paul Koning)
Date: 2000, Mar 01
From: Paul Koning pkoning

I tried this again with 2.3.48, same result. So it looked like time to do some debugging. Here's what I found. I used the pcmcia-3.1.11 with this, which builds cleanly (and apparently recognizes the kernel rev and doesn't build its own modules then).

Unlike pcmcia-3.0.x, the pcmcia code that comes with the kernel has an i82365.c that doesn't like my TI 1130 cardbus bridge. On the other hand, yenta.c (which is separate) does recognize it.

After some fiddling with things, I figured out that you need both the yenta and pci_socket modules for ds.o to load. Fine. That affects the scripts, of course, but no big hassle otherwise.

Added some debug code to pcmcia_request_irq in cs.c to figure out why it is objecting. Turns out that cap.irq_mask in the socket struct is 0xe80 normally, but 0 after a cold start from powerup. That doesn't seem right, and it certainly explains why no IRQ can be assigned! And sure enough, a little earlier in the kernel log is a line that says "Yenta IRQ list 0000". Without knowing the hardware I probably won't be able to get much further (unless comparing it with the code in pcmcia-3.1.11 gives me ideas).

So... presumably someone wants to know these details. Is that you, Dave, or someone else in linux kernel land? If the latter, how do I get this info to the right place?

Thanks
	paul

None Linus wrote the yenta code

Re: More More debug results, where should they go? (Paul Koning)
Date: 2000, Mar 01
From: David Hinds <dhinds@pcmcia.sourceforge.org>

You can forward to Linus if you want; the yenta code is his.

-- Dave

Idea 2 little ideas for pcmcia-cs

Date: 2000, Jan 18
From: Stefan Kapfhammer StefanKapfhammer

Hi David,

on your last reply I stopped using DVLP-kernels. But there are also 2 little problems (ideas) in version up to 3.1.9.

1. If /sbin/setserial has not the modes "a-x" the port gives
   a input/output error. This could be fixed if the       config-script checks for the modes and if wrong set to       them.

2. I set the irq exclusion to 3,4,5,7,9 in       /etc/pcmcia/config.opts, but cardservices tells in startup
   ISA irqs 3,10 status changes. This can only be fixed if
   I set PCIC_OPTS="irq_list=10" in /sbin/init.d/pcmcia every
   time I compile and install the package. Also input/output
   error in this point.

My configuration: Xircom RBEM-56G-100BTX Toshiba Tecra 8000 / ToPIC97 enabled using pci irq 11 - SuSE Linux 6.3 with Kernel 2.2.14 - serial.o compiled as module with share_irq enabled

make config using cardbus and pnp resource checking enabled.

Hope this helps a bit getting the the package more perfect. ;)

Regards,

Stefan

None xircom realport ethernet 10/100 (RE-100)

Date: 2000, Jan 24
From: spendabuck sab

Hi all,

I am trying to install a PCMCIA network card on my laptop (specs at bottom)i have un compressed my kernel (2.3.24) and pcmcia-cs-3.0.14.tar.gz into /usr/src. when i
 make config in the pcmcia dir. everthing goes fine, but when i do make all a whole lot of
 errors come up, which finishs with:

 ../include/pcmcia/k_compat.h:271: parse error before 'unsigned'
 ../include/pcmcia/k_compat.h:273: parse error before '&'
 ../include/pcmcia/k_compat.h:273: warning: function declaration isn't a prototype
 ../include/pcmcia/k_compat.h:273: parse error before 'unsigned'
 make[1]: *** [i82365.o] Error 1
 make[1]: Leaving directory '/usr/src/pcmcia-cs-3.0.14/modules'
 make: *** [all] Error 2

i decided to try a new version, and when i try the 3.1.8 PCMCIA package i get the error:
make[1]: *** No rule to make target '/usr/src/linux/drivers/net/ibmtr.c', needed by ibmtr.o' Stop.
make[1]: Leaving directory '/usr/src/pcmcia-cs-3.1.8/clients'
make: *** [all] Error 2

when i upgrade the kernel to 2.3.40 i get this error:

i82365.c: In function 'set_bridge_opts':
i82365.c:1249: incompatible types in assignment
i82365.c:1249: structure has no member named 'next'
i82365.c:1248: warning: 'p' might be used uninitialized in this function
i82365.c: In function 'add_cb_bridge':
i82365.c:1768: incompatible types in assignment
i82365.c:1768: structure has no member named 'next'
i82365.c:1781: structure has no member named 'next'
i82365.c:1783: incompatible types in assignment
i82365.c:1767: warning: 'child' might be used unitnitialized in this function
i82365.c:17672: warning: 's' might be used uninitialized in this function
i82365.c:17672: warning: 's' might be used uninitialized in this function
i82365.c:17672: warning: 's' might be used uninitialized in this function
i82365.c:17672: warning: 's' might be used uninitialized in this function
make[1]: *** [i82365.o] Error 1
make[1]: Leaving directory '/usr/src/pcmcia-cs-3.1.8/modules'
make : *** [all] Error 2


Any ideas? I am I using buggy/unstable versions of the kernel/pcmcia package? if so which versions of both pcmcia and kernel do you advise that are stable and compatible?

Thanks,
From Spendabuck

 my laptops specs:
 Intel Pentium 266 MXX, 32MB RAM
 Partitions: 2gb linux, 1.8gb W'98
 Redhat Linux 6.0
 PCMCIA network card (this is the one i'm trying to install): xircom realport ethernet
 10/100 (RE-100)

None Incompatible versions: 3.0.14 is too old

Re: None xircom realport ethernet 10/100 (RE-100) (spendabuck)
Date: 2000, Jan 24
From: David Hinds <dhinds@pcmcia.sourceforge.org>

If you're going to use a fairly recent development kernel, you should
try to get a current PCMCIA driver package.  The current PCMCIA driver
release is 3.1.8.

-- Dave

Question Problems with TI PCI1031 PCMCIA-Controller

Date: 2000, Jan 27
From: Armand Portmann <portmann@omnisec.ch>

On my PC I've installed SuSE Linux 6.0 (Kernel 2.0.36). I tried to install an SCM PC-Card Reader (PCI-SwapBox SBP-D2) with the PCI1031 controller. Since Linux declared the reader as 'unknown PCI-to-PCMCIA' I installed a newer PCMCIA-package (3.0.14). Unfortunately without success, in the PCMCIA-HOW-TO I finally found a list with the recognized controllers. The PCI1031 doesn't figure. So, is that controller really not supported and if not, is it planned to support it soon? And will it work in my system with Kernel 2.0.36?

Thanks

Armand

None It is really unsupported

Re: Question Problems with TI PCI1031 PCMCIA-Controller (Armand Portmann)
Date: 2000, Jan 27
From: David Hinds <dhinds@pcmcia.sourceforge.org>

(that seems obvious, since the drivers don't recognize it and the documentation doesn't list it as supported)

However, I would have expected that it would work anyway. What card(s) have you tried to use, and what were the results?

-- Dave

Feedback No other cards tested

Re: None It is really unsupported (David Hinds)
Date: 2000, Jan 28
From: Armand Portmann <portmann@omnisec.ch>

I haven't tried any other cards. But let me ask again: is there a chance that the controller is supported in one of the next releases of the PCMCIA-package?

Armand

None Have you tried any cards at all?

Re: Feedback No other cards tested (Armand Portmann)
Date: 2000, Jan 28
From: David Hinds <dhinds@pcmcia.sourceforge.org>

You haven't tried "any other cards"?  Other than what?  (To be clear,
I meant other PCMCIA cards, not other card readers)

I still would want to see kernel messages and hear how this PCI1031
controller behaves.  The PCMCIA drivers should function OK treating
this as an unknown bridge: that just means the drivers will not use
any vendor-specific extensions.

-- Dave

None More info about the PCI1031

Re: None Have you tried any cards at all? (David Hinds)
Date: 2000, Jan 31
From: Armand Portmann <portmann@omnisec.ch>

I only tested our own PC-card (product of our company) which is an encryption-card. It works like a modem, so only a common serial-driver is necessary (serial_cs). The PC-card is ok and I know that it works on other Linux-PC's which are equipped with ISA PC-card readers. Here some more information about the behaviour of Linux: Card-insertion is not accompanied by a sound, LED of PC-card doesn't light up; cardctl ident: Socket 0/1: no product available; /var/run/stab: Socket 0/1: empty. Linux seems not to see the PC-card. Here an extract of the messages-file:

Jan 27 12:54:32 OCxxx-P1 kernel: Linux PCMCIA Card Services 3.0.14
Jan 27 12:54:32 OCxxx-P1 kernel: kernel build: 2.0.36 #8 Tue Dec 8 15:34:59 MET 1998
Jan 27 12:54:32 OCxxx-P1 kernel: options:  [pci] [cardbus]
Jan 27 12:54:32 OCxxx-P1 kernel: Intel PCIC probe: 
Jan 27 12:54:32 OCxxx-P1 kernel: Unknown [0x104c 0xac13] PCI-to-PCMCIA at bus 0 slot 10, port 0x0, 2 sockets
Jan 27 12:54:32 OCxxx-P1 kernel: host opts [0]: none
Jan 27 12:54:32 OCxxx-P1 kernel: host opts [1]: none
Jan 27 12:54:32 OCxxx-P1 kernel: ISA irqs (default) = 3,4,5,7,9,10,15 polling interval = 1000 ms
Jan 27 12:54:32 OCxxx-P1 kernel: cs: IO port probe 0x1000-0x17ff: clean.
Jan 27 12:54:32 OCxxx-P1 kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x290-0x297 0x378-0x37f 0x4d0-0x4d7
Jan 27 12:54:32 OCxxx-P1 kernel: cs: IO port probe 0x0a00-0x0aff: clean.

Armand

Question PCMCIA and NFSROOT

Date: 2000, Feb 01
From: Fabrice Clement Fabrice.Clement

I wish to put the kernel with ip auto config enable (BOOTP 
/ ipconfig.c) and root on NFS to make laptops diskless (to 
install/backup them).

Using cardmgr, I succeed by recalling ip_auto_config in the
init function of the nfsroot.c code. This is necessary because
ip auto config code is called before I can run cardmgr in the  
linuxrc script (kernel 2.2). But I don't want to change the
kernel sources.

I have tried kernel 2.3.40 with support of PCMCIA and PCMCIA
network cards support : it seems nice for what I want...
(it's experimental, ok, but I don't need perfect stability!)
but I don't succeed to make ip auto config detect my
PCMCIA network card. I probably made a mistake in the
configuration. I just want to know if I can use bootp during
the boot having a network PCMCIA card (is the PCMCIA drivers
are loaded before ipconfig.c?).

Thanks for your time & work

Note I'm not really sure

Re: Question PCMCIA and NFSROOT (Fabrice Clement)
Date: 2000, Feb 01
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Since you're using an initrd anyway, could you just use dhcpcd or bootpc to configure the network in the initrd environment, instead of relying on the kernel ipconfig code?

-- Dave

Note typo at line 45 of etc/network in 3.1.10 dist

Date: 2000, Feb 07
From: Matthew Clarke clamat

Missing space between "[" and "-x" in "if [-x /sbin/bootpc ]". This leads to the shell complaining "[-x: not found" and a less than optimal network configuration. :)

None Thanks for the fix

Re: Note typo at line 45 of etc/network in 3.1.10 dist (Matthew Clarke)
Date: 2000, Feb 07
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Thanks, I'll fix it in 3.1.11.  I guess you can tell I don't use
bootp.

-- Dave

Question PCMCIA / linux kernel sync process?

Date: 2000, Feb 08
From: bob kuehne 3bob

dave, et al,

[note - i just wrote this gigantic email. if you want
the question, skip to the bottom]

i have been using the pcmcia stuff from you for a bit now,
and have just downloaded the latest linux (2.3.42 at this
point in time) kernel to play with. the pcmcia stuff there
seems different than in the latest from the pcmcia tree
(i use 3.1.9, but i'm getting around to 3.1.10).

my question stems from the fact that under the 2.3.42 kernel,
i experience different/broken pcmcia behavior which i didn't
when i used a 2.2 kernel with pcmcia 3.1.9. (if anyone is
interested, i have an oem ecom 10/100 pc card which is
recognized, works, etc, under the kernel 2.3.42, but
when i eject it, the system hangs. other issues include
that my aironet4800 card, which _allegedly_ has drivers
in the 2.3.42 stuff, doesn't get recognized. ok, so this
is a long-winded way of getting to the point/question.
which is:

what process do you use to merge the pcmcia tree, and
the linux kernel tree. will we see the two merged in
the 2.3 timeframe? secondly, are 3.odd.* pcmcia
kernels labeled similarly as the linux kernel convention,
that is, that 3.odd.* is development, and 3.even.* is 
stable?

thanks for the newbie q/a.
bob

None The process is still being worked out

Re: Question PCMCIA / linux kernel sync process? (bob kuehne)
Date: 2000, Feb 08
From: David Hinds <dhinds@pcmcia.sourceforge.org>

There are a large number of new "issues" with the PCMCIA support in
the 2.3.* kernel tree.  I have been backporting my updates from the
3.1.* PCMCIA drivers to the 2.3.* kernel tree; however, many of the
new problems in the 2.3.* tree directly stem from changes made by
other people, that I did not agree with.  Sorting out these problems
will take time.

PCMCIA release numbers do not follow the odd=development, even=stable
convention used for kernel releases.

-- Dave

None more kernel 2.3.42 vs pcmcica 3.1.10

Re: None The process is still being worked out (David Hinds)
Date: 2000, Feb 09
From: bob kuehne 3bob

> There are a large number of new "issues" with the PCMCIA
> support in the 2.3.* kernel tree.

how true. i thought i'd just glom 2.3.42 and i'd not
have to reinstall the 3.1 pcmcia stuff - what optimism. :)

>  other people, that I did not agree with.  Sorting out these 
> problems will take time.

undoubtedly. one of the biggest problems i noticed was
simply that of confusion. the pcmcia stuff is scattered
in the config setup in several places. i wasn't sure if
i needed to enable wireless lan support, and cardbus support,
or if one or the other was sufficient, etc. tres confusing.

> PCMCIA release numbers do not follow the odd=development, 
> even=stable convention used for kernel releases.

ok. is there a convention to signify which is stable, or is
there simply an accepted last-known-stable version? that said,
3.1.10 has been a champ for me. i esp appreciate the rolled-in
airo drivers.

curiosly,
bob

None Where I think things stand now

Re: None more kernel 2.3.42 vs pcmcica 3.1.10 (bob kuehne)
Date: 2000, Feb 09
From: David Hinds <dhinds@pcmcia.sourceforge.org>

> how true. i thought i'd just glom 2.3.42 and i'd not
> have to reinstall the 3.1 pcmcia stuff - what optimism. :)

If you are not so interested in helping debug the PCMCIA code in the
kernel, you can try the latest beta PCMCIA package.  I made a few
changes so that it should build correctly on a 2.3.42 or later kernel
with PCMCIA completely turned off in the kernel.  I've only tested
with a couple cards but it seems to all work correctly.  My plan is to
gradually migrate the standalone package to use the 2.3.* interfaces,
and hopefully gradually converge with the 2.3.* kernel PCMCIA stuff,
and shake out the bugs in the process.  I think the changes Linus made
in the 2.3.* tree were too much all at once, and the 2.3.* tree is so
broken that debugging is almost impossible.

> undoubtedly. one of the biggest problems i noticed was
> simply that of confusion.

This is an unfortunate feature of how kernel configuration is done;
PCMCIA driver options are not grouped together, just as PCI drivers
are not grouped together.  This is partly why for the standalone
PCMCIA package, I just bag it and require that you build everything
whether you need it or not: building 20 or so driver modules only
takes a couple minutes, doesn't have any run-time downside, and avoids
a lot of configuration headaches.

> ok. is there a convention to signify which is stable, or is
> there simply an accepted last-known-stable version?

There is a convention that when I bump the first or middle number
(like 2.8.23 to 3.0.0, or 3.0.14 to 3.1.0), that's a bigger change,
and you should expect ".m" versions to be less stable than ".n" where
m is less than n.  That isn't always true, but that's my goal.  I post
experimental snapshots to ftp://sourceforge.org/pcmcia/NEW and these
are identified by date of release.

-- Dave

Question Problems with kingmax 10/100 - Driver fails to compile

Date: 2000, Mar 09
From: Pedro Alves capella

      Greetings.
        I'll try to be straight so I don't take much of your time. I bought a ethernet pcmcia adaptor (Kingmax 10/100 Mbps,
 it does not say much else, any other relevant information
 please ask me). It sais linux compatible and comes with a
 driver (sent to David, not to here). The problem is that the
 driver is a little old (they say it requires at least pcmcia
 module version 3.0.9 (I got 3.1.11). This driver makes some
 changes to pcnet_cs.c and to 8309.c. Compiling, I get errors
 of undefined funcions in /usr/include/asm/uaccess.h, which I
 think is due to my kernel version (2.2.13) being higher than
 the one the driver was developed for. I might be wrong.
        Anyway, using your module and just adding to config.opts the lines:

        card "10/100Mbps Ethernet Card"
           manfid 0x8a01, 0xc1ab
           bind "pcnet_cs"

the result is a "pcnet_cs: unable to read hardware net address". Even trying to follow the steps in PCMCIA-HOWTO and using memory_cs, I get an error regarding "memory_cs: mem0: no regions found" and "./memory start mem0" "cat: /var/state/pcmcia/scheme: no such file or dir"

        I would appreciate any point to the solution.

None You've got to get a fixed driver from the vendor

Re: Question Problems with kingmax 10/100 - Driver fails to compile (Pedro Alves)
Date: 2000, Mar 09
From: David Hinds <dhinds@pcmcia.sourceforge.org>

This card absolutely cannot work with the regular pcnet_cs driver.

I now have a card that uses the same chipset as this card.  The chip
has a serious (documented) defect that prevents a normal NE2000 driver
from working.  I have not yet worked out a way to modify the pcnet_cs
driver to support "good" cards as well as these cards.

So for now, you are going to have to deal with the card vendor.

-- Dave

Question Must use UNSAFE_TOOLS or DS_BIND_REQUEST got EPERM ?

Date: 2000, Mar 11
From: Yui-Wah Lee clement

Hi,

Not sure if this is a bug or a misunderstanding of mine.  However, I find
that I must choose UNSAFE_TOOLS in "make config" or my cardmgr cannot
successfully make a bind (an ioctl of DS_BIND_REQUEST).  Syslog got
something like the following:

Mar 11 15:18:27 cadenza cardmgr[198]: initializing socket 0
Mar 11 15:18:27 cadenza cardmgr[198]: socket 0: Xircom CE3-10/100 Fast Ethernet
Mar 11 15:18:27 cadenza cardmgr[198]: executing: 'insmod /lib/modules/2.2.13/pcm
cia/xirc2ps_cs.o'
Mar 11 15:18:27 cadenza cardmgr[198]: bind 'xirc2ps_cs' to socket 0 failed: Oper
ation not permitted

This is true even the cardmgr process is already having a uid of 0.

System type: Acer Travelmate 332T
PCMCIA card: seems not relevant, all cards of mine didn't work
             (Xircom CE3-10/100, 3c589c, etc)
Kernel version: 2.2.13
PCMCIA version: 3.1.12

-- Clement

None Sounds fishy to me

Re: Question Must use UNSAFE_TOOLS or DS_BIND_REQUEST got EPERM ? (Yui-Wah Lee)
Date: 2000, Mar 13
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I don't see how that could be.  The cardmgr program has no #ifdef's
that depend on UNSAFE_TOOLS: this flag only appears in the cardctl and
cardinfo programs.  Also, UNSAFE_TOOLS defaults to off, and this is
the first time this problem has been reported.  Can you test this
again and make sure that this flag makes a difference?  Are you
absolutely sure that cardmgr was running as root?

-- Dave

Question please give me some hints on writing pcmcia drivers

Date: 2000, Mar 12
From: Shao Zhang shao

Hi, I am writing a pcmcia device driver as my thesis. I have read David Hinds' PCMCIA-HOWTO and PCMCIA-PROG, but I still have no idea how to start it.

I have no experence in writing device drivers, not to mention PCMCIA. Could someone please give me some pointers for me to get started?

The card I am working on is a data acquasition card from National Instruments. There are source code for a very similar card, and it uses rtlinux. Is this necessary for all PCMCIA cards, or is it just for the data acquasition card, or it is purely optional?

If you may find my questions are very stupid. I am sorry for my lack of knowledge on this topic, but I really need your help to get started.

Thanks.

Shao.

None Not enough hints already?

Re: Question please give me some hints on writing pcmcia drivers (Shao Zhang)
Date: 2000, Mar 13
From: David Hinds <dhinds@pcmcia.sourceforge.org>

If you have no device driver experience, you should probably start by
buying a book about the linux kernel (like "Linux Device Drivers" for
example).  The Linux PCMCIA Programmer's Guide is a fairly complete
description of everything that is unique to PCMCIA drivers.  And the
"dummy_cs" driver included in the Linux PCMCIA package shows how to
use all the PCMCIA specific stuff in a real driver.  And you also have
all sorts of examples of PCMCIA drivers to look at, and even a driver
for a very similar card...

rtlinux is certainly not necessary for all PCMCIA cards.  Presumably
it was used for the data acquisition card because this driver needed
to be very timing sensitive.  You could contact that driver author for
more information or advice.

-- Dave

Question kernel panic unloading pcmcia tools

Date: 2000, Mar 13
From: Pedro Alves capella

	Following my last post, I was able to compile the 
driver for my kingmax card. But I get some strange behaviour... When I load the pcmcia tools everything goes ok, 
the card is correctly detected. If I unload the pcmcia tools
(remove the modules) all goes well. If I set the ethernet
up with ifconfig (the main objective) all goes well, but  when
I unload the tools  (before or after setting ifconfig eth0
 down, doesn't matter), I always get a kernel panic...

 killing interrupt handler
 kernel panic: Attempted to kill the idle task
 In swapper task - not syncing

	Any suggestion on solving this?

				Pedro Alves

None Report it to the vendor?

Re: Question kernel panic unloading pcmcia tools (Pedro Alves)
Date: 2000, Mar 13
From: David Hinds <dhinds@pcmcia.sourceforge.org>

This sounds like a bug in their driver.

-- Dave

More Untitled

Re: None Report it to the vendor? (David Hinds)
Date: 2000, Mar 22
From: Pedro Alves capella

Ok, I did so, but help me with this, if you can. It's a strange behaviour... If after I unload the nic interface *before* setting ifconfig, everything goes well. If I set ifconfig eth0 up, I get kernel panic. What happens with ifconfig for this to happen? Any suggestion?

None That is not so strange

Re: More Untitled (Pedro Alves)
Date: 2000, Mar 28
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Lots of stuff happens after you "ifconfig" the interface.  Until you
do that, most of the driver is inactive.  So if the bug is in the
driver shutdown code, you may not see it unless the driver has been
fully activated by running "ifconfig".

-- Dave

None Bridge register mapping failed: check cb_mem_base setting not found.

Date: 2000, Mar 27
From: Ingo Höntsch hontsch

Contents

1. Problem Description
2. System Description
3. Configuration Files
4. Syslog Data
4.1. Data from failed attempt to load PCMCIA support (PCMCIA-CS.20-Mar-00)
4.2. Data from sucessful attempt to load PCMCIA support (PCMCIA-CS-3.1.10)


1. Problem Description:

With PCMCIA-CS versions 3.1.11 and up, PCMCIA startup fails with the syslog message: 

  kernel: Intel PCIC probe:  
  kernel:   Bridge register mapping failed: check cb_mem_base setting not found. 

Under these versions, there is also a syslog message saying: 

  depmod: /lib/modules/2.2.14/pcmcia/parport_cs.o: unresolved symbol(s)


2. System Description:

My system consists of a VAIO PCG-748 under RedHat 6.0 running a 2.2.14 kernel. The
PCMCIA-CS packages I am having problems with are PCMCIA-CS-3.1.{11,12,13,14}.

Everything is fine with PCMCIA-CS-3.1.10!


3. Configuration Files:

/etc/sysconfig/pcmcia:

 PCMCIA=yes
 PCIC=i82365
 PCIC_OPTS=
 CORE_OPTS=
 CARDMGR_OPTS=

/etc/pcmcia/config.opts

 include memory 0xc0000-0xfffff
 include memory 0xa0000000-0xa0ffffff, memory 0x60000000-0x60ffffff
 include port 0xa00-0xaff
 exclude irq 4
 exclude irq 7


4. Syslog Data:

4.1. Data from failed attempt to load PCMCIA support (PCMCIA-CS.20-Mar-00)

Mar 27 14:10:23 mobile syslogd 1.3-3: restart.
Mar 27 14:10:23 mobile syslog: syslogd startup succeeded
Mar 27 14:10:23 mobile syslog: klogd startup succeeded
Mar 27 14:10:23 mobile kernel: klogd 1.3-3, log source = /proc/kmsg started.
Mar 27 14:10:23 mobile kernel: Inspecting /boot/System.map-2.2.14
Mar 27 14:10:23 mobile kernel: Loaded 7991 symbols from /boot/System.map-2.2.14.
Mar 27 14:10:23 mobile kernel: Symbols match kernel version 2.2.14.
Mar 27 14:10:23 mobile kernel: No module symbols loaded.
Mar 27 14:10:23 mobile kernel: Linux version 2.2.14 (root@mobile) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #4 Sat Feb 26 20:47:03 CET 2000 
Mar 27 14:10:23 mobile kernel: Detected 265888756 Hz processor. 
Mar 27 14:10:23 mobile kernel: Console: colour VGA+ 80x25 
Mar 27 14:10:23 mobile kernel: Calibrating delay loop... 132.71 BogoMIPS 
Mar 27 14:10:23 mobile kernel: Memory: 62996k/65472k available (1132k kernel code, 412k reserved, 892k data, 40k init) 
Mar 27 14:10:23 mobile kernel: Dentry hash table entries: 8192 (order 4, 64k) 
Mar 27 14:10:23 mobile kernel: Buffer cache hash table entries: 65536 (order 6, 256k) 
Mar 27 14:10:23 mobile kernel: Page cache hash table entries: 16384 (order 4, 64k) 
Mar 27 14:10:23 mobile kernel: VFS: Diskquotas version dquot_6.4.0 initialized 
Mar 27 14:10:23 mobile kernel: CPU: Intel Mobile Pentium MMX stepping 01 
Mar 27 14:10:23 mobile kernel: Checking 386/387 coupling... OK, FPU using exception 16 error reporting. 
Mar 27 14:10:23 mobile kernel: Checking 'hlt' instruction... OK. 
Mar 27 14:10:23 mobile kernel: Intel Pentium with F0 0F bug - workaround enabled. 
Mar 27 14:10:23 mobile kernel: POSIX conformance testing by UNIFIX 
Mar 27 14:10:23 mobile kernel: PCI: PCI BIOS revision 2.10 entry at 0xfda04 
Mar 27 14:10:23 mobile kernel: PCI: Using configuration type 1 
Mar 27 14:10:23 mobile kernel: PCI: Probing PCI hardware 
Mar 27 14:10:23 mobile kernel: PCI: Enabling I/O for device 00:3a 
Mar 27 14:10:23 mobile kernel: Linux NET4.0 for Linux 2.2 
Mar 27 14:10:23 mobile kernel: Based upon Swansea University Computer Society NET3.039 
Mar 27 14:10:23 mobile kernel: NET4: Unix domain sockets 1.0 for Linux NET4.0. 
Mar 27 14:10:23 mobile kernel: NET4: Linux TCP/IP 1.0 for NET4.0 
Mar 27 14:10:23 mobile kernel: IP Protocols: ICMP, UDP, TCP 
Mar 27 14:10:23 mobile kernel: TCP: Hash tables configured (ehash 65536 bhash 65536) 
Mar 27 14:10:23 mobile kernel: Initializing RT netlink socket 
Mar 27 14:10:23 mobile kernel: Starting kswapd v 1.5  
Mar 27 14:10:23 mobile kernel: parport0: PC-style at 0x378 (0x778) [SPP,ECP,ECPPS2] 
Mar 27 14:10:23 mobile kernel: parport0: no IEEE-1284 device present. 
Mar 27 14:10:23 mobile kernel: Detected PS/2 Mouse Port. 
Mar 27 14:10:23 mobile kernel: Serial driver version 4.27 with no serial options enabled 
Mar 27 14:10:23 mobile kernel: ttyS00 at 0x03f8 (irq = 4) is a 16550A 
Mar 27 14:10:23 mobile kernel: ttyS01 at 0x02f8 (irq = 3) is a 16550A 
Mar 27 14:10:23 mobile kernel: ttyS02 at 0x03e8 (irq = 4) is a 16550A 
Mar 27 14:10:23 mobile kernel: pty: 256 Unix98 ptys configured 
Mar 27 14:10:23 mobile kernel: lp0: using parport0 (polling). 
Mar 27 14:10:23 mobile kernel: apm: BIOS version 1.2 Flags 0x03 (Driver version 1.9) 
Mar 27 14:10:23 mobile kernel: Real Time Clock Driver v1.09 
Mar 27 14:10:23 mobile kernel: Non-volatile memory driver v1.0 
Mar 27 14:10:23 mobile kernel: ESS chip ES1879 detected 
Mar 27 14:10:23 mobile kernel: <ESS ES1879 AudioDrive (rev 11) (3.01)> at 0x220 irq 5 dma 1,5 
Mar 27 14:10:23 mobile kernel: PIIX4: IDE controller on PCI bus 00 dev 39 
Mar 27 14:10:23 mobile kernel: PIIX4: not 100% native mode: will probe irqs later 
Mar 27 14:10:23 mobile kernel:     ide0: BM-DMA at 0xfcf0-0xfcf7, BIOS settings: hda:DMA, hdb:pio 
Mar 27 14:10:23 mobile kernel:     ide1: BM-DMA at 0xfcf8-0xfcff, BIOS settings: hdc:pio, hdd:pio 
Mar 27 14:10:23 mobile kernel: hda: FUJITSU MHC2040AT, ATA DISK drive 
Mar 27 14:10:23 mobile kernel: ide2: ports already in use, skipping probe 
Mar 27 14:10:23 mobile kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 
Mar 27 14:10:23 mobile kernel: hda: FUJITSU MHC2040AT, 3909MB w/0kB Cache, CHS=993/128/63, UDMA 
Mar 27 14:10:23 mobile kernel: Floppy drive(s): fd0 is 1.44M 
Mar 27 14:10:23 mobile kernel: FDC 0 is a post-1991 82077 
Mar 27 14:10:23 mobile kernel: scsi0 : SCSI host adapter emulation for IDE ATAPI devices 
Mar 27 14:10:23 mobile kernel: scsi : 1 host. 
Mar 27 14:10:23 mobile kernel: scsi : detected total. 
Mar 27 14:10:23 mobile kernel: PPP: version 2.3.7 (demand dialling) 
Mar 27 14:10:24 mobile atd: atd startup succeeded
Mar 27 14:10:23 mobile kernel: TCP compression code copyright 1989 Regents of the University of California 
Mar 27 14:10:23 mobile kernel: PPP line discipline registered. 
Mar 27 14:10:23 mobile kernel: Partition check: 
Mar 27 14:10:23 mobile kernel:  hda: hda1 hda2 hda3 
Mar 27 14:10:23 mobile kernel: VFS: Mounted root (ext2 filesystem) readonly. 
Mar 27 14:10:23 mobile kernel: Freeing unused kernel memory: 40k freed 
Mar 27 14:10:23 mobile kernel: Adding Swap: 100796k swap-space (priority -1) 
Mar 27 14:10:11 mobile rc.sysinit: Loading default keymap succeeded 
Mar 27 14:10:12 mobile rc.sysinit: Setting default font succeeded 
Mar 27 14:10:12 mobile swapon: swapon: warning: /dev/hda2 has insecure permissions 0660, 0600 suggested 
Mar 27 14:10:12 mobile rc.sysinit: Activating swap partitions succeeded 
Mar 27 14:10:12 mobile rc.sysinit: Setting hostname mobile succeeded 
Mar 27 14:10:12 mobile fsck: /dev/hda3: clean, 98528/514000 files, 1745202/2048001 blocks 
Mar 27 14:10:12 mobile rc.sysinit: Checking root filesystem succeeded 
Mar 27 14:10:12 mobile rc.sysinit: Remounting root filesystem in read-write mode succeeded 
Mar 27 14:10:13 mobile depmod: /lib/modules/2.2.14/pcmcia/parport_cs.o: unresolved symbol(s) 
Mar 27 14:10:13 mobile depmod: /lib/modules/2.2.14/pcmcia/parport_cs.o: unresolved symbol(s) 
Mar 27 14:10:13 mobile rc.sysinit: Finding module dependencies succeeded 
Mar 27 14:10:13 mobile rc.sysinit: Checking filesystems succeeded 
Mar 27 14:10:14 mobile rc.sysinit: Mounting local filesystems succeeded 
Mar 27 14:10:26 mobile kernel: Linux PCMCIA Card Services 3.1.14 
Mar 27 14:10:26 mobile kernel:   kernel build: 2.2.14 #4 Sat Feb 26 20:47:03 CET 2000 
Mar 27 14:10:26 mobile kernel:   options:  [pci] [cardbus] [apm] [pnp] 
Mar 27 14:10:26 mobile kernel: PCI routing table version 1.0 at 0xfdf80 
Mar 27 14:10:26 mobile kernel: PnP: PNP BIOS installation structure at 0xc00f6cf0 
Mar 27 14:10:26 mobile kernel: PnP: PNP BIOS version 1.0, entry at f0000:b99e, dseg at 400 
Mar 27 14:10:26 mobile kernel: Intel PCIC probe:  
Mar 27 14:10:26 mobile kernel:   Bridge register mapping failed: check cb_mem_base setting 
Mar 27 14:10:26 mobile kernel: not found. 
Mar 27 14:10:26 mobile kernel: ds: no socket drivers loaded! 
Mar 27 14:10:25 mobile crond: crond startup succeeded
Mar 27 14:10:14 mobile rc.sysinit: Turning on user and group quotas for local filesystems succeeded 
Mar 27 14:10:16 mobile date: Mon Mar 27 14:10:16 CEST 2000 
Mar 27 14:10:16 mobile rc.sysinit: Setting clock  (utc): Mon Mar 27 14:10:16 CEST 2000 succeeded 
Mar 27 14:10:16 mobile rc.sysinit: Enabling swap space succeeded 
Mar 27 14:10:16 mobile init: Entering runlevel: 5 
Mar 27 14:10:17 mobile apmd: WARNING: 
Mar 27 14:10:17 mobile apmd:   apmd's internal clock setting has been replaced by the apmd_proxy! 
Mar 27 14:10:17 mobile apmd:   To set the clock to UTC, you must edit the apmd_proxy program. 
Mar 27 14:10:17 mobile apmd:  
Mar 27 14:10:17 mobile apmd: apmd startup succeeded 
Mar 27 14:10:17 mobile apmd[109]: Version 3.0beta9 (APM BIOS 1.2, Linux driver 1.9) 
Mar 27 14:10:18 mobile network: Enabling IPv4 packet forwarding succeeded 
Mar 27 14:10:18 mobile ifup: SIOCADDRT: Network is unreachable 
Mar 27 14:10:20 mobile network: Bringing up interface lo succeeded 
Mar 27 14:10:21 mobile ifup: Delaying eth0 initialization. 
Mar 27 14:10:21 mobile network: Bringing up interface eth0 failed 
Mar 27 14:10:21 mobile portmap: portmap startup succeeded 
Mar 27 14:10:21 mobile netfs: Mounting other filesystems succeeded 
Mar 27 14:10:22 mobile random: Initializing random number generator succeeded 
Mar 27 14:10:25 mobile pcmcia: Starting PCMCIA services:
Mar 27 14:10:26 mobile pcmcia:  modules
Mar 27 14:10:26 mobile pcmcia: /lib/modules/2.2.14/pcmcia/i82365.o: 
Mar 27 14:10:26 mobile pcmcia: init_module: Device or resource busy
Mar 27 14:10:26 mobile pcmcia: 
Mar 27 14:10:28 mobile pcmcia:  cardmgr.
Mar 27 14:10:29 mobile pcmcia: /lib/modules/2.2.14/pcmcia/ds.o: init_module: Device or resource busy
Mar 27 14:10:29 mobile rc: Starting pcmcia succeeded
Mar 27 14:10:27 mobile cardmgr[330]: starting, version is 3.1.14
Mar 27 14:10:30 mobile inet: inetd startup succeeded
Mar 27 14:10:30 mobile cardmgr[330]: no pcmcia driver in /proc/devices
Mar 27 14:10:30 mobile cardmgr[330]: exiting
Mar 27 14:10:31 mobile lpd: lpd startup succeeded

4.2. Data from sucessful attempt to load PCMCIA support (PCMCIA-CS-3.1.10)
 
Mar 27 13:23:08 mobile syslogd 1.3-3: restart.
Mar 27 13:23:08 mobile syslog: syslogd startup succeeded
Mar 27 13:23:08 mobile syslog: klogd startup succeeded
Mar 27 13:23:08 mobile kernel: klogd 1.3-3, log source = /proc/kmsg started.
Mar 27 13:23:08 mobile kernel: Inspecting /boot/System.map-2.2.14
Mar 27 13:23:09 mobile kernel: Loaded 7991 symbols from /boot/System.map-2.2.14.
Mar 27 13:23:09 mobile kernel: Symbols match kernel version 2.2.14.
Mar 27 13:23:09 mobile kernel: No module symbols loaded.
Mar 27 13:23:09 mobile kernel: Linux version 2.2.14 (root@mobile) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #4 Sat Feb 26 20:47:03 CET 2000 
Mar 27 13:23:09 mobile kernel: Detected 265463312 Hz processor. 
Mar 27 13:23:09 mobile kernel: Console: colour VGA+ 80x25 
Mar 27 13:23:09 mobile kernel: Calibrating delay loop... 129.84 BogoMIPS 
Mar 27 13:23:09 mobile kernel: Memory: 62996k/65472k available (1132k kernel code, 412k reserved, 892k data, 40k init) 
Mar 27 13:23:09 mobile kernel: Dentry hash table entries: 8192 (order 4, 64k) 
Mar 27 13:23:09 mobile kernel: Buffer cache hash table entries: 65536 (order 6, 256k) 
Mar 27 13:23:09 mobile kernel: Page cache hash table entries: 16384 (order 4, 64k) 
Mar 27 13:23:09 mobile kernel: VFS: Diskquotas version dquot_6.4.0 initialized 
Mar 27 13:23:09 mobile kernel: CPU: Intel Mobile Pentium MMX stepping 01 
Mar 27 13:23:09 mobile kernel: Checking 386/387 coupling... OK, FPU using exception 16 error reporting. 
Mar 27 13:23:09 mobile kernel: Checking 'hlt' instruction... OK. 
Mar 27 13:23:09 mobile kernel: Intel Pentium with F0 0F bug - workaround enabled. 
Mar 27 13:23:09 mobile kernel: POSIX conformance testing by UNIFIX 
Mar 27 13:23:09 mobile kernel: PCI: PCI BIOS revision 2.10 entry at 0xfda04 
Mar 27 13:23:09 mobile kernel: PCI: Using configuration type 1 
Mar 27 13:23:09 mobile kernel: PCI: Probing PCI hardware 
Mar 27 13:23:09 mobile kernel: PCI: Enabling I/O for device 00:3a 
Mar 27 13:23:09 mobile kernel: Linux NET4.0 for Linux 2.2 
Mar 27 13:23:09 mobile kernel: Based upon Swansea University Computer Society NET3.039 
Mar 27 13:23:09 mobile kernel: NET4: Unix domain sockets 1.0 for Linux NET4.0. 
Mar 27 13:23:09 mobile kernel: NET4: Linux TCP/IP 1.0 for NET4.0 
Mar 27 13:23:09 mobile kernel: IP Protocols: ICMP, UDP, TCP 
Mar 27 13:23:09 mobile kernel: TCP: Hash tables configured (ehash 65536 bhash 65536) 
Mar 27 13:23:09 mobile kernel: Initializing RT netlink socket 
Mar 27 13:23:09 mobile kernel: Starting kswapd v 1.5  
Mar 27 13:23:09 mobile kernel: parport0: PC-style at 0x378 (0x778) [SPP,ECP,ECPPS2] 
Mar 27 13:23:09 mobile kernel: parport0: no IEEE-1284 device present. 
Mar 27 13:23:09 mobile kernel: Detected PS/2 Mouse Port. 
Mar 27 13:23:09 mobile kernel: Serial driver version 4.27 with no serial options enabled 
Mar 27 13:23:09 mobile kernel: ttyS00 at 0x03f8 (irq = 4) is a 16550A 
Mar 27 13:23:09 mobile kernel: ttyS01 at 0x02f8 (irq = 3) is a 16550A 
Mar 27 13:23:09 mobile kernel: ttyS02 at 0x03e8 (irq = 4) is a 16550A 
Mar 27 13:23:09 mobile kernel: pty: 256 Unix98 ptys configured 
Mar 27 13:23:09 mobile kernel: lp0: using parport0 (polling). 
Mar 27 13:23:09 mobile kernel: apm: BIOS version 1.2 Flags 0x03 (Driver version 1.9) 
Mar 27 13:23:09 mobile kernel: Real Time Clock Driver v1.09 
Mar 27 13:23:09 mobile kernel: Non-volatile memory driver v1.0 
Mar 27 13:23:09 mobile kernel: ESS chip ES1879 detected 
Mar 27 13:23:09 mobile kernel: <ESS ES1879 AudioDrive (rev 11) (3.01)> at 0x220 irq 5 dma 1,5 
Mar 27 13:23:09 mobile kernel: PIIX4: IDE controller on PCI bus 00 dev 39 
Mar 27 13:23:09 mobile kernel: PIIX4: not 100% native mode: will probe irqs later 
Mar 27 13:23:09 mobile kernel:     ide0: BM-DMA at 0xfcf0-0xfcf7, BIOS settings: hda:DMA, hdb:pio 
Mar 27 13:23:09 mobile kernel:     ide1: BM-DMA at 0xfcf8-0xfcff, BIOS settings: hdc:pio, hdd:pio 
Mar 27 13:23:09 mobile kernel: hda: FUJITSU MHC2040AT, ATA DISK drive 
Mar 27 13:23:09 mobile kernel: ide2: ports already in use, skipping probe 
Mar 27 13:23:09 mobile kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 
Mar 27 13:23:09 mobile kernel: hda: FUJITSU MHC2040AT, 3909MB w/0kB Cache, CHS=993/128/63, UDMA 
Mar 27 13:23:09 mobile kernel: Floppy drive(s): fd0 is 1.44M 
Mar 27 13:23:09 mobile kernel: FDC 0 is a post-1991 82077 
Mar 27 13:23:09 mobile kernel: scsi0 : SCSI host adapter emulation for IDE ATAPI devices 
Mar 27 13:23:09 mobile kernel: scsi : 1 host. 
Mar 27 13:23:09 mobile kernel: scsi : detected total. 
Mar 27 13:23:09 mobile kernel: PPP: version 2.3.7 (demand dialling) 
Mar 27 13:23:09 mobile kernel: TCP compression code copyright 1989 Regents of the University of California 
Mar 27 13:23:09 mobile kernel: PPP line discipline registered. 
Mar 27 13:23:09 mobile kernel: Partition check: 
Mar 27 13:23:09 mobile kernel:  hda: hda1 hda2 hda3 
Mar 27 13:23:09 mobile kernel: VFS: Mounted root (ext2 filesystem) readonly. 
Mar 27 13:23:09 mobile kernel: Freeing unused kernel memory: 40k freed 
Mar 27 13:23:09 mobile kernel: Adding Swap: 100796k swap-space (priority -1) 
Mar 27 13:23:09 mobile atd: atd startup succeeded
Mar 27 13:22:58 mobile rc.sysinit: Loading default keymap succeeded 
Mar 27 13:22:58 mobile rc.sysinit: Setting default font succeeded 
Mar 27 13:22:58 mobile swapon: swapon: warning: /dev/hda2 has insecure permissions 0660, 0600 suggested 
Mar 27 13:22:58 mobile rc.sysinit: Activating swap partitions succeeded 
Mar 27 13:22:58 mobile rc.sysinit: Setting hostname mobile succeeded 
Mar 27 13:22:58 mobile fsck: /dev/hda3 has reached maximal mount count, check forced. 
Mar 27 13:22:58 mobile fsck: /dev/hda3: 98043/514000 files (6.8% non-contiguous), 1743076/2048001 blocks 
Mar 27 13:22:58 mobile rc.sysinit: Checking root filesystem succeeded 
Mar 27 13:22:58 mobile rc.sysinit: Remounting root filesystem in read-write mode succeeded 
Mar 27 13:22:59 mobile depmod: /lib/modules/2.2.14/pcmcia/parport_cs.o: unresolved symbol(s) 
Mar 27 13:22:59 mobile depmod: /lib/modules/2.2.14/pcmcia/parport_cs.o: unresolved symbol(s) 
Mar 27 13:22:59 mobile rc.sysinit: Finding module dependencies succeeded 
Mar 27 13:23:11 mobile kernel: Linux PCMCIA Card Services 3.1.10 
Mar 27 13:23:11 mobile kernel:   kernel build: 2.2.14 #4 Sat Feb 26 20:47:03 CET 2000 
Mar 27 13:23:11 mobile kernel:   options:  [pci] [cardbus] [apm] [pnp] 
Mar 27 13:23:11 mobile kernel: PCI routing table version 1.0 at 0xfdf80 
Mar 27 13:23:11 mobile kernel: PnP: PNP BIOS installation structure at 0xc00f6cf0 
Mar 27 13:23:11 mobile kernel: PnP: PNP BIOS version 1.0, entry at f0000:b99e, dseg at 400 
Mar 27 13:23:11 mobile kernel: Intel PCIC probe:  
Mar 27 13:23:11 mobile kernel:   Ricoh RL5C478 PCI-to-CardBus at slot 00:0a, mem 0x68000000 
Mar 27 13:23:11 mobile kernel:     host opts [0]: [isa irq] [io 3/6/1] [mem 3/6/1] [no pci irq] [lat 168/176] [bus 32/34] 
Mar 27 13:23:11 mobile kernel:     host opts [1]: [isa irq] [io 3/6/1] [mem 3/6/1] [no pci irq] [lat 168/176] [bus 35/37] 
Mar 27 13:23:11 mobile kernel:     ISA irqs (default) = 11,15 polling interval = 1000 ms 
Mar 27 13:23:10 mobile crond: crond startup succeeded
Mar 27 13:23:00 mobile rc.sysinit: Checking filesystems succeeded 
Mar 27 13:23:00 mobile rc.sysinit: Mounting local filesystems succeeded 
Mar 27 13:23:00 mobile rc.sysinit: Turning on user and group quotas for local filesystems succeeded 
Mar 27 13:23:02 mobile date: Mon Mar 27 13:23:02 CEST 2000 
Mar 27 13:23:02 mobile rc.sysinit: Setting clock  (utc): Mon Mar 27 13:23:02 CEST 2000 succeeded 
Mar 27 13:23:02 mobile rc.sysinit: Enabling swap space succeeded 
Mar 27 13:23:02 mobile init: Entering runlevel: 5 
Mar 27 13:23:03 mobile apmd: WARNING: 
Mar 27 13:23:03 mobile apmd:   apmd's internal clock setting has been replaced by the apmd_proxy! 
Mar 27 13:23:03 mobile apmd:   To set the clock to UTC, you must edit the apmd_proxy program. 
Mar 27 13:23:03 mobile apmd:  
Mar 27 13:23:03 mobile apmd: apmd startup succeeded 
Mar 27 13:23:03 mobile apmd[110]: Version 3.0beta9 (APM BIOS 1.2, Linux driver 1.9) 
Mar 27 13:23:03 mobile network: Enabling IPv4 packet forwarding succeeded 
Mar 27 13:23:04 mobile ifup: SIOCADDRT: Network is unreachable 
Mar 27 13:23:12 mobile kernel: cs: IO port probe 0x1000-0x17ff: clean. 
Mar 27 13:23:12 mobile kernel: cs: IO port probe 0x0a00-0x0aff: clean. 
Mar 27 13:23:06 mobile network: Bringing up interface lo succeeded 
Mar 27 13:23:06 mobile ifup: Delaying eth0 initialization. 
Mar 27 13:23:06 mobile network: Bringing up interface eth0 failed 
Mar 27 13:23:06 mobile portmap: portmap startup succeeded 
Mar 27 13:23:07 mobile netfs: Mounting other filesystems succeeded 
Mar 27 13:23:07 mobile random: Initializing random number generator succeeded 
Mar 27 13:23:10 mobile pcmcia: Starting PCMCIA services:
Mar 27 13:23:10 mobile pcmcia:  modules
Mar 27 13:23:11 mobile pcmcia:  cardmgr.
Mar 27 13:23:11 mobile cardmgr[331]: starting, version is 3.1.10
Mar 27 13:23:12 mobile cardmgr[331]: watching 2 sockets
Mar 27 13:23:11 mobile rc: Starting pcmcia succeeded
Mar 27 13:23:13 mobile inet: inetd startup succeeded
Mar 27 13:23:15 mobile lpd: lpd startup succeeded
Mar 27 13:23:18 mobile sendmail: sendmail startup succeeded
Mar 27 13:23:18 mobile sound: Starting sound configuration: 
Mar 27 13:23:19 mobile sound: sound
Mar 27 13:23:19 mobile sound: 
Mar 27 13:23:19 mobile rc: Starting sound succeeded
Mar 27 13:23:19 mobile linuxconf: Linuxconf final setup
Mar 27 13:23:20 mobile rc: Starting linuxconf succeeded
Mar 27 13:23:20 mobile rc: Starting local succeeded
...
Mar 27 13:50:33 mobile kernel: cs: cb_alloc(bus 35): vendor 0x1011, device 0x0019 
Mar 27 13:50:33 mobile cardmgr[331]: initializing socket 1
Mar 27 13:50:33 mobile cardmgr[331]: socket 1: Linksys EtherFast 10/100
Mar 27 13:50:33 mobile cardmgr[331]: executing: 'insmod /lib/modules/2.2.14/pcmcia/cb_enabler.o'
Mar 27 13:50:33 mobile cardmgr[331]: executing: 'insmod /lib/modules/2.2.14/pcmcia/tulip_cb.o'
Mar 27 13:50:33 mobile kernel: cs: cb_config(bus 35) 
Mar 27 13:50:33 mobile kernel:   fn 0 bar 1: io 0xa00-0xa7f 
Mar 27 13:50:33 mobile kernel:   fn 0 bar 2: mem 0x600c0000-0x600c03ff 
Mar 27 13:50:33 mobile kernel:   fn 0 rom: mem 0x60080000-0x600bffff 
Mar 27 13:50:33 mobile kernel: tulip_attach(bus 35, function 0) 
Mar 27 13:50:33 mobile kernel: tulip.c:v0.91g-ppc 7/16/99 becker@cesdis.gsfc.nasa.gov (modified by danilo@cs.uni-magdeburg.de for XIRCOM CBE, fixed by Doug Ledford) 
Mar 27 13:50:33 mobile kernel: eth0: Digital DS21143 Tulip rev 65 at 0xa00, 00:E0:98:06:76:94, IRQ 11. 
Mar 27 13:50:33 mobile kernel: eth0:  EEPROM default media type Autosense. 
Mar 27 13:50:33 mobile kernel: eth0:  Index #0 - Media MII (#11) described by a 21142 MII PHY (3) block. 
Mar 27 13:50:33 mobile kernel: eth0:  MII transceiver #0 config 3000 status 7809 advertising 01e1. 
Mar 27 13:50:33 mobile cardmgr[331]: executing: './network start eth0'
...
Mar 27 14:00:31 mobile PAM_pwdb[468]: (kde) session closed for user hontsch
Mar 27 14:00:49 mobile sound: Saving sound configuration: 
Mar 27 14:00:49 mobile sound: sound
Mar 27 14:00:49 mobile sound: 
Mar 27 14:00:49 mobile rc: Stopping sound succeeded
Mar 27 14:00:52 mobile sendmail: sendmail shutdown succeeded
Mar 27 14:00:52 mobile inet: inetd shutdown succeeded
Mar 27 14:00:53 mobile atd: atd shutdown succeeded
Mar 27 14:00:53 mobile crond: crond shutdown succeeded
Mar 27 14:00:58 mobile lpd: lpd shutdown succeeded
Mar 27 14:00:58 mobile dd: 1+0 records in
Mar 27 14:00:58 mobile dd: 1+0 records out
Mar 27 14:00:58 mobile random: Saving random seed succeeded
Mar 27 14:00:59 mobile portmap: portmap shutdown succeeded
Mar 27 14:01:00 mobile network: Shutting down interface eth0 succeeded
Mar 27 14:01:00 mobile network: Disabling IPv4 packet forwarding succeeded
Mar 27 14:01:00 mobile apmd[110]: Exiting
Mar 27 14:01:02 mobile apmd: apmd shutdown succeeded
Mar 27 14:01:02 mobile pcmcia: Shutting down PCMCIA services:
Mar 27 14:01:02 mobile cardmgr[331]: executing: './network check eth0'
Mar 27 14:01:02 mobile pcmcia:  cardmgr
Mar 27 14:01:02 mobile cardmgr[331]: shutting down socket 1
Mar 27 14:01:02 mobile cardmgr[331]: executing: './network stop eth0'
Mar 27 14:01:02 mobile cardmgr[331]: executing: 'rmmod tulip_cb'
Mar 27 14:01:02 mobile cardmgr[331]: executing: 'rmmod cb_enabler'
Mar 27 14:01:02 mobile cardmgr[331]: exiting
Mar 27 14:01:04 mobile pcmcia:  modules
Mar 27 14:01:04 mobile kernel: cs: cb_free(bus 35) 
Mar 27 14:01:04 mobile kernel: unloading PCMCIA Card Services 
Mar 27 14:01:04 mobile pcmcia: .
Mar 27 14:01:04 mobile rc: Stopping pcmcia succeeded
Mar 27 14:01:04 mobile kernel: Kernel logging (proc) stopped.
Mar 27 14:01:04 mobile kernel: Kernel log daemon terminating.
Mar 27 14:01:05 mobile syslog: klogd shutdown succeeded
Mar 27 14:01:06 mobile exiting on signal 15

Ok Fixed in beta for 3.1.19

Re: None Bridge register mapping failed: check cb_mem_base setting not found. (Ingo Höntsch)
Date: 2000, Jul 14
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Finally, I tracked this down and fixed it in the 13-Jul-00 beta for 3.1.19.

-- Dave

Question driver for pcmcia V.90 communication device 56K

Re: Ok Fixed in beta for 3.1.19 (David Hinds)
Date: 2000, Jul 14
From: Adauto Cunha <apac@ig.com.br>

is there any kernel or driver that support pcmcia V.90 communication device 56K?

Feedback suggested minor addition to k_compat.c

Date: 2000, Apr 06
From: Eric Smith brouhaha

I've been trying to build the Linux-Lab project's driver for the Computer Boards IEEE-488 card (which should also work on the ICS Electronics card). I ran into a bunch of source files that include k_compat.h, but don't have LINUX_VERSION_CODE defined. I'm going to recommend that they fix that in their code, but it might also be useful to include the following lines (as used in /usr/include/linux/efs_fs.h and other kernel headers) near the top of k_compat.h:

#ifndef LINUX_VERSION_CODE
#include 
#endif

Since there's basically no point in ever trying to use k_compat.h without having the version code defined.

Cheers,
Eric

None I think it's better to fix the original problem

Re: Feedback suggested minor addition to k_compat.c (Eric Smith)
Date: 2000, Apr 06
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I guess I'd argue that since it is always a bug to include k_compat.h
before including something that defines the version, it would not help
to add your #ifdef, because it would only conceal that bug.

-- Dave

None Re: I think it's better to fix the original problem

Re: None I think it's better to fix the original problem (David Hinds)
Date: 2000, Apr 06
From: Eric Smith brouhaha

Dave wrote:
> I guess I'd argue that since it is always a bug to include k_compat.h
> before including something that defines the version, it would not help
> to add your #ifdef, because it would only conceal that bug.

What is the canonical thing that should be included before k_compat.h to
ensure that the version is defined?  And is there some reason why that
header needs to be included other than for the version?  If not, why would
you characterize it as a bug?

In the case of this particular driver (Computer Boards Inc. IEEE-488 card),
it certainly doesn't appear that anything else was missing.

It's no problem for me to patch the driver myself now that I know about the
problem, and maybe the Linux-Lab people will put the change in the next
release.  If the proposed change isn't of value to anyone else, obviously
it shouldn't be made.

None Re: I think it's better to fix the original problem

Re: None Re: I think it's better to fix the original problem (Eric Smith)
Date: 2000, Apr 06
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The canonical thing is to do:

  #include <pcmcia/config.h>
  #include <pcmcia/k_compat.h>

It is a bug, because either a file needs the kernel compatibility
definitions, or it doesn't.  If it doesn't, then it shouldn't include
k_compat.h in the first place.  If it does, then it has to define
VERSION first.  I could change this so that k_compat.h itself does the
#include.  But changing k_compat.h to do nothing if VERSION is not
defined seems pointless.

-- Dave

Warning Change in kernel (2.3.99-pre3) causing problem with cardmgr.

Date: 2000, Apr 06
From: Brian Mays brian

There is a change in the kernel somewhere that is causing a problem: if 2.3.99-pre1 is used things work correctly, but when 2.3.99-pre3 is used cardmgr does things wrong.

Looking at the 2.3.99-pre3 patch, it is apparent that driver has been modified to use the new PCI scheme. I think that this is causing the problem.

Here are the relevant parts of the syslog. In this example, the user is trying to use a network card. Note that "network start 3c575_cb" is run by cargmgr instead of "network start eth0".

  Mar 30 14:28:37 fog kernel: cs: IO port probe 0x0c00-0x0cff: excluding 0xcf8-0xcff
  Mar 30 14:28:37 fog kernel: cs: IO port probe 0x0800-0x08ff: clean.
  Mar 30 14:28:37 fog kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x280-0x287 0x378-0x37f 0x4d0-0x4d7
  Mar 30 14:28:37 fog kernel: cs: IO port probe 0x0a00-0x0aff: clean.
  Mar 30 14:28:38 fog cardmgr[158]: module /lib/modules/2.3.99-pre3/pcmcia/cb_enabler.o not available
  Mar 30 14:28:38 fog cardmgr[158]: executing: 'insmod /lib/modules/2.3.99-pre3/pcmcia/3c575_cb.o'
  Mar 30 14:28:38 fog kernel: 3c575_cb.c:v0.99L+LK1.1.2  3/19/2000  Donald Becker and others  http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html
  Mar 30 14:28:38 fog kernel: eth0: 3Com PCI 3CCFE575CT Cyclone CardBus at 0x1000, PCI: Increasing latency timer of device 02:00.0 to 64
  Mar 30 14:28:38 fog kernel:  00:50:da:85:19:47, IRQ 11
  Mar 30 14:28:38 fog kernel: eth0: CardBus functions mapped 10800080->c8824080
  Mar 30 14:28:38 fog kernel:   8K byte-wide RAM 5:3 Rx:Tx split, MII interface.
  Mar 30 14:28:38 fog kernel:   MII transceiver found at address 0, status 7809.
  Mar 30 14:28:38 fog kernel:   Enabling bus-master transmits and whole-frame receives.
  Mar 30 14:28:38 fog cardmgr[158]: executing: './network start 3c575_cb'
                                                                ^^^^^^^^
  Mar 30 14:28:38 fog cardmgr[158]: + 3c575_cb: error fetching interface information: Device not found
  Mar 30 14:28:38 fog cardmgr[158]: + 3c575_cb: unknown interface.
  Mar 30 14:28:38 fog pumpd[185]: starting at Thu Mar 30 14:28:38 2000  
  Mar 30 14:28:38 fog cardmgr[158]: + Operation failed.

None Unfortunately there is no easy fix; the API is broken

Re: Warning Change in kernel (2.3.99-pre3) causing problem with cardmgr. (Brian Mays)
Date: 2000, Apr 06
From: David Hinds <dhinds@pcmcia.sourceforge.org>

This is a "feature" of the new hot plug API.  There is no workaround
at this time, because there is no mechanism in the new API to pass the
correct device name to cardmgr.

-- Dave

Sad Re: Unfortunately there is no easy fix; the API is broken

Re: None Unfortunately there is no easy fix; the API is broken (David Hinds)
Date: 2000, Apr 20
From: Steven A. DuChene <sad@valinux.com>

Hmm, so does that mean that unless things change drastically one way or the other, laptop users with PCMCIA cards will not be able to migrate to 2.4 when it is released?

This reasoning sounds remarkably similar to the bad feelings surrounding the network driver changes in the late 2.3 kernels and the Donald Becker crafted generic network drivers (like the eepro100 for instance).

I hope this does not degenerate into a similar situation.

Isn't there some sort of compromise that could be reached?

None I don't think the problem is as bad as all that

Re: Sad Re: Unfortunately there is no easy fix; the API is broken (Steven A. DuChene)
Date: 2000, Apr 20
From: David Hinds <dhinds@pcmcia.sourceforge.org>

No bad feelings are involved, as far as I'm concerned.  And there is
nothing preventing laptop users from migrating to 2.4 whenever it is
released.

I still distribute PCMCIA drivers that build correctly on 2.3.99* and
work correctly.  Linus and others made a choice to not include some of
that code in the kernel; I pointed out what the issues were and he
made a decision that I disagreed with, but I respect his decision.  I
think it would be very unfair to criticize me for those choices, and
Linus will tell you the same thing.

Compared to the situation with Donald Becker, I think there are a few
differences.  I'm not fighting a "turf war" here, and I'm not blowing
off PCMCIA because I didn't get my way.  I continue to release timely
updates and continue to give feedback and send contributions to Linus
and other kernel developers.

I said there was no easy fix, because there really is no easy fix, not
because I'm holding out on anyone.  It is not unsolvable, but it also
is not something I can fix on my own (and my solution has already been
explicitly rejected).

-- Dave

Question Problem building 3.1.13 against kernel 2.3.99-pre4

Date: 2000, Apr 10
From: Steve Ward stevewa

Please have patience, this is my first post...

Got the following from make when trying this combination:

>make[1]: Entering directory >`/usr/src/pcmcia-cs-3.1.13/clients'
>cc   -MD -c -O2 -I../include -I/usr/src/linux/include -D__KERNEL__ -DEXPORT_SYMTAB -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -DMODULE -DCARDBUS 3c575_cb.c
>In file included from /usr/src/linux/include/asm/hardirq.h:5,
                 from /usr/src/linux/include/linux/interrupt.h:44,
                 from 3c575_cb.c:76:
/usr/src/linux/include/linux/irq.h:52: requested alignment is not a constant
>In file included from /usr/src/linux/include/linux/interrupt.h:44,
                 from 3c575_cb.c:76:
/usr/src/linux/include/asm/hardirq.h:12: requested alignment is not a constant
>In file included from 3c575_cb.c:76:
/usr/src/linux/include/linux/interrupt.h:152: requested alignment is not a constant
>In file included from 3c575_cb.c:78:
/usr/src/linux/include/linux/netdevice.h:150: requested alignment is not a constant
>In file included from 3c575_cb.c:78:
/usr/src/linux/include/linux/netdevice.h:433: requested >alignment is not a constant
>make[1]: *** [3c575_cb.o] Error 1
>make[1]: Leaving directory `/usr/src/pcmcia-cs-3.1.13/clients'
>make: *** [all] Error 2

It looks like there are other issues with the 2.3.99 series, but I thought I'd add this in as well.

Tried using the in-kernel tree version, which builds correctly, but at boot it doesn't probe for IRQs correctly. It assigns IRQ 0 to both ports on my Sony PCG-F360. I can provide bootup messages if they'd be helpful...

Steve

None Fixed in the current 3.1.14 beta

Re: Question Problem building 3.1.13 against kernel 2.3.99-pre4 (Steve Ward)
Date: 2000, Apr 10
From: David Hinds <dhinds@pcmcia.sourceforge.org>

See /pcmcia/NEW on sourceforge.org.

-- Dave

Sad No joy with 3.1.14 beta

Re: None Fixed in the current 3.1.14 beta (David Hinds)
Date: 2000, Apr 11
From: Steve Ward stevewa

Tried the 4/7 build tonight. System crashes at boot. Locks up tight as a drum, oops info not written to disk...

Here's all I have of the messages during the boot:

>Apr 10 22:51:40 localhost syslogd 1.3-3: restart.
Apr 10 22:51:40 localhost syslog: syslogd startup succeeded
Apr 10 22:51:40 localhost syslog: klogd startup succeeded
Apr 10 22:51:40 localhost kernel: klogd 1.3-3, log source = /proc/kmsg started.
Apr 10 22:51:40 localhost kernel: Inspecting /boot/System.map
Apr 10 22:51:40 localhost kernel: Symbol table has incorrect version number. 
Apr 10 22:51:40 localhost atd: atd startup succeeded
Apr 10 22:51:40 localhost kernel: Inspecting /System.map
Apr 10 22:51:41 localhost kernel: Loaded 13266 symbols from /System.map.
Apr 10 22:51:41 localhost kernel: Symbols match kernel version 2.3.99.
Apr 10 22:51:41 localhost kernel: Loaded 109 symbols from 4 modules.
Apr 10 22:51:41 localhost kernel: Linux version 2.3.99-pre4 (root@localhost.localdomain) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #6 Mon Apr 10 22:38:51 PDT 2000 
Apr 10 22:51:41 localhost kernel: e820: 0009f800 @ 00000000 (usable) 
Apr 10 22:51:41 localhost kernel: e820: 00000800 @ 0009f800 (reserved) 
Apr 10 22:51:41 localhost kernel: e820: 00015c00 @ 000ea400 (reserved) 
Apr 10 22:51:41 localhost kernel: e820: 0bef0000 @ 00100000 (usable) 
Apr 10 22:51:41 localhost kernel: e820: 0000fc00 @ 0bff0000 (ACPI data) 
Apr 10 22:51:41 localhost kernel: e820: 00000400 @ 0bfffc00 (ACPI NVS) 
Apr 10 22:51:41 localhost kernel: e820: 00015c00 @ fffea400 (reserved) 
Apr 10 22:51:41 localhost kernel: Scan SMP from c0000000 for 1024 bytes. 
Apr 10 22:51:41 localhost kernel: Scan SMP from c009fc00 for 1024 bytes. 
Apr 10 22:51:41 localhost kernel: Scan SMP from c00f0000 for 65536 bytes. 
Apr 10 22:51:41 localhost kernel: Scan SMP from c009f800 for 4096 bytes. 
Apr 10 22:51:41 localhost kernel: On node 0 totalpages: 49136 
Apr 10 22:51:41 localhost kernel: zone(0): 4096 pages. 
Apr 10 22:51:41 localhost kernel: zone(1): 45040 pages. 
Apr 10 22:51:41 localhost kernel: zone(2): 0 pages. 
Apr 10 22:51:41 localhost kernel: mapped APIC to ffffe000 (01363000) 
Apr 10 22:51:41 localhost kernel: Initializing CPU#0 
Apr 10 22:51:41 localhost kernel: Detected 397899343 Hz processor. 
Apr 10 22:51:41 localhost kernel: Console: colour VGA+ 80x25 
Apr 10 22:51:41 localhost kernel: Calibrating delay loop... 794.62 BogoMIPS 
Apr 10 22:51:41 localhost kernel: Memory: 190416k/196544k available (1430k kernel code, 5740k reserved, 96k data, 172k init, 0k highmem) 
Apr 10 22:51:41 localhost kernel: Buffer-cache hash table entries: 8192 (order: 3, 32768 bytes) 
Apr 10 22:51:41 localhost kernel: Page-cache hash table entries: 65536 (order: 6
, 262144 bytes) 
Apr 10 22:51:41 localhost crond: crond startup succeeded
Apr 10 22:51:41 localhost kernel: CPU: Intel Mobile Pentium II stepping 0d 
Apr 10 22:51:41 localhost kernel: Checking 386/387 coupling... OK, FPU using exc
eption 16 error reporting. 
Apr 10 22:51:41 localhost kernel: Checking 'hlt' instruction... OK. 
Apr 10 22:51:41 localhost kernel: POSIX conformance testing by UNIFIX 
Apr 10 22:51:41 localhost kernel: mtrr: v1.36 (20000221) Richard Gooch (rgooch@a
tnf.csiro.au) 
Apr 10 22:51:41 localhost kernel: PCI: PCI BIOS revision 2.10 entry at 0xfd9e4 
Apr 10 22:51:41 localhost kernel: PCI: Probing PCI hardware 
Apr 10 22:51:41 localhost kernel: PCI: Interrupt Routing Table found at 0xc00fdf
60 [router type 8086/122e] 
Apr 10 22:51:41 localhost kernel: Limiting direct PCI/PCI transfers. 
Apr 10 22:51:41 localhost kernel: isapnp: Scanning for Pnp cards... 
Apr 10 22:51:41 localhost kernel: isapnp: No Plug & Play device found 
Apr 10 22:51:41 localhost kernel: Linux NET4.0 for Linux 2.3 
Apr 10 22:51:41 localhost kernel: Based upon Swansea University Computer Society
 NET3.039 
Apr 10 22:51:41 localhost kernel: NET4: Unix domain sockets 1.0/SMP for Linux NE
T4.0. 
Apr 10 22:51:41 localhost kernel: NET4: Linux TCP/IP 1.0 for NET4.0 
Apr 10 22:51:41 localhost kernel: IP Protocols: ICMP, UDP, TCP 
Apr 10 22:51:41 localhost kernel: IP: routing cache hash table of 1024 buckets, 
8Kbytes 
Apr 10 22:51:41 localhost kernel: TCP: Hash tables configured (established 16384
 bind 16384) 
Apr 10 22:51:41 localhost kernel: microcode: can't create /dev/cpu/microcode 
Apr 10 22:51:41 localhost kernel: ACPI: " SONY" found at 0x000f6d90 
Apr 10 22:51:41 localhost kernel: Starting kswapd v1.6 
Apr 10 22:51:41 localhost kernel: 0x378: FIFO is 16 bytes 
Apr 10 22:51:41 localhost kernel: 0x378: writeIntrThreshold is 8 
Apr 10 22:51:41 localhost kernel: 0x378: readIntrThreshold is 8 
Apr 10 22:51:27 localhost rc.sysinit: Mounting proc filesystem succeeded 
Apr 10 22:51:41 localhost pcmcia: Starting PCMCIA services:
Apr 10 22:51:27 localhost sysctl: error: 'net.ipv4.ip_always_defrag' is an unkno
wn key 
Apr 10 22:51:27 localhost sysctl: net.ipv4.ip_forward = 0 
Apr 10 22:51:27 localhost sysctl: net.ipv4.conf.all.rp_filter = 1 
Apr 10 22:51:41 localhost kernel: parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE,ECP] 
Apr 10 22:51:27 localhost sysctl: kernel.sysrq = 0 
Apr 10 22:51:41 localhost kernel: parport0: irq 7 detected 
Apr 10 22:51:27 localhost rc.sysinit: Configuring kernel parameters succeeded 
Apr 10 22:51:27 localhost date: Mon Apr 10 22:51:26 PDT 2000 
Apr 10 22:51:27 localhost rc.sysinit: Setting clock : Mon Apr 10 22:51:26 PDT 2000 succeeded 
Apr 10 22:51:27 localhost rc.sysinit: Loading default keymap succeeded 
Apr 10 22:51:41 localhost kernel: pty: 256 Unix98 ptys configured 
Apr 10 22:51:27 localhost rc.sysinit: Activating swap partitions succeeded 

Any ideas or if I can provide any more info please let me know. Still learning...

Steve

None Re: Sad: No joy with 3.1.14 beta

Re: Sad No joy with 3.1.14 beta (Steve Ward)
Date: 2000, Apr 11
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Can you compare with behavior under a 2.2.* kernel?  It's very hard to
make sense out of problem reports for 2.3.* unless I can compare with
a known quantity.

With 2.3.*, can you boot in single user mode, then load the PCMCIA
modules one by one (pcmcia_core, then i82365, then ds), then start
cardmgr?  That would at least tell you which module is causing
trouble.  Did you build the 2.3.* kernel with the in-kernel PCMCIA
support turned on, or off?

-- Dave

More Very odd behavior now

Re: None Re: Sad: No joy with 3.1.14 beta (David Hinds)
Date: 2000, Apr 12
From: Steve Ward stevewa

OK, I tried this version (4/7/00) on 2.2.14-5 (RedHat 6.2) kernel and it works fine. Then I tried to run it under 2.3.99-pre4-5 going from single user as you suggest, and it works! But if I reboot and let the system go to runlevel 3 or 5 automatically, it still oopses.

There must be some sort of configuration change since the version bundled in RH6.2 or else there is a timing problem during initialization which shows up with a reasonably fast machine like this one (400MHz).

Note Additional Information.

Re: More Very odd behavior now (Steve Ward)
Date: 2000, Apr 12
From: Steve Ward stevewa

I tried adding sleep 10 commands in between each of the insmod statements as well as the cardmgr statement in the /etc/rc.d/init.d/pcmcia script, to no avail. As long as I type in the commands by hand in single user they work, and if I try to run the script either during boot to multi-user or by hand while in single user the result is still an oops. It appears it might be happening at the loading of the i82365 driver...

Steve

Sad 2.3.99-pre5 + Apr-06 errors + odd BogoMIPS

Re: None Fixed in the current 3.1.14 beta (David Hinds)
Date: 2000, Apr 14
From: Cosmo cosmo

I too have problems compiling the latest BETA code into
2.3.99-pre5. I get the same errors when trying to compile the 
3c575_cb.c driver. Seems to be a problem with the include
path?

Also, for those who have got it to compile but get strange
hangs, have you noticed that on booting 2.3.99 you get a
different (X2) value for BogoMIPS reported:

First 2.2.14 then 2.3.99:

Apr 12 18:12:39 koetsu kernel: Calibrating delay loop... 398.95 BogoMIPS
Apr 12 18:57:40 koetsu kernel: Calibrating delay loop... 797.90 BogoMIPS  

Would this mess up timing loops and cause odd hang problems?
(Wish I could get this far ;-)





Cosmo
--
cosmo@informix.com

None The 06-Apr beta is not the newest; use 3.1.14

Re: Sad 2.3.99-pre5 + Apr-06 errors + odd BogoMIPS (Cosmo)
Date: 2000, Apr 14
From: David Hinds <dhinds@pcmcia.sourceforge.org>

There was also a 07-Apr beta, but now, the 3.1.14 release is out and
supercedes all the betas.  It builds cleanly against 2.3.99-pre5, as
far as I can tell.

The BogoMIPS values are irrelevant, the way they were calculated was
changed.  See the linux-kernel list for more discussion.

-- Dave

Question can i rewrite the manufacturer id?

Date: 2000, Apr 17
From: Paul Fox pgf

can i overwrite the manufacturer id on a card?

olympus cameras have at least one feature that won't
work unless you're using an olympus card -- the id
must read:
	  product info: "OLYMPUS", "PAN ", "1.0"
whereas a generic card looks like:
	  product info: "       ", "    ", "0.0"

apparently it's physically possible to change the data,
because someone has written a utility to do it if you
have a diamond rio mp3 player (of all things!).  i don't
see any specific interfaces in the driver to allow this --
is it possible at all?

paul

None We probably don't have an appropriate driver

Re: Question can i rewrite the manufacturer id? (Paul Fox)
Date: 2000, Apr 17
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The information is in a nonvolatile memory chip on the card. The Linux PCMCIA package has some drivers for flash memory chips, but I haven't done any EEPROM drivers. This is likely to be an EEPROM.

So I don't think you can do it with the existing linux memory card drivers.

-- Dave

Question Any Card Phone Driver..?

Date: 2000, Apr 24
From: JohnHW

pls forgive my poor english..

Is there any driver for a card phone(GSM/CDMA) out there..?
I really need one..

thx

Question Problems with kernel debugging with ikd

Date: 2000, Apr 27
From: Janne Salmi janski

Hello,

I am trying to use ikd kernel debugger in a laptop with the PCMCIA package installed. Is this possible at all? I have tried kernel 2.2.13 with pcmcia-cs 3.1.9 and 3.1.13 and kernel 2.2.14 with pcmcia-cs 3.1.14.

So far, I can load ds.o i82365.o and pcmcia_core.o with no problem. When I insert a card, I get dropped in the debugger:

<4>Entering kdb due to panic @ 0xc0113d8d
<4>eax = 0xc3efba90  ebx = 0x000051e6  ecx = 0x00000000  edx = 0x00000001
<4>esi = 0xc3efba8c  edi = 0x00000004  esp = 0x00000000  eip = 0xc0113d8d
<4>ebp = 0xc0239ec0   ss = 0x00000004   cs = 0x00000010  eflags = 0x00010217
<4> ds = 0x00000018   es = 0x00000018  origeax = 0xffffffff  &regs = 0xc0239e80
<4>kdb>     EBP       EIP         Function(args)
<4>0xc0239ec0 0xc0113d8d  __wake_up+0x1d( 0xc3efba90, 0x4, 0x0, 0xc0239ee4, 0xc)
<4>0xc0239ed4 0xc4823384  unregister_pccard_driver+0x1ec( 0xc3b15bf0, 0x4, 0xc0)
<4>0xc0239ee4 0xc4823488  unregister_pccard_driver+0x2f0( 0x4)
<4>0xc0239f04 0xc480c6fe  unregister_ss_entry+0x4c2( 0xc3cc4800)
<4>0xc0239f24 0xc480c652  unregister_ss_entry+0x416( 0x0)
<4>0xc0239f48 0xc0114a2d  timer_bh+0x32d( )
<4>0xc0239f58 0xc011ba09  do_bottom_half+0x49( )
<4>0xc0239f78 0xc0113ccc  schedule+0x1dc( )
<4>0xc0239f84 0xc0108469  hard_idle+0x49( 0xc0238000, 0x98800, 0xc0106000)
<4>0xc0239f98 0xc01084bd  cpu_idle+0x18ad( 0x0)
<4>0xc0239fa4 0xc0108507  sys_idle+0x17( 0x0, 0x0, 0x1, 0x98800, 0xc0106000)
<4>0xc0239fe0 0xc0109df4  system_call+0x34( 0x0)
<4>0xc0239ff8 0xc0106dca  start_kernel+0x19a( 0x0, 0xc021f778, 0xc02201bc, 0x0,)
<4>0x0 0xc0100176  L6

If I continue, I get the following Oops:

<4>kdb> Oops: 0000
<4>CPU:    0
<4>EIP:    0010:[<c0113d8d>]
<4>EFLAGS: 00010217
<4>eax: c3efba90   ebx: 000051e6   ecx: 00000000   edx: 00000001
<4>esi: c3efba8c   edi: 00000004   ebp: c0239ec0   esp: c0239ebc
<4>ds: 0018   es: 0018   ss: 0018
<4>Process swapper (pid: 0, process nr: 0, stackpage=c0239000)
<4>Stack: c3b15bf0 c0239ed4 c4823384 c3efba90 00000004 00000000 c0239ee4 c48234
<4>       c3b15bf0 00000004 c0239f04 c480c6fe 00000004 00000000 c3efbacc c3cc48
<4>       00000000 00000075 c0239f24 c480c652 c3cc4800 00000004 00000000 000000
<4>Call Trace: [<c4823384>] (0) [<c4823488>] (20) [<c480c6fe>] (16) [<c480c652>
<4>       [<c0108469>] (32) [<c01084bd>] (12) [<c0108507>] (20) [<c0109df4>] (1
<4>Code: 8b 13 8b 5b 04 8b 02 85 c7 74 f1 39 f3 74 0b 52 e8 0e f9 ff
<4>Aiee, killing interrupt handler
<0>Kernel panic: Attempted to kill the idle task!      
<0>In swapper task - not syncing

This happens with a WaveLAN IEEE802.11 card and 3COM 3CCFE574BT ethernet card. If I don't have the ikd patch installed, this does not happen.

I get the same panic if try to use the PCMCIA package with a patch of my own that adds a simple character device driver, but it happens more randomly. It seems the problem is with wait_queue handling, but is the problem in ds.c or both in my code and ikd? It seems that ds.c initializes its wait_queue to NULL, so does my code. Any ideas? Just in case the ksymoops output is of any help, I'll include it below.

Any hints would be appreciated.

ksymoops output follows:

Warning in compare_ksyms_lsmod, module i82365 is in lsmod but not in ksyms, probably no symbols exported
Oops: 0000
CPU:    0
EIP:    0010:[<c0113d8d>]
EFLAGS: 00010217
eax: c3efba90   ebx: 000051e6   ecx: 00000000   edx: 00000001
esi: c3efba8c   edi: 00000004   ebp: c0239ec0   esp: c0239ebc
ds: 0018   es: 0018   ss: 0018
Process swapper (pid: 0, process nr: 0, stackpage=c0239000)
Stack: c3b15bf0 c0239ed4 c4823384 c3efba90 00000004 00000000 c0239ee4 c4823488
       c3b15bf0 00000004 c0239f04 c480c6fe 00000004 00000000 c3efbacc c3cc4800
       00000000 00000075 c0239f24 c480c652 c3cc4800 00000004 00000000 00000000
Call Trace: [<c4823384>] (0) [<c4823488>] (20) [<c480c6fe>] (16) [<c480c652>] (
       [<c0108469>] (32) [<c01084bd>] (12) [<c0108507>] (20) [<c0109df4>] (12)
Code: 8b 13 8b 5b 04 8b 02 85 c7 74 f1 39 f3 74 0b 52 e8 0e f9 ff

>>EIP: c0113d8d <__wake_up+1d/50>

Trace: c4823384 <handle_event+34/3c>
Trace: c0108469 <hard_idle+49/60>
Code: c0113d8d <__wake_up+1d/50> 00000000 <_EIP>: <=== Code: c0113d8d <__wake_up+1d/50> 0: 8b 13 movl (%ebx),%edx <=== Code: c0113d8f <__wake_up+1f/50> 2: 8b 5b 04 movl 0x4(%ebx),%ebx Code: c0113d92 <__wake_up+22/50> 5: 8b 02 movl (%edx),%eax Code: c0113d94 <__wake_up+24/50> 7: 85 c7 testl %eax,%edi Code: c0113d96 <__wake_up+26/50> 9: 74 f1 je c0113d89 <__wake_up+19/50> Code: c0113d98 <__wake_up+28/50> b: 39 f3 cmpl %esi,%ebx Code: c0113d9a <__wake_up+2a/50> d: 74 0b je c0113da7 <__wake_up+37/50> Code: c0113d9c <__wake_up+2c/50> f: 52 pushl %edx Code: c0113d9d <__wake_up+2d/50> 10: e8 0e f9 ff 00 call c11136b0 <_end+eba27c/45b2c1c>

Aiee, killing interrupt handler Kernel panic: Attempted to kill the idle task! In swapper task - not syncing

None I have not tried it recently, but it should work

Re: Question Problems with kernel debugging with ikd (Janne Salmi)
Date: 2000, Apr 27
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I have not tried using ikd recently, but have used it in... hmmm... at
least the past year and did not notice a problem with PCMCIA at that
time.  I can't think of a good reason why ikd and PCMCIA would be
incompatible.

Looking at ds.c, I do not initialize wait_queue heads to NULL (which
would be a bad bad thing, for a 2.2 kernel).  They are initialized
with init_waitqueue, though it's a bit non-obvious because of how the
kernel compatibility stuff is handled in k_compat.h. 

-- Dave

None Re: I have not tried it recently, but it should work

Re: None I have not tried it recently, but it should work (David Hinds)
Date: 2000, Apr 28
From: Janne Salmi janski

>>>>> "David" == David Hinds <dhinds@valinux.com> writes:

David> Looking at ds.c, I do not initialize wait_queue heads to NULL (which
David> would be a bad bad thing, for a 2.2 kernel).  They are initialized
David> with init_waitqueue, though it's a bit non-obvious because of how the
David> kernel compatibility stuff is handled in k_compat.h. 

Oh, I somehow misread it.  Ick, it seems I have been out of date quite
badly... this would explain why my own character device causes
problems.  I had just been reading examples from old code and totally
missed the current init_waitqueue definition in <linux/wait.h>.

Now that you pointed this out, it seems that e.g. drivers/char/pc_keyb.c in
2.2.x kernels initializes its wait_queue head to NULL. Do you think
this can cause problems?

Question Direct (no chipset) PCMCIA support

Date: 2000, Apr 27
From: Richard Smith smithbone

I am developing a product for a customer that requires wirless access. We want to interface directly to a webgear Aviator 2.4 LAN card.

The trick is that we want to use a DSP to talk to it and we would like to do it without using a chipset.

I know this isn't really linux related but I might be able to contribute some knowledge back the specific card driver since I will have the hardware to play with and intimate knowledge of working with the card.

Anyone got any ideas how complex this will be and perhaps some pointers on good info. PCMCIA want $300 for a copy of the spec. Ack. and we probally need 90% of it.

All I need to do is talk to the card. No hot swap, notifiers or anything like that. Just set it up and send/receive data to it.

So how crazy are we?

None Not an unreasonable thing to try

Re: Question Direct (no chipset) PCMCIA support (Richard Smith)
Date: 2000, Apr 27
From: David Hinds <dhinds@pcmcia.sourceforge.org>

I don't think it is particularly crazy.  I've heard of similar things;
for instance, ATA/IDE cards that can either be used as PCMCIA cards,
or connected directly to an ISA bus with no glue logic.  Some embedded
processors implement PCMCIA support by having a few general purpose IO
lines that are used for PCMCIA chip selects, and then hooking up their
regular address and data bus to the PCMCIA connector.

As for information you would need, it seems likely that you would want
the electrical spec from the PCMCIA standards.  Datasheets for PCMCIA
bridges will also cover a lot of this, including pinouts and timing
diagrams.

-- Dave

Ok Thanks for the support

Re: None Not an unreasonable thing to try (David Hinds)
Date: 2000, Apr 28
From: Richard Smith smithbone

Good to know you think its reasonable. I was afraid that you were going to say.. What? No way dude thats why they make chipsets for it.

I was hopeing not to have to purchase the PCMCIA spec.. It's expensive ($300) and usually you still have to end up getting additional explanation of those things from other sources. Why do they make the specs so expensive? Sigh.

Perhaps I can get the info I need from the bridge chips datasheets. All I really need is a description of what signals go where and a basic timing diagram.

Any particular bridge chips that stand out in your memory that I should look at first?

Anyone have any books to recommend? Amazon & BN have a couple that look ok but I was hoping to get a recommendation.

None Re: Ok: Thanks for the support

Re: Ok Thanks for the support (Richard Smith)
Date: 2000, Apr 28
From: David Hinds <dhinds@pcmcia.sourceforge.org>

There is a link on the Linux PCMCIA site to a set of datasheets you
can look at.  Any of them should include pinouts and basic timing
diagrams; you will probably want to compare several because they will
have somewhat different coverage.  I would just grab one from several
of the vendor groups.

For books, I have Michael Mori's PCMCIA Developer's Guide and it is
pretty good, though the level of detail isn't high enough to design
hardware.  I think it is about $80.

-- Dave

Question 2.2.14 vs USB Backpatch

Date: 2000, May 02
From: Stephen Sanders <ssanders@cysive.com>

I probably know the answer this BUT has anyone attempted to get the USB Backpatch code to work with any recent version of the PCMCIA build system? I've got a Dell 7500 running RedHat 6.2 and would really like to get the USB cranked up. The problem looks to be in adding another 'client' to the build.

Thanks, Stephen Sanders

Sad kernel oops when ejecting aviator card

Date: 2000, May 09
From: Justin Cormack jpc

I am getting a kernel oops when I do cardctl eject with my
Aviator 2.4 wireless ethernet card.

uname -a is
Linux herring.doc.ic.ac.uk 2.2.15 #2 Tue May 9 14:51:31 BST 2000 i586 unknown

pcmcia-cs is 3.3.14

card info on insert is:
May  9 19:47:27 herring kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean. 
May  9 19:47:27 herring cardmgr[364]: initializing socket 0
May  9 19:47:27 herring cardmgr[364]: socket 0: RayLink PC Card WLAN Adapter
May  9 19:47:27 herring cardmgr[364]: executing: 'insmod /lib/modules/2.2.15/pcmcia/ray_cs.o'
May  9 19:47:28 herring kernel:  ray_cs.c,v 1.11 2000/04/04 23:14:18 root Exp - Corey Thomas corey@world.std.com 
May  9 19:47:28 herring kernel: ray_cs Detected: WebGear PC Card WLAN Adapter Version 4.88 Jan 1999 
May  9 19:47:28 herring kernel: eth0: RayLink, irq 10, hw_addr 00:00:F1:11:1D:60 
May  9 19:47:28 herring cardmgr[364]: executing: './network start eth0'

then on cardctl eject:
May  9 17:21:41 herring kernel: Process cardmgr (pid: 333, process nr: 16, stackpage=c562b000) 
May  9 17:21:40 herring cardmgr[333]: executing: './network check eth0'
May  9 17:21:40 herring cardmgr[333]: shutting down socket 0
May  9 17:21:41 herring kernel: *pde = 05fda063 
May  9 17:21:41 herring kernel: *pte = 00000000 
May  9 17:21:41 herring kernel: Oops: 0000 
May  9 17:21:41 herring kernel: CPU:    0 
May  9 17:21:41 herring kernel: EIP:    0010:[sb:sb_be_quiet+350845/35843347] 
May  9 17:21:41 herring kernel: EFLAGS: 00010286 
May  9 17:21:41 herring kernel: eax: c560bd80   ebx: c32a2800   ecx: c627a100   edx: c6275c90 
May  9 17:21:41 herring kernel: esi: c627a100   edi: c01f124d   ebp: c562bc24   esp: c562bc24 
May  9 17:21:41 herring kernel: ds: 0018   es: 0018   ss: 0018 
May  9 17:21:41 herring kernel: Process cardmgr (pid: 333, process nr: 16, stackpage=c562b000) 
May  9 17:21:41 herring kernel: Stack: c560b900 c015fb93 c560b900 c5ae8320 c560b900 00000282 c562bcb0 c01f1248  
May  9 17:21:41 herring kernel:        00000005 000005dc c015fd70 c5ae8320 c560b900 00000011 00000000 00000000  
May  9 17:21:41 herring kernel:        ffffffff c01f11c0 c016027c 00000011 c560b900 c015d3f0 c01f11c0 00000006  
May  9 17:21:41 herring kernel: Call Trace: [rtnetlink_fill_ifinfo+551/648] [rtmsg_ifinfo+44/104] [rtnetlink_event+24/32] [unregister_netdevice+60/192] [unregister_netdev+16/32] [sb:sb_be_quiet+344336/35849856] [sb:sb_be_quiet+165310/36028882]  
May  9 17:21:41 herring kernel:        [sb:sb_be_quiet+167566/36026626] [getblk+271/324] [refile_buffer+86/184] [__brelse+19/84] [ext2_new_block+2224/2312] [alloc_skb+113/220] [sock_wmalloc+35/72] [memcpy_fromiovec+57/104]  
May  9 17:21:41 herring kernel:        [wake_up_process+58/68] [__wake_up+59/72] [add_blkdev_randomness+70/80] [end_that_request_last+40/44] [ide_end_request+97/108] [ide_intr+273/304] [ide_dma_intr+0/148] [handle_IRQ_event+54/108]  
May  9 17:21:41 herring kernel:        [do_8259A_IRQ+119/168] [do_8259A_IRQ+149/168] [do_IRQ+36/64] [merge_segments+27/364] [free_pages+36/40] [do_wp_page+218/420] [handle_mm_fault+283/324] [do_page_fault+278/944]  
May  9 17:21:41 herring kernel:        [sys_ioctl+421/448] [system_call+52/56]  May  9 17:21:41 herring kernel: Code: 8a 01 84 c0 74 23 8d 56 04 81 ca 00 00 00 c0 8a 02 25 ff 00  

None Problem solved

Re: Sad kernel oops when ejecting aviator card (Justin Cormack)
Date: 2000, May 11
From: David Hinds <dhinds@pcmcia.sourceforge.org>

It is fixed in the 10-May-00 beta on sourceforge.org in /pcmcia/NEW
(and the fix will be in 3.1.15).  The problem only shows up if you
build a kernel with CONFIG_RTNETLINK turned on.

-- Dave

None Yenta?

Date: 2000, May 16
From: Jürgen Botz jbotz

In the 2.3.99 kernels, am I correct that the yenta module is a replacement for the i82365 module on machines with cardbus support? If so, or in any case, how do I use it? After loading yenta.o, ds.o fails to load with "no socket driver".

- Jurgen

None Re: Yenta?

Re: None Yenta? (Jürgen Botz)
Date: 2000, May 16
From: David Hinds <dhinds@pcmcia.sourceforge.org>

For at least some 2.3.99 kernels, you need to load both yenta.o and
pci_socket.o.

-- Dave

Sad system hang upon pcmcia subsystem start

Date: 2000, May 31
From: Tonko de Rooy tderooy

Hi

I have a IBM ThinkPad 770X with a TI1251A.
I have been using this machine with varies Redhat Linux versions (6.0-6.2) and have always compiled my own kernels and hence PCMCIA packages.

Now since I upgraded to RedHat 6.2 and then compiled my own kernel (2.2.14, 2.2.15 or 2.2.16pre6) and compile the PCMCIA package (3.1.14 or 3.1.15) and load the pcmcia subsystem the system effectively hangs. I can still when I'm in textmode switch consoles and try to login but it looks like that any atempt to access the harddisk hangs.

I compile the PCMCIA package with isa pnp and cardbus support, as I have a 10/100Mb cardbus card. This always used to work in the past without problems.

With RH 6.2 the only way for me to have PCMCIA working at current is to use the standard pre-compiled kernel and pcmcia package that comes with redhat. And that is giving me a lot of problems as the default APM options are wrong for this machine.

The PCMCIA version (3.1.8) that RedHat supplies with 6.2 prints the following:

Linux PCMCIA Card Services 3.1.8
  kernel build: 2.2.14-12 #1 Tue Apr 25 13:04:07 EDT 2000
  options: [pci] [cardbus] [apm]
Intel PCIC probe:
  TI 1251A PCI-to-CardBus at bus 0 slot 2, mem 0x50103000, 2 sockets
  host opts [0]: [ring] [pwr save] [isa irq] [no pci irq] [lat 168/176] [bus 2/4]
  host opts [1]: [ring] [pwr save] [isa irq] [no pci irq] [lat 168/176] [bus 5/7]
  ISA irqs (scanned) = 3,4,7,9,10 polling interval = 1000 ms
cs: IO port probe 0x1000-0x17ff: excluding 0x15e8-0x15ef
cs: IO port probe 0x0100-0x04ff: excluding 0x220-0x22f 0x4d0-0x4d7
cs: IO port probe 0x0a00-0x0aff: clean.

None Re: Sad: system hang upon pcmcia subsystem start

Re: Sad system hang upon pcmcia subsystem start (Tonko de Rooy)
Date: 2000, May 31
From: David Hinds <dhinds@pcmcia.sourceforge.org>

A quick fix might be to just build the 3.1.8 PCMCIA driver release for
your new kernel.

The interrupt configuration code in post-3.1.8 packages is somewhat
different and is the most likely issue.  I assume that you are getting
hangs whether or not your CardBus card is inserted; you should check
that.  I'm surprised that you're having trouble, though, because the
Thinkpads tend to be well behaved (and I do my development mostly on a
770 series).

There are some suggestions for debugging startup problems in the
PCMCIA-HOWTO.  I'd probably start by trying to load the pcmcia_core
and i82365 modules by hand, with kernel messages sent to the console,
to see exactly where the lockup happens.

Then I'd try setting:

    PCIC_OPTS="do_scan=0"

in /etc/sysconfig/pcmcia.

-- Dave

Question it now works

Re: None Re: Sad: system hang upon pcmcia subsystem start (David Hinds)
Date: 2000, Jun 04
From: Tonko de Rooy tderooy

Hi,

For some strange reason it now works. I recompiled the 2.2.16pre6 kernel and pcmcia 3.1.15 and it all loads and works again perfectly.

here is what gets printed now to syslog:

Linux PCMCIA Card Services 3.1.15
  kernel build: 2.2.16pre6 #1 Wed May 31 11:33:44 BST 2000
  options:  [pci] [cardbus] [apm] [pnp]
PCI routing table version 1.0 at 0xf9f80
PnP: PNP BIOS installation structure at 0xc00fe700
PnP: PNP BIOS version 1.0, entry at f0000:e724, dseg at f0000
Intel PCIC probe: 
  TI 1251A rev 00 PCI-to-CardBus at slot 00:02, mem 0x50103000
    host opts [0]: [ring] [isa irq] [pci irq 11] [lat 168/176] [bus 2/4]
    host opts [1]: [ring] [isa irq] [pci irq 11] [lat 168/176] [bus 5/7]
    ISA irqs (scanned) = 3,4,9,10 PCI status changes
cs: IO port probe 0x1000-0x17ff: clean.
cs: IO port probe 0x0100-0x04ff: clean.
cs: IO port probe 0x0a00-0x0aff: clean.
cs: memory probe 0xa0000000-0xa0ffffff: excluding 0xa0000000-0xa0ffffff
cs: memory probe 0x60000000-0x60ffffff: clean.

The only thing left is that I get a error when running depmod on epic_cb. Here is what depmod -ae tells me:

depmod: *** Unresolved symbols in /lib/modules/2.2.16pre6/pcmcia/epic_cb.o
depmod:         epic100_probe
But this is a longer standing problem. I always have this problem when I compile my own kernel and modules. And as I have no idea what epic_cb is, I probably don't need it and don't need to worry to much about the error.

Question Error reading CIS with a Long Link Tuple to Common Memory

Date: 2000, Jun 22
From: Dani Castro Dani

Hi, I hope anybody can help me. My problem is with the CIS of a card with a long_link tuple to common memory.

When I insert the card, the tuples in attribute memory are read correctly, but when it tries to follow the link, the link target tuple is read incorrectly:

It reads 0x13 0x13 0x43 0x43 0x53 when it should be 0x13 0x03 0x43 0x49 0x53

I could attach the cs_memory driver to it and read the binary data of the CIS, and is correct, equal to the data specified in the manual I got from Mortara.

All the info about my system is th next. (I tried the card in two laptops and the problem is the same.)

System brand: Desktop PC Pentium II 300 MHz. Intel SE440BX Motherboard ISA-to-PCMCIA Bridge (I using a quadtech PCMCIA Card Drive which uses an Omega Micro 82C365G)

PCMCIA CARDS: Mortara Telemetry Receiver Processor (is a data adquisition card implemented as a serial card)

Linux kernel version: 2.2.14-15mdk #6 ven mai 19 19:08:02 CEST 2000

cardctl version 3.1.16

Configuration data: PCMCIA=yes PCIC=i82365 PCIC_OPTS="cs_irq=7" CORE_OPTS="pc_debug=7" CARDMGR_OPTS=

Logs in /var/log/messages:

Jun 22 20:59:37 gsipc6 kernel: Linux PCMCIA Card Services 3.1.16
Jun 22 20:59:37 gsipc6 kernel:   kernel build: 2.2.14-15mdk #6 ven mai 19 19:08:02 CEST 2000
Jun 22 20:59:37 gsipc6 kernel:   options:  [pci] [apm]
Jun 22 20:59:37 gsipc6 kernel: PCI routing table version 1.0 at 0xfdf30
Jun 22 20:59:37 gsipc6 kernel: Intel PCIC probe:
Jun 22 20:59:37 gsipc6 kernel:   Intel i82365sl B step rev 00 ISA-to-PCMCIA at port 0x3e0 ofs 0x00
Jun 22 20:59:37 gsipc6 kernel:     host opts [0]: none
Jun 22 20:59:37 gsipc6 kernel:     host opts [1]: none
Jun 22 20:59:37 gsipc6 kernel:     ISA irqs (scanned) = 3,4,7 status change on irq 7
Jun 22 20:59:37 gsipc6 cardmgr[1884]: starting, version is 3.1.16
Jun 22 20:59:37 gsipc6 cardmgr[1884]: watching 2 sockets
Jun 22 20:59:37 gsipc6 kernel: cs: IO port probe 0x0c00-0x0cff: excluding 0xcf8-0xcff
Jun 22 20:59:37 gsipc6 kernel: cs: IO port probe 0x0800-0x08ff: clean.
Jun 22 20:59:37 gsipc6 kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x200-0x207 0x388-0x38f 0x3b0-0x3e7 0x4d0-0x4d7
Jun 22 20:59:37 gsipc6 kernel: cs: IO port probe 0x1000-0x17ff: excluding 0x1000-0x102f 0x1040-0x105f
Jun 22 20:59:37 gsipc6 kernel: cs: IO port probe 0x0a00-0x0aff: clean.
Jun 22 20:59:45 gsipc6 cardmgr[1884]: initializing socket 1
Jun 22 20:59:45 gsipc6 kernel: cs: memory probe 0x0d0000-0x0dffff:<7>cs: read_cis_mem(1, 0x0, 2)
Jun 22 20:59:45 gsipc6 kernel:  excluding 0xd0000-0xdffff
Jun 22 20:59:45 gsipc6 kernel: cs: unable to map card memory!
Jun 22 20:59:45 gsipc6 kernel: cs: unable to map card memory!

Messages from dmesg:

Linux PCMCIA Card Services 3.1.16
  kernel build: 2.2.14-15mdk #6 ven mai 19 19:08:02 CEST 2000
  options:  [pci] [apm]
cs.c 1.259 2000/05/10 19:26:32 (David Hinds)
PCI routing table version 1.0 at 0xfdf30
cs: CardServices(GetCardServicesInfo, 0xc1e47f18, 0xc010bb08)
i82365.c 1.317 2000/06/09 22:14:25 (David Hinds)
Intel PCIC probe:
  Intel i82365sl B step rev 00 ISA-to-PCMCIA at port 0x3e0 ofs 0x00
    host opts [0]: none
    host opts [1]: none
    ISA irqs (scanned) = 3,4,7 status change on irq 7
cs: register_ss_entry(2, 0xc807e55c)
ds.c 1.105 2000/05/03 20:04:52 (David Hinds)
cs: CardServices(GetCardServicesInfo, 0xc1e47ee8, 0xc39c0c40)
cs: CardServices(BindDevice, 0xc1e47ee0, 0xc39c0c40)
cs: bind_device(): client 0xc7fbcc80, sock 0, dev Driver Services
cs: CardServices(RegisterClient, 0xc3a6bf20, 0xc1e47efc)
cs: register_client(): client 0xc7fbcc80, sock 0, dev Driver Services
cs: CardServices(BindDevice, 0xc1e47ee0, 0xc1e47efc)
cs: bind_device(): client 0xc7fbcda0, sock 1, dev Driver Services
cs: CardServices(RegisterClient, 0xc3a6bf54, 0xc1e47efc)
cs: register_client(): client 0xc7fbcda0, sock 1, dev Driver Services
ds_open(socket 0)
ds_open(socket 1)
ds_open(socket 2)
ds_open(socket 2)
cs: CardServices(GetCardServicesInfo, 0xc1c33cf8, 0xc1c33dc8)
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: IO port probe 0x0c00-0x0cff: excluding 0xcf8-0xcff
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: IO port probe 0x0800-0x08ff: clean.
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: IO port probe 0x0100-0x04ff: excluding 0x200-0x207 0x388-0x38f 0x3b0-0x3e7 0x4d0-0x4d7
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: IO port probe 0x1000-0x17ff: excluding 0x1000-0x102f 0x1040-0x105f
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: IO port probe 0x0a00-0x0aff: clean.
cs: CardServices(AdjustResourceInfo, 0xc7fbcc80, 0xc1c33cf8)
cs: setup_socket(1): applying power
cs: resetting socket 1
cs: reset done on socket 1
cs: send_event(sock 1, event 4, pri 0)
cs: CardServices(ValidateCIS, 0xc7fbcda0, 0xc1c33cf8)
cs: read_cis_mem(1, 0x0, 2)
cs: memory probe 0x0d0000-0x0dffff:<7>cs: read_cis_mem(1, 0x0, 2)
cs:  0x01 0x03 0xec 0x36 ...
cs: CardServices(GetFirstTuple, 0xc7fbcda0, 0xc1c336cc)
cs: read_cis_mem(1, 0x5, 2)
cs:  0x12 0x04 0x6c 0x35 ...
cs: read_cis_mem(1, 0x7, 4)
cs:  0x20 0x00 0x00 0x00 ...
cs: read_cis_mem(1, 0xb, 2)
cs:  0xff 0x00 0x6c 0x35 ...
cs: read_cis_mem(0, 0x20, 5)
cs:  0x13 0x13 0x43 0x43 ...
.
.
.
 (here follow lots of lines equal to the last ones.)

More More info about the problem

Re: Question Error reading CIS with a Long Link Tuple to Common Memory (Dani Castro)
Date: 2000, Jun 29
From: Dani Castro Dani

Here are the dump of cs_memory driver.

When I want to attach the memory_cs driver after the pcmcia service is started, first I've got to insert any other card (if the mortara card is the first card I insert, no one card is recognized after). So, after doing this, I insert the unrecognized card and automaticaly cardmanager attaches the memory_cs.

Here are the logs in /var/log/messages:

Jun 23 17:38:57 gsipc6 kernel: unloading PCMCIA Card Services
Jun 23 17:38:58 gsipc6 kernel: Linux PCMCIA Card Services 3.1.16
Jun 23 17:38:58 gsipc6 kernel: kernel build: 2.2.14-15mdk #6 ven mai 19 19:08:02 CEST 2000
Jun 23 17:38:58 gsipc6 kernel: options: [pci] [apm]
Jun 23 17:38:58 gsipc6 kernel: PCI routing table version 1.0 at 0xfdf30
Jun 23 17:38:58 gsipc6 kernel: Intel PCIC probe:
Jun 23 17:38:58 gsipc6 kernel: Intel i82365sl B step rev 00 ISA-to-PCMCIA at port 0x3e0 ofs 0x00
Jun 23 17:38:58 gsipc6 kernel: host opts [0]: none
Jun 23 17:38:58 gsipc6 kernel: host opts [1]: none
Jun 23 17:38:58 gsipc6 kernel: ISA irqs (scanned) = 3,4,7 status change on irq 7
Jun 23 17:38:58 gsipc6 cardmgr[1342]: starting, version is 3.1.16
Jun 23 17:38:58 gsipc6 cardmgr[1342]: watching 2 sockets
Jun 23 17:38:58 gsipc6 kernel: cs: IO port probe 0x0c00-0x0cff: excluding 0xcf8-0xcff
Jun 23 17:38:58 gsipc6 kernel: cs: IO port probe 0x0800-0x08ff: clean.
Jun 23 17:38:58 gsipc6 kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x200-0x207 0x388-0x38f 0x3b0-0x3e7 0x4d0-0x4d7
Jun 23 17:38:58 gsipc6 kernel: cs: IO port probe 0x1000-0x17ff: excluding 0x1000-0x102f 0x1040-0x105f
Jun 23 17:38:58 gsipc6 kernel: cs: IO port probe 0x0a00-0x0aff: clean.
Jun 23 17:39:54 gsipc6 cardmgr[1342]: initializing socket 1
Jun 23 17:39:54 gsipc6 cardmgr[1342]: unsupported card in socket 1
Jun 23 17:39:54 gsipc6 kernel: cs: memory probe 0x0d0000-0x0dffff:<7>cs: read_cis_mem(1, 0x0, 2)
Jun 23 17:39:54 gsipc6 kernel: clean.
Jun 23 17:39:54 gsipc6 cardmgr[1342]: product info: "PROXIM", "LAN PC CARD", "RANGELAN2"
Jun 23 17:39:54 gsipc6 cardmgr[1342]: manfid: 0x0126, 0x1158 function: 6 (network)

(Here start messages after the insertion of mortara card)

Jun 23 17:42:23 gsipc6 cardmgr[1342]: initializing socket 1
Jun 23 17:42:23 gsipc6 cardmgr[1342]: socket 1: Anonymous Memory
Jun 23 17:42:23 gsipc6 cardmgr[1342]: executing: 'modprobe sram_mtd'
Jun 23 17:42:23 gsipc6 kernel: sram_mtd.c 1.48 2000/05/16 21:31:37 (David Hinds)
Jun 23 17:42:23 gsipc6 cardmgr[1342]: Common memory region at 0x0: Generic or SRAM
Jun 23 17:42:23 gsipc6 kernel: sram_attach()
Jun 23 17:42:23 gsipc6 kernel: sram_config(0xc6bb7a00)
Jun 23 17:42:23 gsipc6 kernel: sram_mtd: common at 0x0, 16 kb, 150 ns
Jun 23 17:42:23 gsipc6 cardmgr[1342]: executing: 'modprobe memory_cs'
Jun 23 17:42:23 gsipc6 kernel: memory_cs: mem0: common 16 kb
Jun 23 17:42:23 gsipc6 cardmgr[1342]: executing: './memory start mem0'

Here are the logs in dmesg (after the insertion of mortara card):
setup_socket(1): applying power
cs: resetting socket 1
cs: reset done on socket 1
cs: send_event(sock 1, event 4, pri 0)
cs: CardServices(ValidateCIS, 0xc72ad000, 0xc26edcf8)
cs: read_cis_mem(1, 0x0, 2)
cs: 0x01 0x03 0xac 0xda ...
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26eda8c)
cs: read_cis_mem(1, 0x5, 2)
cs: 0x12 0x04 0x2c 0xd9 ...
cs: read_cis_mem(1, 0x7, 4)
cs: 0x20 0x00 0x00 0x00 ...
cs: read_cis_mem(1, 0xb, 2)
cs: 0xff 0x00 0x2c 0xd9 ...
cs: read_cis_mem(0, 0x20, 5)
cs: 0x13 0x13 0x43 0x43 ...
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26eda8c)
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26eda8c)
cs: CardServices(GetStatus, 0xc72ad000, 0xc26edcf8)
cs: CardServices(GetFirstRegion, 0xc72ad000, 0xc26edcf8)
cs: setup_regions(0xc72ad000, 0, 0xc734b134)
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26edb3c)
cs: CardServices(GetTupleData, 0xc72ad000, 0xc26edb3c)
cs: read_cis_mem(1, 0x2, 3)
cs: 0xdb 0x0a 0xff 0x00 ...
cs: CardServices(ParseTuple, 0xc72ad000, 0xc26edb3c)
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26edb3c)
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26edb3c)
cs: setup_regions(0xc72ad000, 1, 0xc734b138)
cs: CardServices(GetFirstTuple, 0xc72ad000, 0xc26edb2c)
sram_mtd.c 1.48 2000/05/16 21:31:37 (David Hinds)
cs: CardServices(GetCardServicesInfo, 0xc38b1f28, 0xc38b1f64)
ds: register_pccard_driver('sram_mtd')
cs: CardServices(BindMTD, 0xc26edc9c, 0xc26edcac)
cs: bind_mtd(): attr 0x0, offset 0x0, dev sram_mtd
cs: CardServices(GetNextRegion, 0xc72ad000, 0xc26edcf8)
cs: CardServices(GetFirstRegion, 0xc72ad000, 0xc26edcf8)
cs: CardServices(BindDevice, 0xc26edca4, 0xc26edcac)
cs: bind_device(): client 0xc7fbcda0, sock 1, dev sram_mtd
sram_attach()
cs: CardServices(RegisterClient, 0xc6bb7a24, 0xc26edc4c)
cs: CardServices(GetFirstTuple, 0xc7fbcda0, 0xc26edb3c)
cs: register_client(): client 0xc7fbcda0, sock 1, dev sram_mtd
sram_config(0xc6bb7a00)
cs: CardServices(RequestWindow, 0xc6bb7a78, 0xc26edb1c)
cs: CardServices(GetFirstRegion, 0xc7fbcda0, 0xc26edaf0)
cs: CardServices(RegisterMTD, 0xc7fbcda0, 0xc26edb10)
cs: register_mtd(0xc7fbcda0, 'sram_mtd', 0x0)
sram_mtd: common at 0x0, 16 kb, 150 ns
cs: CardServices(GetNextRegion, 0xc26edaf0, 0xc26edb2c)
cs: CardServices(GetFirstRegion, 0xc7fbcda0, 0xc26edaf0)
memory_cs.c 1.71 2000/06/09 22:15:05 (David Hinds)
cs: CardServices(GetCardServicesInfo, 0xc38b1f18, 0xc02588c8)
ds: register_pccard_driver('memory_cs')
cs: CardServices(BindDevice, 0xc26edca4, 0xc26edcac)
cs: bind_device(): client 0xc7fbcc80, sock 1, dev memory_cs
memory_attach()

After this I used the command dd -if=/dev/mem0c -of=cis -bs=256 -count=1
and got the next data:

0x00000000 0100 0300 db00 0a00 ff00 1200 0400 2000
0x00000010 0000 0000 0000 ff00 0000 0000 0000 0000
0x00000020 1303 4349 5315 6004 014d 6f72 7461 7261
0x00000030 2049 6e73 7472 756d 656e 7400 5465 6c65
0x00000040 6d65 7472 7920 5072 6f63 6573 736f 7200
0x00000050 436f 7079 7269 6768 742c 204d 6f72 7461
0x00000060 7261 2049 6e73 7472 756d 656e 742c 2049
0x00000070 6e63 2031 3939 3900 4857 312e 3030 0053
0x00000080 5731 2e31 3000 ff20 04e9 0101 0021 0202
0x00000090 001a 0501 0100 2001 1b08 c101 3030 b8de
0x000000a0 4000 1400 ff30 0000 0000 0000 0000 0000
0x000000b0 0000 0000 0000 0000 0000 0000 0000 0000
0x000000c0 0000 0000 0000 0000 0000 0000 0000 0000
0x000000d0 0000 0000 0000 0000 0000 0000 0000 0000
0x000000e0 0000 0000 0000 0000 0000 0000 0000 0000
0x000000f0 0000 0000 0000 0000 0000 0000 0000 0000

As you can see, at position 0x00000020 the data is 13 03 43 49 53 and the logs say it is 13 13 43 43 53.

Any idea?

Feedback No hardware problem

Re: More More info about the problem (Dani Castro)
Date: 2000, Jul 07
From: Dani Castro Dani

I don't think it's a hardware problem. I've tried on two diferent linux systems (A laptop and a desktop PC) and in both cases the problem appeared.
 
It seems to be correctly the 16-bit and 8-bit reads. Here is th output of dd:

[root@]# dd if=/dev/mem0c bs=1 count=64 | od
64+0 records in
64+0 records out
0000000 000001 000003 000333 000012 000377 000022 000004 000040
0000020 000000 000000 000000 000377 000000 000000 000000 000000
0000040 001423 044503 012523 002140 046401 071157 060564 060562
0000060 044440 071556 071164 066565 067145 000164 062524 062554
0000100

[root@]# dd if=/dev/mem0c bs=2 count=32 | od
32+0 records in
32+0 records out
0000000 000001 000003 000333 000012 000377 000022 000004 000040
0000020 000000 000000 000000 000377 000000 000000 000000 000000
0000040 001423 044503 012523 002140 046401 071157 060564 060562
0000060 044440 071556 071164 066565 067145 000164 062524 062554
0000100

On the other hand, the PCMCIA works fine with with Windows 95 and the driver suplied by Mortara. Even it reads the name of the card without the driver installed so the CIS it's supossed to be correct.

 Dani

None I've put a fix in 3.1.18

Re: Question Error reading CIS with a Long Link Tuple to Common Memory (Dani Castro)
Date: 2000, Jul 11
From: David Hinds <dhinds@pcmcia.sourceforge.org>

This is provisional, though: if I hear that it causes problems for
other cards, I'll need to think of another solution.

-- Dave

News I had to back out these changes

Re: Question Error reading CIS with a Long Link Tuple to Common Memory (Dani Castro)
Date: 2000, Aug 30
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The 16-bit CIS windows were causing problems with too many other card types. And the problems were not ones that I could easily track down with the hardware I have access to.

In 3.1.20, the pcmcia_core driver has a new option, cis_width, for setting the bus width for the CIS memory windows. It defaults to 8-bit.

-- Dave

Question conflict between sound chip and 3c575cb ethernet card since 3.1.16

Date: 2000, Jul 18
From: Jerome Limozin jlimozin

Question hit bit of wavelan protocol numbers

Date: 2000, Jul 19
From: Douglas S. J. De Couto decouto

i have noticed that when i try to transmit ethernet frames on my wavelan/ieee using the wvlan_cs driver, the card doesn't transmit frames where the ethernet protocol type has the high bit set (e.g. the short value at bytes 12 and 13 is greater than 0x7fff). Does anyone know why this is? i know that the packets are getting to the driver for transmission. is this an 802.11 thing, or a wavelan firmware thing (bug? feature?)

cheers,

d

Question what combo will work with parport_cs driver

Date: 2000, Jul 16
From: fletch

I looked through the bugs file and found the mention of the parport_cs driver being broke in kernel 2.3.6 and would be fixed in later versions of the 2.3 kernel. The reason that I need to use the 2.3 kernel is that it supports ieee1284 hardware transfer modes (ecp/epp) and the 2.2 kernel does not. The quatech card is a pcmcia card that supports the epp operation mode, which allows a faster data transfer speed. I have a data acquisition system which utilizes the epp mode of a desktop parallel port, but I would like to make my system a little more portable, hence the quatech pcmcia card.

I am familiar with the parallel port drivers for 2.3 and 2.2 kernels, but not as familiar with the pcmcia card services. 
 I would be happy to test any beta patches that you may have for the parallel port card services in the 2.3 kernel. 
 If you could point to the direction where parallel port card services were stopped, I may be able to do some work on that too.  
Thanks for any help.
                    Chris

Sad Problem with ZV card and CIS 16-bit memory windows

Date: 2000, Jul 24
From: Marcus Metzler mocm

Hi, I just tried the 3.1.18 and after they didn't work the 3.1.19 pcmcia-cs. It seems that the new 16-bit memory window in the CIS parser code doesn't work with ZV cards. This is probably because of the indirect access of the CIS data which goes through an 8-bit wide register. I haven't had time to check out where it goes wrong exactly, but maybe David has an idea. Everything works fine with 3.1.17.

Marcus

None Try the 24-Jul-00 beta

Re: Sad Problem with ZV card and CIS 16-bit memory windows (Marcus Metzler)
Date: 2000, Jul 24
From: David Hinds <dhinds@pcmcia.sourceforge.org>

That should fix the issue.

-- Dave

Question Multicard Driver question

Date: 2000, Jul 25
From: Michael Nicholls phreakster

After playing with dummy_cs.c in conjunction with my multifunction card i found that it finds the io and irq for what seems to be the modem function of the card.

How would i modify it to find the ethernet function instead?

Do i just need to look futher down the tuple list?

If so how do i know which function i have found?

Also i have found that the card i am writing for uses a i82595 chip and there is already a linux driver for this card. Could i load that module like the 8390 module is loaded and use my own driver to interface into it in the same way pcnet_cs uses 8390?

Cheers

Mike

None Re: Question: Multicard Driver question

Re: Question Multicard Driver question (Michael Nicholls)
Date: 2000, Aug 01
From: David Hinds <dhinds@pcmcia.sourceforge.org>

> 
> After playing with dummy_cs.c in conjunction with my multifunction card
> i found that it finds the io and irq for what seems to be the modem
> function of the card.
>
> How would i modify it to find the ethernet function instead?

It depends on the contents of the CIS.  If you are unlucky, then the
CIS only describes the modem.  This is a common misfeature.  Look at
the output of "dump_cis" to see.

> If so how do i know which function i have found?

If the CIS describes both functions (look for a "mfc" structure with
separate sections for the serial and network functions), then the
PCMCIA services will automatically show only part of the CIS to your
driver, based on how the config file entry is set up.  Look at the
other multifunction entries: ones that say things like:

  bind "pcnet_cs" to 0, "serial_cs" to 1

are telling the CIS parser to pass function-0 tuples to the pcnet_cs
driver, and function-1 tuples to the serial_cs driver.  For some
cards, the CIS doesn't have separate sections, and you'll see:

  bind "pcnet_cs", "serial_cs"

which relies on the pcnet_cs driver to figure out, somehow, that this
is a multifunction card, and then set up the IO regions for both card
functions.

> Also i have found that the card i am writing for uses a i82595 chip and
> there is already a linux driver for this card. Could i load that module
> like the 8390 module is loaded and use my own driver to interface into
> it in the same way pcnet_cs uses 8390?

As a quick hack, you might be able to load the i82595 driver after the
dummy_cs driver.  The 8390 module has a bunch of "hooks" so it can be
shared by related drivers.  You could maybe modify the i82595 driver
to do something similar.

-- Dave

Question No CIS on CardBus card MC221

Date: 2000, Jul 28
From: Sebastian Kloska kloska

 Hi !

 I'm currently playing around with a mc221 modem card
 from lucent. It's a winmodem card so it may be never runs
 under linux but may be if I find the time :-) I'll
 write a driver.

 Problem is the pcmcia driver doesn't even recognize it
 after poking around in the code i found out the following.

 1) The VendorID isn't read correctly. When doing a 

    pci_readw(bus, 0, PCI_VENDOR_ID, &vend)

    once in cb_alloc vend == 0xff

    If you insert a second read it's correct.
    (semi present configuration space ?)

 2) The cis is somehow missing
    the cis pointer is set to 0x00000040 which should tell
    me that there is a cis at offset 0x40 within the
    configuration space. But the whole 256 bytes of     
    configuration space looks like this.

  00: c1 11 40 04 00 00 90 02 01 00 80 07 00 00 00 00 
  10: 00 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00   
  20: 00 00 00 00 00 00 00 00 40 00 00 00 00 ff 40 04 
  30: 00 00 00 00 f8 00 00 00 00 00 00 00 00 01 fc 0e 
  40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  
  90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
  f0: ff ff ff ff ff ff ff ff 01 00 22 e4 00 00 00 00 

   Starting after the first 64 bytes everything is 
   0xff except the last 8 bytes which doesn't look
   like a valid cis for me.

   Any recommendations ?

    regards 

  sebastian    

Question TI1225 and PPC750

Date: 2000, Jul 28
From: Matthew Locke mlocke

I am looking at using Card Services on a PPC750 with a TI 1225 PCI-to-Cardbus controller. It looks like the TI 1225 controller is supported by pcmcia-cs. Anyone know of any issues with that controller?

Thanks

None The controller should be fine

Re: Question TI1225 and PPC750 (Matthew Locke)
Date: 2000, Jul 28
From: David Hinds <dhinds@pcmcia.sourceforge.org>

There are no particular issues with the TI 1225 controller.  However,
PCMCIA on PowerPC is very lightly tested.

-- Dave

Question Two questions re. wavelan2_cs driver on 2.4.0-test5

Date: 2000, Jul 30
From: Peter pfolk

I'm making the necessary changes to wavelan2_cs to work with 2.4.0-test5, and I had a couple questions:

 * Should init_dev_name(dev,node) really be a no-op on newer kernels?  I'd think it ought to be something like strncpy(dev->name,node->dev_name,IFNAMSIZ).

* kfree_s() is no longer part of the kernel. Did it do anything more than kfree() when it was still part of the kernel? What version was it removed in? Has kfree() always been around? In other words, should I simply #define kfree_s(a,b) kfree(a), or should I make a compatibility <linux/malloc.h> header that does the definition, conditionally on kernel version?

Pete

None Re: Question: Two questions re. wavelan2_cs driver on 2.4.0-test5

Re: Question Two questions re. wavelan2_cs driver on 2.4.0-test5 (Peter)
Date: 2000, Jul 31
From: David Hinds <dhinds@pcmcia.sourceforge.org>

On Sun, Jul 30, 2000 at 10:03:10AM -0700, Peter wrote:
> 
>  * Should init_dev_name(dev,node) really be a no-op on newer kernels?

Yes.

> * kfree_s() is no longer part of the kernel. Did it do anything more
> than kfree() when it was still part of the kernel?

No, it did nothing more; in the olden days it was a bit faster than
kfree(), but I think that has not been true since at least 2.1 if not
2.0.  It was finally removed just in the last few weeks; you should
just replace it with calls to kfree(). 

-- Dave

Question Access the PCI vendor/card id from a client ?

Date: 2000, Jul 31
From: Sebastian Kloska kloska

Hi !

Since it seems that there are CardBus cards around which do not have CIS structures I would like to identify the inserted card based on the vendor/card informations in the pci_hdr.

Is there an ioctl to access this info. All code I could find (e.g. lookup_card in cardmgr.c) seems to rely on informations based on the CIS structure.

Regards

Sebastian

None You can't do that now

Re: Question Access the PCI vendor/card id from a client ? (Sebastian Kloska)
Date: 2000, Jul 31
From: David Hinds <dhinds@pcmcia.sourceforge.org>

There currently is no way to access the PCI vendor/device ID for card
identification.  At the moment, we only support cards that have a CIS.

-- Dave

News Added in 3.1.20

Re: Question Access the PCI vendor/card id from a client ? (Sebastian Kloska)
Date: 2000, Aug 30
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Now you can put in /etc/pcmcia/config:

  card "My card"
    pci 0x1234, 0x5678
    bind "some_cb"

-- Dave

Question when is the *_attach invoked

Date: 2000, Aug 01
From: lei sun lei

Hi:
  I am heading to develope a device driver for PCMCIA based data acquisition card. I compiled "dummy_cs" as module and loaded using "insmod". I view the log messages, it appeared that only init_module() function a invoked. but the *_attach() function was not invoked.
  My question are:
  1. I know the dev_info is a key string, but what string I should use? arbitrary?
  2. when is the *_attach function invoked, so driver instance could be created. 

  Can anybody tell me the procedure of these function being called and the caller.
  Thank you in advance!

lei

None See "Anatomy of a Card Services Client Driver" in Programmer's Guide

Re: Question when is the *_attach invoked (lei sun)
Date: 2000, Aug 01
From: David Hinds <dhinds@pcmcia.sourceforge.org>

The *_attach() function will be invoked when the ds module is told
that your driver is "bound" to an appropriate card.  When a card is
detected, cardmgr looks it up in /etc/pcmcia/config to see what
drivers it uses, loads those drivers, then tells ds to bind the card
to those drivers.

If you insmod a driver by hand, *_attach won't be called.

The dev_info string is what gets matched against the driver name in
the config file.  Other than matching what is in the config file, the
name is arbitrary, though I use a convention of *_cs for 16-bit
drivers and *_cb for cardbus drivers.

-- Dave

Question copy data to user space

Date: 2000, Aug 09
From: lei sun lei

Hi all:
   I am writting device driver for a PCMCIA data accquistion card. Now PCMCIA part has been taken cared of. and I can read the data from register in the driver code. However when I implement the *_read() function and use copy_to_user() to copy the data to user space. I can't actually get the data from my user program. my code looks like this:

driver code:

daq_read(struct inode *inode, struct file *file,
        char *buf, unsigned long count)
{
   unsigned short *value;
   value = kmalloc(sizeof(unsigned short), GFP_KERNEL);
   /* device specific code */
   if (__copy_to_user(buf, value, count))
   {
         printk("error: __copy_to_user\n");
         return -EFAULT ;
   }
   ....
}

test user code:

int main()
{
    unsgined short *buff;
    buff = malloc(sizeof(unsigned short));
    fd = open("/dev/daq", O_RDONLY);
    read(fd, (char *)buff, sizeof(unsigned short));
    printf("buff=0x%x\n", *buff);
    return 0;
}

when I load the driver and try to run the test program. I always trigger that error "error: __copy_to_user", looks like the system call failed. I'v ever tried copy_to_user(), but it didn't work. 
   Anybody can give me some suggestion and ideas? I would highly appreciate it!!
THank you !
lei

None 2.4.0-test6 won't load i82365.o

Date: 2000, Aug 17
From: Michal Ostrowski mostrows

I've got a 3c575(CT) card which works quite well with 2.2.16
 in an Inspiron 3800.  I've been trying to "upgrade" the
 kernel to 2.4.0-test6 with little success.  The problem
 appears to be that the i82365 module complains that:
 "Bridge register mapping failed: check cb_mem_base setting"

When running 2.2.16 the probe reveals : "TI 1225 rev 01 PCI-toCardbus at slot 00:03, mem 0x68000000" (followed by more info about each slot)

I've built my kernel with PNP, and without hotplug or PCMCIA.

Any suggestions?

None Use 2.4.0-test7-pre instead

Re: None 2.4.0-test6 won't load i82365.o (Michal Ostrowski)
Date: 2000, Aug 17
From: David Hinds <dhinds@pcmcia.sourceforge.org>

This kernel is broken.

-- Dave

Question Burning hot pc card

Date: 2000, Aug 27
From: Daniel R. Gilliam drgillia

I posted on Usenet, but also figured I should post here. Some have been having trouble with their pcmcia cards getting red hot; I'm having the same problem. I'm running a Toshiba 105CS with SuSE 6.4. The pc card is a 56K Zoom card, which works fine other than getting red hot. I've switched slots to see what will happen...

Any other ideas?

- Dan

None The "hot card" reports have not been sorted out

Re: Question Burning hot pc card (Daniel R. Gilliam)
Date: 2000, Aug 29
From: David Hinds <dhinds@pcmcia.sourceforge.org>

> 
> Any other ideas?

No, not without more testing.  At least some of the reports of hot
cards seem to just be that other things in the systems are getting hot
and transfering heat to the card(s).  Windows may be doing a better
job of power management in general, so the fact that the card doesn't
get hot in Windows doesn't necessarily mean that the PCMCIA drivers
are at fault.

The 'cardctl status' command will show what voltages are being
supplied to each socket.

-- Dave

None Re: The "hot card" reports have not been sorted out

Re: None The "hot card" reports have not been sorted out (David Hinds)
Date: 2000, Aug 29
From: Daniel Gilliam drgillia

Dear Dave,

Ok, I tried switching slots; no dice.  Card still roasts.  I checked the=
=20
cardctl status, and it's showing 5.0v.  I didn't have the cdrom card in.=
 =20
I guess I could be a hardware heat thing...that side of the computer in =

general gets pretty hot.  BUT, would the APM stuff affect heat to other =

parts, i.e., the motherboard, processor, etc.?  The battery, HD, and ram=
=20
are all on the other, cooler, side of the computer, as is the floppy.  S=
o=20
really, the processor I guess would be the only thing left. Which brings=
=20
me to my next concern =96 if apm, or card services, or a combination of =

both, is causing my mb/processor to get overly hot, then what sort of=20=

damage am I liable to incur?  Wonder if I'm going to have to revert to=20=

(Heaven forbid!) Windows, just to protect the hardware?

Thanks for the input,
Dan

>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 8/28/00, 8:20:39 PM, David Hinds <dhinds@valinux.com> wrote regarding=
=20
The "hot card" reports have not been sorted out:


> >
> > Any other ideas?

> No, not without more testing.  At least some of the reports of hot
> cards seem to just be that other things in the systems are getting hot=

> and transfering heat to the card(s).  Windows may be doing a better
> job of power management in general, so the fact that the card doesn't=

> get hot in Windows doesn't necessarily mean that the PCMCIA drivers
> are at fault.

> The 'cardctl status' command will show what voltages are being
> supplied to each socket.

> -- Dave

None Also try powering down the card

Re: None Re: The "hot card" reports have not been sorted out (Daniel Gilliam)
Date: 2000, Aug 29
From: David Hinds <dhinds@pcmcia.sourceforge.org>

Another thing to try, is to work with the card in, but powered down
(to do this, just do a "cardctl eject").  If the card still heats up,
then it can't be due to the PCMCIA drivers.

> if apm, or card services, or a combination of
> both, is causing my mb/processor to get overly hot, then what sort of
> damage am I liable to incur?

I have no idea.

-- Dave

None Re: Also try powering down the card

Re: None Also try powering down the card (David Hinds)
Date: 2000, Aug 30
From: Daniel Gilliam drgillia

Ok, here's the results...

After I got home from work yesterday, I went and booted up the laptop.  =

As soon as I could get a prompt, I did a cardctl eject, which resulted i=
n=20
the beeps; I then did a cardctl status, just to make sure that the card =

was actually off, which it was.

I then worked the laptop normally for about an hour and a half, and then=
=20
pulled the card and checked.  It was only a bit warm, but not hot by any=
=20
means.  Then, I re-inserted the card, and did a cardctl status, to make =

sure that it was now "on".  It was, at 5.0 Volts, like before. Within 10=
=20
minutes, the card was almost 3 times hotter than it was.  I could feel=20
the heat through the palmrest in the case, even.  I pulled the card, and=
=20
voila, she was red hot.

I'm not sure now what to make of all this, but this is what happened...

{shrug}

Dan

>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 8/29/00, 1:16:45 PM, David Hinds <dhinds@valinux.com> wrote regarding=
=20
Also try powering down the card:


> Another thing to try, is to work with the card in, but powered down
> (to do this, just do a "cardctl eject").  If the card still heats up,
> then it can't be due to the PCMCIA drivers.

> > if apm, or card services, or a combination of
> > both, is causing my mb/processor to get overly hot, then what sort o=
f
> > damage am I liable to incur?

> I have no idea.

> -- Dave

Question Untitled

Date: 2000, Sep 27
From: lei sun lei

Hi all:
   I am using redhat linux 6.0 (kernel 2.2.14)with pcmcia-3.1.8 . I found out that I can read the card info only for the cardbus card, not for the other PCMCIA cards by the command  "cardctl idnet"
   Anybody knows the reason, is this because of the pcmcia package is too old?

Thank you! Lei

PCMCIA driver development


Add Message to: "PCMCIA driver development"

Members Subscribe Admin Mode Show Frames Help for HyperNews at pcmcia-cs.sourceforge.net 1.10