Sankhla Ullas | 2 Jul 11:23 2004
Picon

pcl-206

Hi all,
I am looking for the driver for an old PCL-206 card,
is it possible that anybody has made this driver already ?
Please help me out as it is very imp for my project.
Thanks
Ullas

----------------------------------------- (on isc)

________________________________________________________________________

Powered by TREND VirusWall: Information Superhighway Centre, IIT Roorkee

---------------------------------------------------------
Владимир | 2 Jul 10:32 2004
Picon

Advantech PCI1751

1. In comedi-0.7.68 driver adv-dio has appead. Can I use the driver with Advantech PCI-1751.
    a) If so, can I run comedi so:
            /sbin/modprobe comedi
            /sbin/modprobe adv_dio
            /usr/sbin/comedi_config  /dev/comedi0 adv_dio
    b) before now I use comedi-0.7.60 that I take on Advantech www-site. In order to make ports of the card to be input or output I had to correct subroutine pci1751_attach()  in file  ...drivers/pci1751.c. What must I do in adv_dio to control I/O ports?
 
2.When I use comedi-0.7.60 with PCI-1751 commands comedi_dio_read() and comedi_dio_write() are working but comedi_dio_bitfield() is not. comedi_dio_bitfield() don't write. The card have two subdevice one input and one output. What subdevice must I use in comedi_dio_bitfield()?
 
Best regards.
Vladimir Khovanskov. 
 
 
Tim Lee | 3 Jul 22:24 2004
Picon

Asynchronous input - callback only called once

I posted this problem earlier here:

https://cvs.comedi.org/pipermail/comedi/2004-June/006044.html

I'm trying to set up asynchronous reads which triggers
an interrupt at the end of each scan; however, the
callback only gets called once.

Here are some additional details and questions:

DAQ card: NI PCI-1200, uses the ni_labpc driver.
Comedi: latest CVS snapshot

I traced through the driver ISR (labpc_interrupt())
and its subsequent call to comedi_event using print
statments.  In the ISR, it doesn't enter any if
statements except for the TRIG_COUNT one, then it
calls comedi_event.  In comedi_event, it goes to the
async->cb_func(mask,async->cb_arg); line.  All this
seems to be right.

There is a comment near the async->cb_func() which
says:

/* XXX bug here.  If subdevice A is rt, and
 * subdevice B tries to callback to a normal
 * linux kernel function, it will be at the
 * wrong priority.  Since this isn't very
 * common, I'm not going to worry about it. */

Does this comment apply to my situation?  My callback
function is in a non-real time kernel module. 
However,
I set up my comedi cmd with a TRIG_RT flag.  Do I need
to be setting my kernel module to real-time priority
somehow?  (This doesn't seem to be done in the it.c
example)

I've also been reading that enabling DMA sometimes
causes problems for other ppl.  I'm not sure what this
is, if I have this enabled or not, or if this might be
a cause of this problem.  Opinions?

I think Frank wrote this driver and tested it for the
lab-pc-1200 (differnt card).  Has anyone used this
driver with the pci-1200?  Could this problem be as
simple as the interrupt not being properly
acknowledged in the driver?

At this point, I don't know what else to try.  Does
anyone have any debugging suggestions that might
narrow this problem down?

Thanks a lot,

Tim Lee

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
Frank Mori Hess | 5 Jul 00:51 2004
Picon
Picon

Re: Asynchronous input - callback only called once


On Saturday 03 July 2004 04:24 pm, Tim Lee wrote:
> I traced through the driver ISR (labpc_interrupt())
> and its subsequent call to comedi_event using print
> statments.  In the ISR, it doesn't enter any if
> statements except for the TRIG_COUNT one, then it
> calls comedi_event.  In comedi_event, it goes to the
> async->cb_func(mask,async->cb_arg); line.  All this
> seems to be right.

What are the contents of the status1 and status2 registers when they are 
read in labpc_interrupt()?

> There is a comment near the async->cb_func() which
> says:
>
> /* XXX bug here.  If subdevice A is rt, and
>  * subdevice B tries to callback to a normal
>  * linux kernel function, it will be at the
>  * wrong priority.  Since this isn't very
>  * common, I'm not going to worry about it. */
>
> Does this comment apply to my situation?  My callback

No.

>
> At this point, I don't know what else to try.  Does
> anyone have any debugging suggestions that might
> narrow this problem down?
>

Does the comedilib cmd demo work?

--

-- 
Frank

Michael Thomas | 6 Jul 18:51 2004

manual config under Comedi 0.7.68

Comedi used to have a config target in its makefile for line-by-line configuration.  I can’t get the old version (0.7.59) to install due to a call to (deprecated) malloc, so I’m upgrading.  How do I get to the configuration options in 0.7.68?

 

Michael Thomas

David Schleef | 6 Jul 20:36 2004

Re: manual config under Comedi 0.7.68

On Tue, Jul 06, 2004 at 11:51:30AM -0500, Michael Thomas wrote:
> Comedi used to have a config target in its makefile for line-by-line
> configuration.  I can't get the old version (0.7.59) to install due to a
> call to (deprecated) malloc, so I'm upgrading.  How do I get to the
> configuration options in 0.7.68?

You don't.  There were never really any configuration options, just
enabling/disabling drivers.  Since that's not terribly useful by
itself, I removed it.

dave...
Tim Lee | 6 Jul 23:26 2004
Picon

Re: Asynchronous input - callback only

> What are the contents of the status1 and status2
> registers when they are=20
> read in labpc_interrupt()?

status1 = 33 and status2 = 5.

> Does the comedilib cmd demo work?

The cmd demo works fine.

Thanks,

Tim

> Message: 1
> From: Frank Mori Hess <fmhess <at> users.sourceforge.net>
> To: comedi <at> comedi.org
> Subject: Re: Asynchronous input - callback only
> called once
> Date: Sun, 4 Jul 2004 18:51:25 -0400
> 
> =2D----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On Saturday 03 July 2004 04:24 pm, Tim Lee wrote:
> > I traced through the driver ISR
> (labpc_interrupt())
> > and its subsequent call to comedi_event using
> print
> > statments.  In the ISR, it doesn't enter any if
> > statements except for the TRIG_COUNT one, then it
> > calls comedi_event.  In comedi_event, it goes to
> the
> > async->cb_func(mask,async->cb_arg); line.  All
> this
> > seems to be right.
> 
> What are the contents of the status1 and status2
> registers when they are=20
> read in labpc_interrupt()?
> 
> > There is a comment near the async->cb_func() which
> > says:
> >
> > /* XXX bug here.  If subdevice A is rt, and
> >  * subdevice B tries to callback to a normal
> >  * linux kernel function, it will be at the
> >  * wrong priority.  Since this isn't very
> >  * common, I'm not going to worry about it. */
> >
> > Does this comment apply to my situation?  My
> callback
> 
> No.
> 
> >
> > At this point, I don't know what else to try. 
> Does
> > anyone have any debugging suggestions that might
> > narrow this problem down?
> >
> 
> Does the comedilib cmd demo work?
> 
> =2D --=20
> =46rank
> 
> =2D----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.4 (GNU/Linux)
> 
>
iD8DBQFA6Inw5vihyNWuA4URAqjZAKDRHEzQOEaAGK5whWCvN0ldLWh78QCg4sOu
> QpVmvq+yodWts0DfQV5a7k0=3D
> =3Dioda
> =2D----END PGP SIGNATURE-----
> 
> 
> 
> --__--__--
> 
> _______________________________________________
> comedi mailing list
> comedi <at> comedi.org
>
https://cvs.comedi.org/cgi-bin/mailman/listinfo/comedi
> 
> 
> End of comedi Digest
> 

		
__________________________________
Do you Yahoo!?
Yahoo! Mail is new and improved - Check it out!
http://promotions.yahoo.com/new_mail
Frank Mori Hess | 7 Jul 00:55 2004
Picon
Picon

Re: Asynchronous input - callback only


On Tuesday 06 July 2004 05:26 pm, Tim Lee wrote:
> > What are the contents of the status1 and status2
> > registers when they are=20
> > read in labpc_interrupt()?
>
> status1 = 33 and status2 = 5.

The status values you gave are in decimal?

>
> > Does the comedilib cmd demo work?
>
> The cmd demo works fine.
>

See if you can make it fail.  My guess would be it will fail when you ask 
for just a single channel (demo/cmd -n1).  If it still works then, you 
might try setting the TRIG_WAKE_EOS flag at the appropriate place in cmd.c 
and see if that breaks it.

--

-- 
Frank

Tim Lee | 7 Jul 01:30 2004
Picon

Asynchronous input - callback only

> > > What are the contents of the status1 and status2
> > > registers when they are=3D20
> > > read in labpc_interrupt()?
> >
> > status1 =3D 33 and status2 =3D 5.

> The status values you gave are in decimal?

Yes, these are decimal values.

>
> > Does the comedilib cmd demo work?
>
> The cmd demo works fine.
>

> See if you can make it fail.  My guess would be it 
> will fail when you ask for just a single channel 
> (demo/cmd -n1).  If it still works then, you might 
> try setting the TRIG_WAKE_EOS flag at the
appropriate
> place in cmd.c and see if that breaks it.

I tried reading from just one channel and setting the
TRIG_WAKE_EOS flag and both these things worked. I
verified that the data was really being received at
the end of each scan. I then set the flag to
TRIG_WAKE_EOS | TRIG_RT, and in this case, the data
was only read once.  I don't know if this is expected
behaviour though, since this is running from user
space instead of kernel space.  I took out the TRIG_RT
flag in the kernel module based off of it.c and got
the same behaviour as before (callback is only called
once).

Anything else I can try with cmd.c?

Thanks,

Tim Lee

		
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!
http://promotions.yahoo.com/new_mail 
Frank Mori Hess | 7 Jul 03:47 2004
Picon
Picon

Re: Asynchronous input - callback only


On Tuesday 06 July 2004 07:30 pm, Tim Lee wrote:
>
> I tried reading from just one channel and setting the
> TRIG_WAKE_EOS flag and both these things worked. I
> verified that the data was really being received at
> the end of each scan. I then set the flag to
> TRIG_WAKE_EOS | TRIG_RT, and in this case, the data
> was only read once.  I don't know if this is expected
> behaviour though, since this is running from user
> space instead of kernel space.  I took out the TRIG_RT
> flag in the kernel module based off of it.c and got
> the same behaviour as before (callback is only called
> once).
>

Ah, the problem seems to be that RTAI-adeos requires us to manually 
re-enable interrupts after handling them, unlike the older versions of 
RTAI.  You should be able to fix it for yourself by putting a 
rt_enable_irq(irq) call at the end of handle_void_irq() in comedi/rt.c.

--

-- 
Frank


Gmane