Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2fadffc0 authored by Ian Abbott's avatar Ian Abbott Committed by Greg Kroah-Hartman
Browse files

staging: comedi: pass subdevice to comedi_buf_memcpy_from()



Change the parameters of `comedi_buf_memcpy_from()` to pass a pointer to
the comedi subdevice instead of a pointer to the "async" structure
belonging to the subdevice.

The main aim at the moment is to replace all the `struct comedi_async *`
parameters with `struct comedi_subdevice *` parameters in the comedi
driver API.

Signed-off-by: default avatarIan Abbott <abbotti@mev.co.uk>
Reviewed-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 00603a9c
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -472,10 +472,11 @@ void comedi_buf_memcpy_to(struct comedi_subdevice *s, unsigned int offset,
}
EXPORT_SYMBOL_GPL(comedi_buf_memcpy_to);

void comedi_buf_memcpy_from(struct comedi_async *async, unsigned int offset,
void comedi_buf_memcpy_from(struct comedi_subdevice *s, unsigned int offset,
			    void *dest, unsigned int nbytes)
{
	void *src;
	struct comedi_async *async = s->async;
	unsigned int read_ptr = async->buf_read_ptr + offset;

	if (read_ptr >= async->prealloc_bufsz)
+1 −1
Original line number Diff line number Diff line
@@ -348,7 +348,7 @@ int comedi_buf_get(struct comedi_subdevice *s, unsigned short *x);

void comedi_buf_memcpy_to(struct comedi_subdevice *s, unsigned int offset,
			  const void *source, unsigned int num_bytes);
void comedi_buf_memcpy_from(struct comedi_async *async, unsigned int offset,
void comedi_buf_memcpy_from(struct comedi_subdevice *s, unsigned int offset,
			    void *destination, unsigned int num_bytes);

/* drivers.c - general comedi driver functions */
+1 −1
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@ unsigned int cfc_read_array_from_buffer(struct comedi_subdevice *s,
		return 0;

	num_bytes = comedi_buf_read_alloc(async, num_bytes);
	comedi_buf_memcpy_from(async, 0, data, num_bytes);
	comedi_buf_memcpy_from(s, 0, data, num_bytes);
	comedi_buf_read_free(async, num_bytes);
	cfc_inc_scan_progress(s, num_bytes);
	async->events |= COMEDI_CB_BLOCK;