Re: NI general-purpose counter changes

On Sun, 14 Jan 2007, Frank Mori Hess wrote:
> I've converted ni_660x.c and ni_mio_common.c to use ni_tio.c for their
> counter support.  The counters now each have their own subdevice with 3
> channels (count, load a register, and load b register).  The configuration
> instructions have changed also, they are more primitive now and closer to
> the hardware.  This allows a little more of the counters' cabailities to
> be exposed.  If there is a need for higher level configuration support, it
> might be added as functions in comedilib, or maybe put with the scxi stuff
> in a utility library.  There is still no support for buffered counting
> yet.  There are a couple demo programs added to the comedilib cvs,
> gpct_pulse_generator.c and gpct_simple_counting.c which call a few
> functions defined in demo/common.c, and use some new enums defined in
> comedi.h.  I've tested it with an m-series 6289, but I don't have access
> to any 660x boards.

Hi Frank,

I did a quick test using a 2.6 kernel, but no succes so far (unless I
forgot something)

root_at_einstein:~/CVS/comedilib-counter-anoncvs/build-gcc-4.0/demo #
   ./gpct_simple_counting
Initiating simple event counting on subdevice 0.
reset_counter: error:
comedi_do_insn: Input/output error
root_at_einstein:~/CVS/comedilib-counter-anoncvs/build-gcc-4.0/demo #
   ./gpct_pulse_generator
Generating pulse train on subdevice 0.
Period = 1000000 ns.
Up Time = 500000 ns.
Down Time = 500000 ns.
reset_counter: error:
comedi_do_insn: Input/output error

dmesg contains a hint of what might be wrong.

BUG: result of insn != insn.n

ATM I have no time for digging deeper, but if you want me to test
anything else, let me now.

regards,
Klaas

ps.  This is what board_info reports

$ ./board_info
overall info:
   version code: 0x000749
   driver name: ni_660x
   board name: PCI-6602
   number of subdevices: 10
subdevice 0:
   type: 0 (unused)
subdevice 1:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,5]
   command:
     not supported
subdevice 2:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
subdevice 3:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
subdevice 4:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
subdevice 5:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
subdevice 6:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
subdevice 7:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
subdevice 8:
   type: 6 (counter)
   flags: 0x00030000
   number of channels: 3
   max data value: 4294967295
   ranges:
     all chans: [0,1]
   command:
     not supported
0

Received on 2007-01-31Z11:28:08