mirror of https://gitee.com/openkylin/linux.git
f201a8a451
This set of patches introduces calls to the following set of functions: usb_endpoint_dir_in(epd) usb_endpoint_dir_out(epd) usb_endpoint_is_bulk_in(epd) usb_endpoint_is_bulk_out(epd) usb_endpoint_is_int_in(epd) usb_endpoint_is_int_out(epd) usb_endpoint_num(epd) usb_endpoint_type(epd) usb_endpoint_xfer_bulk(epd) usb_endpoint_xfer_control(epd) usb_endpoint_xfer_int(epd) usb_endpoint_xfer_isoc(epd) In some cases, introducing one of these functions is not possible, and it just replaces an explicit integer value by one of the following constants: USB_ENDPOINT_XFER_BULK USB_ENDPOINT_XFER_CONTROL USB_ENDPOINT_XFER_INT USB_ENDPOINT_XFER_ISOC In drivers/net/wireless/zd1211rw/zd_usb.c the code: (endpoint->bEndpointAddress & USB_TYPE_MASK) == USB_DIR_OUT is suspicious. If it is intended to use USB_ENDPOINT_DIR_MASK rather than USB_TYPE_MASK, then the whole conditional test could be converted to a call to usb_endpoint_is_bulk_in. An extract of the semantic patch that makes these changes is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @r1@ struct usb_endpoint_descriptor *epd; @@ - ((epd->bmAttributes & \(USB_ENDPOINT_XFERTYPE_MASK\|3\)) == - \(USB_ENDPOINT_XFER_CONTROL\|0\)) + usb_endpoint_xfer_control(epd) @r5@ struct usb_endpoint_descriptor *epd; @@ - ((epd->bEndpointAddress & \(USB_ENDPOINT_DIR_MASK\|0x80\)) == - \(USB_DIR_IN\|0x80\)) + usb_endpoint_dir_in(epd) @inc@ @@ #include <linux/usb.h> @depends on !inc && (r1||r5)@ @@ + #include <linux/usb.h> #include <linux/usb/...> // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
ath5k | ||
ath9k | ||
b43 | ||
b43legacy | ||
hostap | ||
ipw2x00 | ||
iwlwifi | ||
libertas | ||
libertas_tf | ||
orinoco | ||
p54 | ||
prism54 | ||
rt2x00 | ||
rtl818x | ||
zd1211rw | ||
Kconfig | ||
Makefile | ||
adm8211.c | ||
adm8211.h | ||
airo.c | ||
airo.h | ||
airo_cs.c | ||
arlan-main.c | ||
arlan-proc.c | ||
arlan.h | ||
atmel.c | ||
atmel.h | ||
atmel_cs.c | ||
atmel_pci.c | ||
i82586.h | ||
i82593.h | ||
mac80211_hwsim.c | ||
netwave_cs.c | ||
ray_cs.c | ||
ray_cs.h | ||
rayctl.h | ||
rndis_wlan.c | ||
strip.c | ||
wavelan.c | ||
wavelan.h | ||
wavelan.p.h | ||
wavelan_cs.c | ||
wavelan_cs.h | ||
wavelan_cs.p.h | ||
wl3501.h | ||
wl3501_cs.c | ||
zd1201.c | ||
zd1201.h |