lkml.org 
[lkml]   [2009]   [Jan]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH 2/2] sound/usb: Use negated usb_endpoint_xfer_control, etc
From: Julia Lawall <julia@diku.dk>

This patch extends 42a6e66f1e40a930d093c33ba0bb9d8d8e4555ed by using
usb_endpoint_xfer_control, usb_endpoint_xfer_isoc, usb_endpoint_xfer_bulk,
and usb_endpoint_xfer_int in the negated case as well.

This patch also rewrites some calls to usb_endpoint_dir_in as negated calls
to !usb_endpoint_dir_out, and vice versa, to better correspond to the
intent of the original code.

The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@ struct usb_endpoint_descriptor *epd; @@

- (usb_endpoint_type(epd) != \(USB_ENDPOINT_XFER_CONTROL\|0\))
+ !usb_endpoint_xfer_control(epd)

@@ struct usb_endpoint_descriptor *epd; @@

- (usb_endpoint_type(epd) != \(USB_ENDPOINT_XFER_ISOC\|1\))
+ !usb_endpoint_xfer_isoc(epd)

@@ struct usb_endpoint_descriptor *epd; @@

- (usb_endpoint_type(epd) != \(USB_ENDPOINT_XFER_BULK\|2\))
+ !usb_endpoint_xfer_bulk(epd)

@@ struct usb_endpoint_descriptor *epd; @@

- (usb_endpoint_type(epd) != \(USB_ENDPOINT_XFER_INT\|3\))
+ !usb_endpoint_xfer_int(epd)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>

---
diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
index 3a9a9fe..320641a 100644
--- a/sound/usb/usbmidi.c
+++ b/sound/usb/usbmidi.c
@@ -1392,8 +1392,7 @@ static int snd_usbmidi_get_ms_info(struct snd_usb_midi* umidi,
for (i = 0; i < intfd->bNumEndpoints; ++i) {
hostep = &hostif->endpoint[i];
ep = get_ep_desc(hostep);
- if (usb_endpoint_type(ep) != USB_ENDPOINT_XFER_BULK &&
- usb_endpoint_type(ep) != USB_ENDPOINT_XFER_INT)
+ if (!usb_endpoint_xfer_bulk(ep) && !usb_endpoint_xfer_int(ep))
continue;
ms_ep = (struct usb_ms_endpoint_descriptor*)hostep->extra;
if (hostep->extralen < 4 ||
@@ -1495,8 +1494,8 @@ static int snd_usbmidi_detect_endpoints(struct snd_usb_midi* umidi,

for (i = 0; i < intfd->bNumEndpoints; ++i) {
epd = get_endpoint(hostif, i);
- if (usb_endpoint_type(epd) != USB_ENDPOINT_XFER_BULK &&
- usb_endpoint_type(epd) != USB_ENDPOINT_XFER_INT)
+ if (!usb_endpoint_xfer_bulk(epd) &&
+ !usb_endpoint_xfer_int(epd))
continue;
if (out_eps < max_endpoints &&
usb_endpoint_dir_out(epd)) {
@@ -1607,21 +1606,19 @@ static int snd_usbmidi_create_endpoints_midiman(struct snd_usb_midi* umidi,
}

epd = get_endpoint(hostif, 0);
- if (usb_endpoint_dir_out(epd) ||
- usb_endpoint_type(epd) != USB_ENDPOINT_XFER_INT) {
+ if (!usb_endpoint_dir_in(epd) || !usb_endpoint_xfer_int(epd)) {
snd_printdd(KERN_ERR "endpoint[0] isn't interrupt\n");
return -ENXIO;
}
epd = get_endpoint(hostif, 2);
- if (usb_endpoint_dir_in(epd) ||
- usb_endpoint_type(epd) != USB_ENDPOINT_XFER_BULK) {
+ if (!usb_endpoint_dir_out(epd) || !usb_endpoint_xfer_bulk(epd)) {
snd_printdd(KERN_ERR "endpoint[2] isn't bulk output\n");
return -ENXIO;
}
if (endpoint->out_cables > 0x0001) {
epd = get_endpoint(hostif, 4);
- if (usb_endpoint_dir_in(epd) ||
- usb_endpoint_type(epd) != USB_ENDPOINT_XFER_BULK) {
+ if (!usb_endpoint_dir_out(epd) ||
+ !usb_endpoint_xfer_bulk(epd)) {
snd_printdd(KERN_ERR "endpoint[4] isn't bulk output\n");
return -ENXIO;
}
diff --git a/sound/usb/usbmixer.c b/sound/usb/usbmixer.c
index 9ce626f..00397c8 100644
--- a/sound/usb/usbmixer.c
+++ b/sound/usb/usbmixer.c
@@ -1755,8 +1755,7 @@ static int snd_usb_mixer_status_create(struct usb_mixer_interface *mixer)
if (get_iface_desc(hostif)->bNumEndpoints < 1)
return 0;
ep = get_endpoint(hostif, 0);
- if (usb_endpoint_dir_out(ep) ||
- usb_endpoint_type(ep) != USB_ENDPOINT_XFER_INT)
+ if (!usb_endpoint_dir_in(ep) || !usb_endpoint_xfer_int(ep))
return 0;

epnum = usb_endpoint_num(ep);

\
 
 \ /
  Last update: 2009-01-03 17:57    [W:0.042 / U:3.964 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site