Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp709079rwr; Thu, 20 Apr 2023 05:34:03 -0700 (PDT) X-Google-Smtp-Source: AKy350Zh0D0DfyXcyXdE0aeyNgG7FSgXucvh6LINi/jIVD19hF2yFe4j+veEG6RtTGkU9miNmjqA X-Received: by 2002:a05:6a00:2d1d:b0:63d:3411:f9ec with SMTP id fa29-20020a056a002d1d00b0063d3411f9ecmr1345126pfb.20.1681994042818; Thu, 20 Apr 2023 05:34:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1681994042; cv=none; d=google.com; s=arc-20160816; b=gHl8ZYTj9rIvlAEWJVzW5OTPwkvL/zpcgKc2Rq6h6Z5qr1WEQ5vMJ/kVJMdebQbhQ3 3y+NwiQ+gcfXsEpGqa9SzQHmpTrNbpU+aa2dE/P+deRnXaccT5ACs6R77PLCRdZZDLRM uUnr6GuRP3YpAtnIva1gbaNPSS1lwtp5dukqM79C1f6B0ThW6+TSNBcZ2QKXuv+7ISjf qJ5HU1KBLC0hnAJaR7tBMpDEArSUinrDDQO7g/osUGgJKoJyZkyft7U7+bMGlqnG4ZEs ITRE1XEdguLoSsl0+A4zd2eqsdKay6jq/cfXDAlDCIuJKEOc3DQ2W+Slx/FzdloUiSvP hI7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=2v5eLRlBtUy2lCUCHDvNoN3W3igacSX5KJgxgA2LAMs=; b=jpqcOK69Ji6xei+HGuyOowhfghWbE6vn5RmMHTeAlD6tawxKjI9OfuI6dIgCQvVeFY oOKFN7BN25R5vyu4k1Nm60OTotV5NXPaOlI9gAS4dP1tO2zWEHjmEey2F+l2XqXnuZqY 88kUcF4Ujl5O24H2HBPBjYn6PZFUz7vKCDYTxkVMLPd4Rw6Dt3r0pPRPh87zoMD1hFkk Ztb6SnVF0OzswbeSpC5okzRgz6reIaVBSKilq166o4crDX6Zj3nyu1dYI5BNzr6SrQ4E LByz8Zr04lX0+9u9Hhxwz7r87DMZGCSaFSPnNy5eoKAdG9bLobe5xBoEpH6edLAOYP/C stuQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q19-20020aa79613000000b0063d5cfd0867si1481493pfg.351.2023.04.20.05.33.44; Thu, 20 Apr 2023 05:34:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234869AbjDTMVt (ORCPT + 99 others); Thu, 20 Apr 2023 08:21:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44090 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234827AbjDTMVr (ORCPT ); Thu, 20 Apr 2023 08:21:47 -0400 Received: from mx2.zhaoxin.com (mx2.zhaoxin.com [203.110.167.99]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 80C095585 for ; Thu, 20 Apr 2023 05:21:45 -0700 (PDT) X-ASG-Debug-ID: 1681993302-1eb14e63872ee80001-xx1T2L Received: from ZXSHMBX3.zhaoxin.com (ZXSHMBX3.zhaoxin.com [10.28.252.165]) by mx2.zhaoxin.com with ESMTP id D4fzVGZ12vQXLpQS (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Thu, 20 Apr 2023 20:21:42 +0800 (CST) X-Barracuda-Envelope-From: WeitaoWang-oc@zhaoxin.com X-Barracuda-RBL-Trusted-Forwarder: 10.28.252.165 Received: from zxbjmbx1.zhaoxin.com (10.29.252.163) by ZXSHMBX3.zhaoxin.com (10.28.252.165) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Thu, 20 Apr 2023 20:21:42 +0800 Received: from [10.29.8.21] (10.29.8.21) by zxbjmbx1.zhaoxin.com (10.29.252.163) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Thu, 20 Apr 2023 20:21:41 +0800 X-Barracuda-RBL-Trusted-Forwarder: 10.28.252.165 Message-ID: X-Barracuda-RBL-Trusted-Forwarder: 10.29.8.21 Date: Fri, 21 Apr 2023 04:21:40 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH 2/3] xhci: Add zhaoxin xHCI U1/U2 feature support Content-Language: en-US X-ASG-Orig-Subj: Re: [PATCH 2/3] xhci: Add zhaoxin xHCI U1/U2 feature support To: Sergei Shtylyov , , , , CC: , References: <20230420172130.375819-1-WeitaoWang-oc@zhaoxin.com> <20230420172130.375819-3-WeitaoWang-oc@zhaoxin.com> From: "WeitaoWang-oc@zhaoxin.com" In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.29.8.21] X-ClientProxiedBy: ZXSHCAS1.zhaoxin.com (10.28.252.161) To zxbjmbx1.zhaoxin.com (10.29.252.163) X-Barracuda-Connect: ZXSHMBX3.zhaoxin.com[10.28.252.165] X-Barracuda-Start-Time: 1681993302 X-Barracuda-Encrypted: ECDHE-RSA-AES128-GCM-SHA256 X-Barracuda-URL: https://10.28.252.36:4443/cgi-mod/mark.cgi X-Virus-Scanned: by bsmtpd at zhaoxin.com X-Barracuda-Scan-Msg-Size: 1867 X-Barracuda-BRTS-Status: 1 X-Barracuda-Bayes: INNOCENT GLOBAL 0.0000 1.0000 -2.0210 X-Barracuda-Spam-Score: 1.09 X-Barracuda-Spam-Status: No, SCORE=1.09 using global scores of TAG_LEVEL=1000.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=9.0 tests=DATE_IN_FUTURE_06_12, DATE_IN_FUTURE_06_12_2 X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.3.107677 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- 0.01 DATE_IN_FUTURE_06_12 Date: is 6 to 12 hours after Received: date 3.10 DATE_IN_FUTURE_06_12_2 DATE_IN_FUTURE_06_12_2 X-Spam-Status: No, score=-1.6 required=5.0 tests=BAYES_00,DATE_IN_FUTURE_06_12, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2023/4/20 17:39, Sergei Shtylyov wrote: > On 4/20/23 8:21 PM, Weitao Wang wrote: > >> Add U1/U2 feature support of xHCI for zhaoxin. >> >> Signed-off-by: Weitao Wang > [...] > >> diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c >> index 6307bae9cddf..730c0f68518d 100644 >> --- a/drivers/usb/host/xhci.c >> +++ b/drivers/usb/host/xhci.c > [...] >> @@ -4938,6 +4938,27 @@ static int xhci_update_timeout_for_interface(struct xhci_hcd *xhci, >> return 0; >> } >> >> +static int xhci_check_zhaoxin_tier_policy(struct usb_device *udev, >> + enum usb3_link_state state) >> +{ >> + struct usb_device *parent; >> + unsigned int num_hubs; >> + >> + /* Don't enable U1/U2 if the device is on an external hub. */ >> + for (parent = udev->parent, num_hubs = 0; parent->parent; >> + parent = parent->parent) >> + num_hubs++; >> + >> + if (num_hubs < 1) >> + return 0; >> + >> + dev_dbg(&udev->dev, "Disabling U1/U2 link state for device" >> + " below external hub.\n"); >> + dev_dbg(&udev->dev, "Plug device into root hub " >> + "to decrease power consumption.\n"); > > Please don't break up the message strings. Thanks for your advice, and I will merge this message in next patch version. > [...] >> @@ -4965,6 +4986,8 @@ static int xhci_check_tier_policy(struct xhci_hcd *xhci, >> { >> if (xhci->quirks & XHCI_INTEL_HOST) >> return xhci_check_intel_tier_policy(udev, state); >> + else if (xhci->quirks & XHCI_ZHAOXIN_HOST) > > *else* not needed after *return*. This function need a "int" type return value. If remove "else" branch, vendor other than intel and zhaoxin will not get a return value. Best Regards, Weitao >> + return xhci_check_zhaoxin_tier_policy(udev, state); >> else >> return 0; >> } > > MBR, Sergey > .