Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp3771746pxv; Mon, 19 Jul 2021 08:23:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyW+pe3Xl6chYQjYdbF8yPDlPhVzlIG09IKSHKRzC/c1GEdDbbFbGBwVbIgyP5vmeCa4km6 X-Received: by 2002:a5d:9ccb:: with SMTP id w11mr14112416iow.174.1626708182180; Mon, 19 Jul 2021 08:23:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626708182; cv=none; d=google.com; s=arc-20160816; b=fH+IU/W3ByqvG2x4bJGip9slB5ws+2UUjRg6t2z4O0+I+V+i+/F4Iosmyyy92jHhob UHBDaq7E5EKXf2yDsJbay53qBqbMkFFU9vd3uFbBqi58kZiJenxEcjz3iLGt6Ahr0rpI 4P4SYFTlZB5RpGkU+UOM9aRsFMuJ1zvMFlzdBFpN96loxmTatO155LFqfbIBWtOQz+YG bfrz7ecDjS2ykTtE4Kbcadd7mUdXFgMdqnc9y4Z4yMJXYdOcvpdiG9K0gT1NZLXTMGIl 6Iu1e2qQLsYtPEC5+tlEQvAXaxiDcs91+Xo2GgMtpbNI/w8wA7PKEB4fayGaOucvMSum +HuQ== 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=24f7+iyNgH4FBLFla+IvNSvOr1vxd3scczOoGxLpmtE=; b=Y5YOHUShXhB53fCLCHqdvYQSjiVAITlbpBD0P9RSbJoGkiTv4ZMH7Ksem8sxi4lb6M 3lhddOGQYLS4ege1e4unTthp9I+ZP6DwWcRsmovWFF5L1uyCUtW5gWFp2G+DokFu0h+X fgqk82zgtV/MJylfpZJjCd2U5I7nxYZ4E21sMKvpwDioeiDmK8ygeuOrfW0bhss3iw2r 0BDTNXe3IdJfrpss5gcqoqa7ajF0+b+hA27hOSaknnRC+Yn9xAzo4ITwAnPeLNDc3okI z9q2/hcXq2qRpx5nSsahryN5nxe2rsKjOn0z5uFWv+vN8kJju6TDViXb0usBdMRZTPLP BpDQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=PLyro++5; 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 t8si16415098ilu.144.2021.07.19.08.22.50; Mon, 19 Jul 2021 08:23:02 -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=PLyro++5; 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 S244534AbhGSOl1 (ORCPT + 99 others); Mon, 19 Jul 2021 10:41:27 -0400 Received: from mail.kernel.org ([198.145.29.99]:46344 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242576AbhGSOaj (ORCPT ); Mon, 19 Jul 2021 10:30:39 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 5A98761003; Mon, 19 Jul 2021 15:11:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626707477; bh=G5FeknF3m6G3GQ7wM6Ps0+uAXtRy9Eute9rBkzUZdM4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PLyro++5XYSVHhm2klrVuXTARmRgirW+Sh9uUArzwcXsmAA8b8d56ZQh+b7RGF4E/ SrzUUFrCdO7Av7UmR6PMp2tLywJ04jdjuM2osjd4BqeciN5Iii9loXVyfAB8KeulHf QDCekOa/RaMkeqtfgrZCh9jHenKSIUjgWPJjsr6E= 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 4.9 173/245] media: dtv5100: fix control-request directions Date: Mon, 19 Jul 2021 16:51:55 +0200 Message-Id: <20210719144945.989472891@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210719144940.288257948@linuxfoundation.org> References: <20210719144940.288257948@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 @@ -39,6 +39,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; @@ -47,6 +48,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; @@ -54,6 +56,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; @@ -67,7 +70,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); } @@ -154,7 +157,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,