forked from Minki/linux
staging: comedi: pass subdevice to comedi_buf_munge()
Local function `comedi_buf_munge()` is called by `comedi_buf_write_free()` to modify (or "munge") the data copied from a device into the buffer. Currently, the function takes a pointer to a `struct comedi_async` and gets a pointer to the comedi subdevice from the `subdevice` member. Change it to take a pointer to a `struct comedi_subdevice` and get a pointer to the "async" structure from the `async` member. The main motivation for this is to elimate the `subdevice` member of `struct comedi_async`. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
d4526ab4e0
commit
5b108588ba
@ -282,10 +282,10 @@ EXPORT_SYMBOL_GPL(comedi_buf_write_alloc);
|
||||
* munging is applied to data by core as it passes between user
|
||||
* and kernel space
|
||||
*/
|
||||
static unsigned int comedi_buf_munge(struct comedi_async *async,
|
||||
static unsigned int comedi_buf_munge(struct comedi_subdevice *s,
|
||||
unsigned int num_bytes)
|
||||
{
|
||||
struct comedi_subdevice *s = async->subdevice;
|
||||
struct comedi_async *async = s->async;
|
||||
unsigned int count = 0;
|
||||
const unsigned num_sample_bytes = bytes_per_sample(s);
|
||||
|
||||
@ -344,7 +344,7 @@ unsigned int comedi_buf_write_free(struct comedi_subdevice *s,
|
||||
|
||||
async->buf_write_count += nbytes;
|
||||
async->buf_write_ptr += nbytes;
|
||||
comedi_buf_munge(async, async->buf_write_count - async->munge_count);
|
||||
comedi_buf_munge(s, async->buf_write_count - async->munge_count);
|
||||
if (async->buf_write_ptr >= async->prealloc_bufsz)
|
||||
async->buf_write_ptr %= async->prealloc_bufsz;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user