| .. | .. | 
|---|
| 27 | 27 | #include <video/udlfb.h> | 
|---|
| 28 | 28 | #include "edid.h" | 
|---|
| 29 | 29 |  | 
|---|
|  | 30 | +#define OUT_EP_NUM	1	/* The endpoint number we will use */ | 
|---|
|  | 31 | + | 
|---|
| 30 | 32 | static const struct fb_fix_screeninfo dlfb_fix = { | 
|---|
| 31 | 33 | .id =           "udlfb", | 
|---|
| 32 | 34 | .type =         FB_TYPE_PACKED_PIXELS, | 
|---|
| .. | .. | 
|---|
| 1651 | 1653 | struct fb_info *info; | 
|---|
| 1652 | 1654 | int retval; | 
|---|
| 1653 | 1655 | struct usb_device *usbdev = interface_to_usbdev(intf); | 
|---|
| 1654 |  | -	struct usb_endpoint_descriptor *out; | 
|---|
|  | 1656 | +	static u8 out_ep[] = {OUT_EP_NUM + USB_DIR_OUT, 0}; | 
|---|
| 1655 | 1657 |  | 
|---|
| 1656 | 1658 | /* usb initialization */ | 
|---|
| 1657 | 1659 | dlfb = kzalloc(sizeof(*dlfb), GFP_KERNEL); | 
|---|
| .. | .. | 
|---|
| 1665 | 1667 | dlfb->udev = usb_get_dev(usbdev); | 
|---|
| 1666 | 1668 | usb_set_intfdata(intf, dlfb); | 
|---|
| 1667 | 1669 |  | 
|---|
| 1668 |  | -	retval = usb_find_common_endpoints(intf->cur_altsetting, NULL, &out, NULL, NULL); | 
|---|
| 1669 |  | -	if (retval) { | 
|---|
| 1670 |  | -		dev_err(&intf->dev, "Device should have at lease 1 bulk endpoint!\n"); | 
|---|
|  | 1670 | +	if (!usb_check_bulk_endpoints(intf, out_ep)) { | 
|---|
|  | 1671 | +		dev_err(&intf->dev, "Invalid DisplayLink device!\n"); | 
|---|
|  | 1672 | +		retval = -EINVAL; | 
|---|
| 1671 | 1673 | goto error; | 
|---|
| 1672 | 1674 | } | 
|---|
| 1673 | 1675 |  | 
|---|
| .. | .. | 
|---|
| 1926 | 1928 | } | 
|---|
| 1927 | 1929 |  | 
|---|
| 1928 | 1930 | /* urb->transfer_buffer_length set to actual before submit */ | 
|---|
| 1929 |  | -		usb_fill_bulk_urb(urb, dlfb->udev, usb_sndbulkpipe(dlfb->udev, 1), | 
|---|
|  | 1931 | +		usb_fill_bulk_urb(urb, dlfb->udev, | 
|---|
|  | 1932 | +			usb_sndbulkpipe(dlfb->udev, OUT_EP_NUM), | 
|---|
| 1930 | 1933 | buf, size, dlfb_urb_completion, unode); | 
|---|
| 1931 | 1934 | urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; | 
|---|
| 1932 | 1935 |  | 
|---|