mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-11 23:50:25 +00:00
video: udlfb: Fix read EDID timeout
While usb_control_msg function expects timeout in miliseconds, a value of HZ is used. Replace it with USB_CTRL_GET_TIMEOUT and also fix error message which looks like: udlfb: Read EDID byte 78 failed err ffffff92 as error is either negative errno or number of bytes transferred use %d format specifier. Returned EDID is in second byte, so return error when less than two bytes are received. Fixes: 18dffdf8913a ("staging: udlfb: enhance EDID and mode handling support") Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Cc: Bernie Thompson <bernie@plugable.com> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
This commit is contained in:
parent
1e7d4beba2
commit
c987694755
@ -769,11 +769,11 @@ static int dlfb_get_edid(struct dlfb_data *dev, char *edid, int len)
|
||||
|
||||
for (i = 0; i < len; i++) {
|
||||
ret = usb_control_msg(dev->udev,
|
||||
usb_rcvctrlpipe(dev->udev, 0), (0x02),
|
||||
(0x80 | (0x02 << 5)), i << 8, 0xA1, rbuf, 2,
|
||||
HZ);
|
||||
if (ret < 1) {
|
||||
pr_err("Read EDID byte %d failed err %x\n", i, ret);
|
||||
usb_rcvctrlpipe(dev->udev, 0), 0x02,
|
||||
(0x80 | (0x02 << 5)), i << 8, 0xA1,
|
||||
rbuf, 2, USB_CTRL_GET_TIMEOUT);
|
||||
if (ret < 2) {
|
||||
pr_err("Read EDID byte %d failed: %d\n", i, ret);
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user