summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-09-02 13:52:09 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-09-02 13:52:08 -0700
commitfd69ea18255ab582a865cd9dc07a6e06f42eb1b4 (patch)
tree9f981c750e99d93da4e70db25e44389fedefb1df
parentab26d098793adbf90b77d414663e34ac0c7315f6 (diff)
parent239e2be709b74d2bbcdbb8c37c9d1842837ef391 (diff)
Merge "USB: f_accessory: set manufacturer and model string to default value"
-rw-r--r--drivers/usb/gadget/function/f_accessory.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/usb/gadget/function/f_accessory.c b/drivers/usb/gadget/function/f_accessory.c
index 908cfb33bf99..028bde7b0241 100644
--- a/drivers/usb/gadget/function/f_accessory.c
+++ b/drivers/usb/gadget/function/f_accessory.c
@@ -609,8 +609,7 @@ static ssize_t acc_read(struct file *fp, char __user *buf,
{
struct acc_dev *dev = fp->private_data;
struct usb_request *req;
- ssize_t r = count;
- unsigned xfer;
+ ssize_t r = count, xfer, len;
int ret = 0;
pr_debug("acc_read(%zu)\n", count);
@@ -623,6 +622,8 @@ static ssize_t acc_read(struct file *fp, char __user *buf,
if (count > BULK_BUFFER_SIZE)
count = BULK_BUFFER_SIZE;
+ len = ALIGN(count, dev->ep_out->maxpacket);
+
/* we will block until we're online */
pr_debug("acc_read: waiting for online\n");
ret = wait_event_interruptible(dev->read_wq, dev->online);
@@ -640,7 +641,7 @@ static ssize_t acc_read(struct file *fp, char __user *buf,
requeue_req:
/* queue a request */
req = dev->rx_req[0];
- req->length = count;
+ req->length = len;
dev->rx_done = 0;
ret = usb_ep_queue(dev->ep_out, req, GFP_KERNEL);
if (ret < 0) {
@@ -936,6 +937,8 @@ int acc_ctrlrequest(struct usb_composite_dev *cdev,
memset(dev->serial, 0, sizeof(dev->serial));
dev->start_requested = 0;
dev->audio_mode = 0;
+ strlcpy(dev->manufacturer, "Android", ACC_STRING_SIZE);
+ strlcpy(dev->model, "Android", ACC_STRING_SIZE);
}
}