RE: no pcmcia support

Ian,

thanks for your help. I finally managed to compile and install comedi. 
However it still doesn't work: after I insert my PCMCIA card in the slot I get unknown symbol message in the kernel log (see below).
I checked in the mailing list archive for a solution but I only found stuff related to using a different compiler for kernel and comedi. However this is not my case: I am compiling everything with gcc 3.3.6. What can possibly go wrong?

I repeat my config:
I am working under ubuntu 6.06
with a vanilla kernel 2.6.15 obtained from kernel.org
patched with RTAI 3.3
using a NI DAQCard-6024E

Btw, at this stage comedilib is installed. I am working with the latest version obtained from CVS a few days ago. I heard that comedi and comedilib are independent, but I am mentioning just in case.

I did:
  cd /usr/src
  cvs -d :pserver:anonymous_at_cvs.comedi.org:/cvs/comedi co -D '2006-06-11 19:00Z' comedi
  cd comedi
  ./autogen.sh
  ./configure --enable-pcmcia --with-linuxdir=/usr/src/linux --with-rtaidir=/usr/realtime
  make
  sudo make install
  sudo depmod -a
And there was no error.

dmesg output:
pccard: PCMCIA card inserted into slot 1
pcmcia: registering new device pcmcia1.0
comedi: Unknown symbol rt_request_srq
comedi: Unknown symbol rt_shutdown_irq
comedi: Unknown symbol rt_enable_irq
comedi: Unknown symbol rt_printk
comedi: Unknown symbol rt_pend_linux_srq
comedi: Unknown symbol rt_startup_irq
comedi: Unknown symbol rt_free_srq
comedi: Unknown symbol rt_request_irq
comedi: Unknown symbol rt_release_irq
8255: Unknown symbol comedi_buf_put
8255: Unknown symbol comedi_event
8255: Unknown symbol range_unipolar5
8255: Unknown symbol comedi_driver_unregister
8255: Unknown symbol comedi_driver_register
comedi_fc: Unknown symbol comedi_buf_read_free
comedi_fc: Unknown symbol comedi_buf_write_alloc
comedi_fc: Unknown symbol rt_printk
comedi_fc: Unknown symbol comedi_event
comedi_fc: Unknown symbol comedi_buf_write_free
comedi_fc: Unknown symbol comedi_buf_read_n_available
comedi_fc: Unknown symbol comedi_buf_memcpy_to
comedi_fc: Unknown symbol comedi_buf_memcpy_from
ni_mio_cs: Unknown symbol cfc_write_array_to_buffer
ni_mio_cs: Unknown symbol comedi_error
ni_mio_cs: Unknown symbol subdev_8255_init
ni_mio_cs: Unknown symbol comedi_debug
ni_mio_cs: Unknown symbol rt_busy_sleep
ni_mio_cs: Unknown symbol comedi_request_irq
ni_mio_cs: Unknown symbol rt_printk
ni_mio_cs: Unknown symbol range_unknown
ni_mio_cs: Unknown symbol subdev_8255_cleanup
ni_mio_cs: Unknown symbol comedi_event
ni_mio_cs: Unknown symbol range_unipolar5
ni_mio_cs: Unknown symbol comedi_driver_unregister
ni_mio_cs: Unknown symbol comedi_buf_get
ni_mio_cs: Unknown symbol comedi_buf_read_n_available
ni_mio_cs: Unknown symbol range_bipolar10
ni_mio_cs: Unknown symbol comedi_driver_register
ni_mio_cs: Unknown symbol comedi_free_irq



Brice



-----Original Message-----
From: Ian Abbott [mailto:abbotti_at_mev.co.uk]
Sent: Mon 8/21/2006 7:49 PM
To: Rebsamen Brice
Cc: comedi_at_comedi.org
Subject: Re: no pcmcia support
 
On 21/08/06 09:24, Rebsamen Brice wrote:
> Following your indications I updated the comedi drivers through cvs 
> using the -D '2006-07-11 19:00' option. autogen then correctly detected 
> PCMCIA support (as module). However it doesn't compile. Below is the 
> make error message. What's going on? (I used --enable-pcmcia option with 
> configure).

Sorry, I got the month wrong (07 instead of 06) in the -D option, and
also forgot to take into account the fact that it interprets the time as
a local time unless a timezone is included.  Try -D '2006-06-11 19:00Z'
instead (the Z on the end specifies "zero medidian" or "Zulu time", i.e.
GMT or UTC).  I've just tried that and it seems to compile OK for a
2.6.15 kernel.

> Note that I haven't applied the patch you sent: I understood that I 
> must not since I am using kernel 2.6.15, although I am not sure I 
> understood correctly your instructions about that. can you confirm please?

You only need the patch if you want the same source to compile for
2.6.16, or for a vendor 2.6.15 kernel that "plays the same tricks as
Fedora".

> I don't know if "Ubuntu played the same tricks as Fedora", I am using 
> a vanilla kernel anyway. How can I check that?

You won't need the patch for a vanilla 2.6.15 kernel.  The patch defines
the COMEDI_PCMCIA_2_6_16 macro in Comedi's include/pcmcia/ds.h file if
Comedi is being built for 2.6.16 or Fedora's 2.6.15 (or a 2.6.15 kernel
pulling the same trick as Fedora).  Otherwise the macro is left
undefined.  The macro is tested for conditional compilation in Comedi's
PCMCIA drivers.  (If it wasn't for Fedora's 2.6.15, those conditional
compilation tests would just test the kernel version directly instead of
a special macro.)  The patch checks for the Fedora 2.6.15 trick by
checking whether the dev_to_instance macro was defined in the kernel's
include/pcmcia/ds.h file.  This was defined in vanilla 2.6.16, but is
also included in Fedora's back-port to 2.6.15.

> Anyway I tried to apply the patch, just in case. 'patch -p0 < 
> comedi.patch' fails reporting "Hunk #1 FAILED at 37".

It applies OK once the correct -D option has been used.

-- 
-=( Ian Abbott _at_ MEV Ltd.    E-mail: <abbotti_at_mev.co.uk>        )=-
-=( Tel: +44 (0)161 477 1898   FAX: +44 (0)161 718 3587         )=-

Received on 2006-08-22Z04:44:39