Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 304404
b: refs/heads/master
c: c46b8a6
h: refs/heads/master
v: v3
  • Loading branch information
Greg Kroah-Hartman committed Apr 23, 2012
1 parent ab772d3 commit 64ccc75
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 31 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 305b8766a9833491b388ac98d57ce38a8106a1e0
refs/heads/master: c46b8a6567fb6e0119cb22819aa65faf8d101a2f
47 changes: 17 additions & 30 deletions trunk/drivers/staging/line6/driver.c
Original file line number Diff line number Diff line change
Expand Up @@ -92,15 +92,10 @@ const unsigned char line6_midi_id[] = {
Code to request version of POD, Variax interface
(and maybe other devices).
*/
static const char line6_request_version0[] = {
static const char line6_request_version[] = {
0xf0, 0x7e, 0x7f, 0x06, 0x01, 0xf7
};

/*
Copy of version request code with GFP_KERNEL flag for use in URB.
*/
static const char *line6_request_version;

struct usb_line6 *line6_devices[LINE6_MAX_DEVICES];

/**
Expand Down Expand Up @@ -336,8 +331,21 @@ int line6_send_raw_message_async(struct usb_line6 *line6, const char *buffer,
*/
int line6_version_request_async(struct usb_line6 *line6)
{
return line6_send_raw_message_async(line6, line6_request_version,
sizeof(line6_request_version0));
char *buffer;
int retval;

buffer = kmalloc(sizeof(line6_request_version), GFP_ATOMIC);
if (buffer == NULL) {
dev_err(line6->ifcdev, "Out of memory");
return -ENOMEM;
}

memcpy(buffer, line6_request_version, sizeof(line6_request_version));

retval = line6_send_raw_message_async(line6, buffer,
sizeof(line6_request_version));
kfree(buffer);
return retval;
}

/*
Expand Down Expand Up @@ -1297,29 +1305,9 @@ static struct usb_driver line6_driver = {
*/
static int __init line6_init(void)
{
int retval;

printk(KERN_INFO "%s driver version %s\n", DRIVER_NAME, DRIVER_VERSION);

retval = usb_register(&line6_driver);

if (retval) {
err("usb_register failed. Error number %d", retval);
return retval;
}

line6_request_version = kmalloc(sizeof(line6_request_version0),
GFP_KERNEL);

if (line6_request_version == NULL) {
err("Out of memory");
return -ENOMEM;
}

memcpy((char *)line6_request_version, line6_request_version0,
sizeof(line6_request_version0));

return retval;
return usb_register(&line6_driver);
}

/*
Expand Down Expand Up @@ -1347,7 +1335,6 @@ static void __exit line6_exit(void)
}

usb_deregister(&line6_driver);
kfree(line6_request_version);
}

module_init(line6_init);
Expand Down

0 comments on commit 64ccc75

Please sign in to comment.