Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp2463875imm; Mon, 24 Sep 2018 04:58:45 -0700 (PDT) X-Google-Smtp-Source: ACcGV63AqCTwO8SUQM4IT0IsVU+S8dRnnmA7f3d7pN+2KxnTBEHi0cA3EFdz5A+aeS3BdnpgeCwR X-Received: by 2002:a17:902:27a8:: with SMTP id d37-v6mr10427978plb.290.1537790325486; Mon, 24 Sep 2018 04:58:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537790325; cv=none; d=google.com; s=arc-20160816; b=E8RYLWNE06s/rfML77I7b1dOPW5CkgESQxM5vicF+p+7MSjuT3WxVhf9T9I+osFnE2 1l5qXh/dzpo/eyUNvao+rmELPMjuO6tGf79vF8CLJccVWb2oN28XDkRRK7C62Hphs+xy r8EKLvSdxawiSipWRMMHbV40/2GBlBuC1Ns5eLoNsEIXXcyZFUmqgnYr42+G2ryB7gb9 t0a+BVHpn7GQAQaBJrB2wYX8lQXjBhLShaWMg/I7vIy0p+H/BRyfLdhi/WJBSFeKLFHx GE5n1FSOrtm4Mu/gkg12eUwJNcdFZXMQFLZl4fd0PJkrlieCfLQn/xLXMzpvNoTSfAgQ jwAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from; bh=66gxAwebIOJOifwmkjFguhT1KZknPRWA5zZ6WPAg3wE=; b=ZbQ4TRAj6BTUEB93rf1thAtmo4rpnv5VSSzJd5IJitfEEjLyDoC2cGQD39OF9t/PiY EIJjdGfg/DkklIssDSKf9r9H6iToBhvo6NIcEIydWtBPhPdZFCsQwkkfp6aWWnMvrwTB vCO49dLvB3yoHTPW6jX1RawKUJDIzcOJcaknphWOZZ6Z2QIaZQZ3PrLAGd89RMwCwf5m cOQXYTGNp40TqYf6BUkgsSgnPrPPE9He1e1pwL5Vz6gowv7ouIT4TQNDAlIC7vrGfadC xkNz1bB062Kbs+W5+v3Bf/CRLvNnpYpzYAaXG5k7A3aol+ZKEffurPmPkDDAm5UYhCK0 8RJQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a11-v6si12857770plp.199.2018.09.24.04.58.30; Mon, 24 Sep 2018 04:58:45 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730269AbeIXR7Y (ORCPT + 99 others); Mon, 24 Sep 2018 13:59:24 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:52258 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728835AbeIXR7Y (ORCPT ); Mon, 24 Sep 2018 13:59:24 -0400 Received: from localhost (ip-213-127-77-73.ip.prioritytelecom.net [213.127.77.73]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 9A8B61072; Mon, 24 Sep 2018 11:57:38 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Tim Anderson , Alan Stern Subject: [PATCH 4.4 36/70] USB: Add quirk to support DJI CineSSD Date: Mon, 24 Sep 2018 13:52:35 +0200 Message-Id: <20180924113103.270601160@linuxfoundation.org> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20180924113058.420454070@linuxfoundation.org> References: <20180924113058.420454070@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Tim Anderson commit f45681f9becaa65111ed0a691ccf080a0cd5feb8 upstream. This device does not correctly handle the LPM operations. Also, the device cannot handle ATA pass-through commands and locks up when attempted while running in super speed. This patch adds the equivalent quirk logic as found in uas. Signed-off-by: Tim Anderson Acked-by: Alan Stern Cc: stable Signed-off-by: Greg Kroah-Hartman --- drivers/usb/core/quirks.c | 3 +++ drivers/usb/storage/scsiglue.c | 9 +++++++++ drivers/usb/storage/unusual_devs.h | 7 +++++++ 3 files changed, 19 insertions(+) --- a/drivers/usb/core/quirks.c +++ b/drivers/usb/core/quirks.c @@ -259,6 +259,9 @@ static const struct usb_device_id usb_qu { USB_DEVICE(0x2040, 0x7200), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS }, + /* DJI CineSSD */ + { USB_DEVICE(0x2ca3, 0x0031), .driver_info = USB_QUIRK_NO_LPM }, + /* INTEL VALUE SSD */ { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, --- a/drivers/usb/storage/scsiglue.c +++ b/drivers/usb/storage/scsiglue.c @@ -341,6 +341,15 @@ static int queuecommand_lck(struct scsi_ return 0; } + if ((us->fflags & US_FL_NO_ATA_1X) && + (srb->cmnd[0] == ATA_12 || srb->cmnd[0] == ATA_16)) { + memcpy(srb->sense_buffer, usb_stor_sense_invalidCDB, + sizeof(usb_stor_sense_invalidCDB)); + srb->result = SAM_STAT_CHECK_CONDITION; + done(srb); + return 0; + } + /* enqueue the command and wake up the control thread */ srb->scsi_done = done; us->srb = srb; --- a/drivers/usb/storage/unusual_devs.h +++ b/drivers/usb/storage/unusual_devs.h @@ -2213,6 +2213,13 @@ UNUSUAL_DEV( 0x4146, 0xba01, 0x0100, 0x "Micro Mini 1GB", USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_NOT_LOCKABLE ), +/* Reported-by: Tim Anderson */ +UNUSUAL_DEV( 0x2ca3, 0x0031, 0x0000, 0x9999, + "DJI", + "CineSSD", + USB_SC_DEVICE, USB_PR_DEVICE, NULL, + US_FL_NO_ATA_1X), + /* * Nick Bowler * SCSI stack spams (otherwise harmless) error messages.