staging: comedi: das08: Correct AI encoding for das08jr-16-ao
authorIan Abbott <abbotti@mev.co.uk>
Fri, 31 Aug 2012 19:41:29 +0000 (20:41 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 19 Sep 2012 14:05:07 +0000 (15:05 +0100)
commit7672832a4ebe555d580a0cdb41a09da0cb8264ba
treefb02cf8c7999cf6a2992a2b6b89462afc2b0fa0e
parent94757f8d13027373fc9e930b8b7258792a3dbe6b
staging: comedi: das08: Correct AI encoding for das08jr-16-ao

commit e6391a182865efc896cb2a8d79e07b7ac2f45b48 upstream.

The element of `das08_boards[]` for the 'das08jr-16-ao' board has the
`ai_encoding` member set to `das08_encode12`.  It should be set to
`das08_encode16` same as the 'das08jr/16' board.  After all, this board
has 16-bit AI resolution.

The description of the A/D LSB register at offset 0 seems incorrect in
the user manual "cio-das08jr-16-ao.pdf" as it implies that the AI
resolution is only 12 bits.  The diagrams of the A/D LSB and MSB
registers show 15 data bits and a sign bit, which matches what the
software expects for the `das08_encode16` AI encoding method.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[bwh: Backported to 3.2: adjust indentation]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/staging/comedi/drivers/das08.c