Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp623823pxv; Thu, 15 Jul 2021 11:49:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzW0729Ur+evvIc3qC17XWl9U6oXDlE23+UIdl28S4B0H9CKQGRUai15Lx8LG/8EKN3f8IV X-Received: by 2002:a05:6638:3048:: with SMTP id u8mr5258988jak.91.1626374952842; Thu, 15 Jul 2021 11:49:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626374952; cv=none; d=google.com; s=arc-20160816; b=ozJbPazqtcm46lgs37eRtvoHx4QU3WCMdo9IAwzY6dcYykEypb1eIguqMss6JcIV/o kVQTDfoaAzuWNNKnoF6WK+pm+lBxTNy125Ku2Wcbq42yfekG0cWqj0qLteTGyLxszk0o eOCGL8ILo+jz9BAXoUQ9/bnPQVjTbZh0Yhp5YLvW+86JQ36mnK5KeTaQDMYkF6ZUMTtU JT/YC0+F7JEJjF3R5v4r4yl2BbZaPlugCQbfzCnOa6J7oaL1Zc0ULe5zgSiFD822ZU9P 0n540fOvclEcLksN20htnwR4MJYsDmr/fOqbaDyJ9ds3nzBy42m8W6mL3OjGEgXwfV2n /jJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=3G7ggLUsOSn+9avD7adHu2MIt3Sc62t6QUlp97CNH6Q=; b=teaTvHBllDNsAE95KGoEaWOaRUMAM58+hxrFgj4bCCT/meXJMr5RHwWIkjZqSpwPxK e7pqNRR/QwOc8afBm9TBzwTbanm5gi935O5AdOrXejyj8yxu9j2Y1Pq/MGOBr2TDgbUs JQ1n4/EgeCm5MzC7puv4wQ2k9HeV2RTwnxQ3Dotg1k60Kmrlziwa3LuJ0dArdfXDoLqd A+0tDQijPuKHOlOavNJqubpVMc/Z0I84Q3yFm4nQ7mkKEiDJUCSJHNTXWJNbbDO0Ys5O f0RgxafrlqIb89arx3jBrYcXEoZ9hfOsmOlTT4NpuZRIo5bJookr1rG1QTHD9nIGBPwE iatQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=cOyxvgiL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w12si7109046ilv.127.2021.07.15.11.49.00; Thu, 15 Jul 2021 11:49:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=cOyxvgiL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238383AbhGOSvI (ORCPT + 99 others); Thu, 15 Jul 2021 14:51:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:50386 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239420AbhGOSsG (ORCPT ); Thu, 15 Jul 2021 14:48:06 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 05EC3613D6; Thu, 15 Jul 2021 18:45:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626374712; bh=nA0u2vSnDAToGgwNOLeswbRytUAFyY7uC47mcXzBRyw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cOyxvgiL1IsQKqqtCJ7jrWisTElk9r+q062Q9xmMOHgXiJV7ipSWoCqS7ndBdTcJw UOa9XG1wIhxHB1QW8ZjUFb3jyRWpNRAv79gTDTWYBZHx81HXRc5mF/uoWhLNKR8Pys hjYiJgBdwLLxahoMS0xOeJ85unoNDUeUrUbjffig= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Johan Hovold , Hans Verkuil , Mauro Carvalho Chehab Subject: [PATCH 5.4 114/122] media: dtv5100: fix control-request directions Date: Thu, 15 Jul 2021 20:39:21 +0200 Message-Id: <20210715182521.782588327@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210715182448.393443551@linuxfoundation.org> References: <20210715182448.393443551@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Johan Hovold commit 8c8b9a9be2afa8bd6a72ad1130532baab9fab89d upstream. The direction of the pipe argument must match the request-type direction bit or control requests may fail depending on the host-controller-driver implementation. Fix the control requests which erroneously used usb_rcvctrlpipe(). Fixes: 8466028be792 ("V4L/DVB (8734): Initial support for AME DTV-5100 USB2.0 DVB-T") Cc: stable@vger.kernel.org # 2.6.28 Signed-off-by: Johan Hovold Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Greg Kroah-Hartman --- drivers/media/usb/dvb-usb/dtv5100.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) --- a/drivers/media/usb/dvb-usb/dtv5100.c +++ b/drivers/media/usb/dvb-usb/dtv5100.c @@ -26,6 +26,7 @@ static int dtv5100_i2c_msg(struct dvb_us u8 *wbuf, u16 wlen, u8 *rbuf, u16 rlen) { struct dtv5100_state *st = d->priv; + unsigned int pipe; u8 request; u8 type; u16 value; @@ -34,6 +35,7 @@ static int dtv5100_i2c_msg(struct dvb_us switch (wlen) { case 1: /* write { reg }, read { value } */ + pipe = usb_rcvctrlpipe(d->udev, 0); request = (addr == DTV5100_DEMOD_ADDR ? DTV5100_DEMOD_READ : DTV5100_TUNER_READ); type = USB_TYPE_VENDOR | USB_DIR_IN; @@ -41,6 +43,7 @@ static int dtv5100_i2c_msg(struct dvb_us break; case 2: /* write { reg, value } */ + pipe = usb_sndctrlpipe(d->udev, 0); request = (addr == DTV5100_DEMOD_ADDR ? DTV5100_DEMOD_WRITE : DTV5100_TUNER_WRITE); type = USB_TYPE_VENDOR | USB_DIR_OUT; @@ -54,7 +57,7 @@ static int dtv5100_i2c_msg(struct dvb_us memcpy(st->data, rbuf, rlen); msleep(1); /* avoid I2C errors */ - return usb_control_msg(d->udev, usb_rcvctrlpipe(d->udev, 0), request, + return usb_control_msg(d->udev, pipe, request, type, value, index, st->data, rlen, DTV5100_USB_TIMEOUT); } @@ -141,7 +144,7 @@ static int dtv5100_probe(struct usb_inte /* initialize non qt1010/zl10353 part? */ for (i = 0; dtv5100_init[i].request; i++) { - ret = usb_control_msg(udev, usb_rcvctrlpipe(udev, 0), + ret = usb_control_msg(udev, usb_sndctrlpipe(udev, 0), dtv5100_init[i].request, USB_TYPE_VENDOR | USB_DIR_OUT, dtv5100_init[i].value,