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

Commit 0367eef2 authored by Thomas Pugliese's avatar Thomas Pugliese Committed by Greg Kroah-Hartman
Browse files

usb: wusbcore: rename fields in struct wahc



Rename xfer_result to dti_buf and xfer_result_size to dti_buf_size in
struct wahc.  The dti buffer will also be used for isochronous status
packets once isochronous transfers are supported.

Signed-off-by: default avatarThomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 09d94cbd
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -44,11 +44,11 @@ int wa_create(struct wahc *wa, struct usb_interface *iface)
	/* Fill up Data Transfer EP pointers */
	wa->dti_epd = &iface->cur_altsetting->endpoint[1].desc;
	wa->dto_epd = &iface->cur_altsetting->endpoint[2].desc;
	wa->xfer_result_size = usb_endpoint_maxp(wa->dti_epd);
	wa->xfer_result = kmalloc(wa->xfer_result_size, GFP_KERNEL);
	if (wa->xfer_result == NULL) {
	wa->dti_buf_size = usb_endpoint_maxp(wa->dti_epd);
	wa->dti_buf = kmalloc(wa->dti_buf_size, GFP_KERNEL);
	if (wa->dti_buf == NULL) {
		result = -ENOMEM;
		goto error_xfer_result_alloc;
		goto error_dti_buf_alloc;
	}
	result = wa_nep_create(wa, iface);
	if (result < 0) {
@@ -59,8 +59,8 @@ int wa_create(struct wahc *wa, struct usb_interface *iface)
	return 0;

error_nep_create:
	kfree(wa->xfer_result);
error_xfer_result_alloc:
	kfree(wa->dti_buf);
error_dti_buf_alloc:
	wa_rpipes_destroy(wa);
error_rpipes_create:
	return result;
@@ -76,7 +76,7 @@ void __wa_destroy(struct wahc *wa)
		usb_kill_urb(wa->buf_in_urb);
		usb_put_urb(wa->buf_in_urb);
	}
	kfree(wa->xfer_result);
	kfree(wa->dti_buf);
	wa_nep_destroy(wa);
	wa_rpipes_destroy(wa);
}
+2 −2
Original line number Diff line number Diff line
@@ -184,8 +184,8 @@ struct wahc {
	struct urb *dti_urb;		/* URB for reading xfer results */
	struct urb *buf_in_urb;		/* URB for reading data in */
	struct edc dti_edc;		/* DTI error density counter */
	struct wa_xfer_result *xfer_result; /* real size = dti_ep maxpktsize */
	size_t xfer_result_size;
	void *dti_buf;
	size_t dti_buf_size;

	s32 status;			/* For reading status */

+9 −9
Original line number Diff line number Diff line
@@ -1418,7 +1418,8 @@ static int wa_xfer_status_to_errno(u8 status)
 *
 * FIXME: this function needs to be broken up in parts
 */
static void wa_xfer_result_chew(struct wahc *wa, struct wa_xfer *xfer)
static void wa_xfer_result_chew(struct wahc *wa, struct wa_xfer *xfer,
		struct wa_xfer_result *xfer_result)
{
	int result;
	struct device *dev = &wa->usb_iface->dev;
@@ -1426,8 +1427,7 @@ static void wa_xfer_result_chew(struct wahc *wa, struct wa_xfer *xfer)
	u8 seg_idx;
	struct wa_seg *seg;
	struct wa_rpipe *rpipe;
	struct wa_xfer_result *xfer_result = wa->xfer_result;
	u8 done = 0;
	unsigned done = 0;
	u8 usb_status;
	unsigned rpipe_ready = 0;

@@ -1687,7 +1687,7 @@ static void wa_buf_in_cb(struct urb *urb)
 * We go back to OFF when we detect a ENOENT or ESHUTDOWN (or too many
 * errors) in the URBs.
 */
static void wa_xfer_result_cb(struct urb *urb)
static void wa_dti_cb(struct urb *urb)
{
	int result;
	struct wahc *wa = urb->context;
@@ -1709,7 +1709,7 @@ static void wa_xfer_result_cb(struct urb *urb)
				urb->actual_length, sizeof(*xfer_result));
			break;
		}
		xfer_result = wa->xfer_result;
		xfer_result = (struct wa_xfer_result *)(wa->dti_buf);
		if (xfer_result->hdr.bLength != sizeof(*xfer_result)) {
			dev_err(dev, "DTI Error: xfer result--"
				"bad header length %u\n",
@@ -1735,7 +1735,7 @@ static void wa_xfer_result_cb(struct urb *urb)
				xfer_id, usb_status);
			break;
		}
		wa_xfer_result_chew(wa, xfer);
		wa_xfer_result_chew(wa, xfer, xfer_result);
		wa_xfer_put(xfer);
		break;
	case -ENOENT:		/* (we killed the URB)...so, no broadcast */
@@ -1777,7 +1777,7 @@ out:
 * don't really set it up and start it until the first xfer complete
 * notification arrives, which is what we do here.
 *
 * Follow up in wa_xfer_result_cb(), as that's where the whole state
 * Follow up in wa_dti_cb(), as that's where the whole state
 * machine starts.
 *
 * So here we just initialize the DTI URB for reading transfer result
@@ -1813,8 +1813,8 @@ void wa_handle_notif_xfer(struct wahc *wa, struct wa_notif_hdr *notif_hdr)
	usb_fill_bulk_urb(
		wa->dti_urb, wa->usb_dev,
		usb_rcvbulkpipe(wa->usb_dev, 0x80 | notif_xfer->bEndpoint),
		wa->xfer_result, wa->xfer_result_size,
		wa_xfer_result_cb, wa);
		wa->dti_buf, wa->dti_buf_size,
		wa_dti_cb, wa);

	wa->buf_in_urb = usb_alloc_urb(0, GFP_KERNEL);
	if (wa->buf_in_urb == NULL) {