From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B11AFC433DB for ; Sat, 6 Mar 2021 03:16:00 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3C49F65012 for ; Sat, 6 Mar 2021 03:16:00 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3C49F65012 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=J4mSi6bBczFaZofSaaDgNXvRYD6JNY2Azamq63uLblU=; b=rRZrVe6xsd8kl+QR39v72FTU/ NPp6wvonhb2JcMXvWvZn2/f3RgjfO2ddP6Rdd8uMEBG5Xg8qdJhGVmsUAVUIoR0RYnh3Gf3FhFetu BFVtYPtahqaxC4pX4Qk/iJh7IR63Es3fPKxLvLDmPRhHs+Y9uSy1YQYgQexnHK/CNbty/ok3EX5pT nNW2y2pdhNQIKcBrII4fhPvmFZOoh5YJxjC/sJ9HDeLltax6aAM/RiB6u/l8qNWU/xiR+d6FdE2AK K9XdAxPU7oWg5hIDw5CFMeCNFuJTS66NJo+8Vpn/Z2vOabW0Bynjo+2rQ3vm55x6I16r2VB8HlpIj vLufDJ8aQ==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lINOE-000cya-LK; Sat, 06 Mar 2021 03:14:03 +0000 Received: from mail.kernel.org ([198.145.29.99]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lINO5-000cuo-FM for linux-arm-kernel@lists.infradead.org; Sat, 06 Mar 2021 03:13:55 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id A14C764F9C; Sat, 6 Mar 2021 03:13:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1615000429; bh=2MzrbkBJCnXle4Uc8uEBZaFROhXRz9S2cN41AUv3PIw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ZUOS230VbWGPR7TkKb3mHIrAq+n0fQ7RJhuGZKtKIRPMn0ElrqqbcR52HOxDJ2u84 rHqPZmLayJMBB36NtszSBpEltPuCRo4Bm+x9El0aNNvdGOOTCjFLkoc4upr2d4Mrof uz6rt6B8I/kleQWUNuuOCFRKpXouWqN8AjCAVYe6rLxsbPIAblsR2P/lIYMvG9zreJ Frs6lihHspoWZmN+hsnEVE1js9AJXo2aWfMmSve7uz7S+YdbbiyQQYqXx0o2O0dnG0 ELAaSe9qhRXjpb5CDvdz9cR2QQwEM5gqIFpg7d4wyBcd80OkfI0+hG+iFnifrsewEu qZFXS9pdrQbIw== Date: Sat, 6 Mar 2021 11:13:43 +0800 From: Peter Chen To: Frank Li Cc: pawell@cadence.com, a-govindraju@ti.com, linux-imx@nxp.com, linux-usb@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v1 2/2] usb: cdns3: imx: add power lost support for system resume Message-ID: <20210306031343.GA28902@b29397-desktop> References: <20210218225109.265730-1-Frank.Li@nxp.com> <20210218225109.265730-2-Frank.Li@nxp.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20210218225109.265730-2-Frank.Li@nxp.com> User-Agent: Mutt/1.9.4 (2018-02-28) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210306_031353_986408_0F9C93C6 X-CRM114-Status: GOOD ( 17.44 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 21-02-18 16:51:09, Frank Li wrote: > From: Frank Li > > imx need special handle when controller lost power > > Signed-off-by: Peter Chen > Signed-off-by: Frank Li Applied both, thanks. Peter > --- > split imx part > > drivers/usb/cdns3/cdns3-imx.c | 34 ++++++++++++++++++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/drivers/usb/cdns3/cdns3-imx.c b/drivers/usb/cdns3/cdns3-imx.c > index 8f88eec0b0ea..708b51cc5844 100644 > --- a/drivers/usb/cdns3/cdns3-imx.c > +++ b/drivers/usb/cdns3/cdns3-imx.c > @@ -361,6 +361,39 @@ static int cdns_imx_suspend(struct device *dev) > > return 0; > } > + > + > +/* Indicate if the controller was power lost before */ > +static inline bool cdns_imx_is_power_lost(struct cdns_imx *data) > +{ > + u32 value; > + > + value = cdns_imx_readl(data, USB3_CORE_CTRL1); > + if ((value & SW_RESET_MASK) == ALL_SW_RESET) > + return true; > + else > + return false; > +} > + > +static int cdns_imx_system_resume(struct device *dev) > +{ > + struct cdns_imx *data = dev_get_drvdata(dev); > + int ret; > + > + ret = cdns_imx_resume(dev); > + if (ret) > + return ret; > + > + if (cdns_imx_is_power_lost(data)) { > + dev_dbg(dev, "resume from power lost\n"); > + ret = cdns_imx_noncore_init(data); > + if (ret) > + cdns_imx_suspend(dev); > + } > + > + return ret; > +} > + > #else > static int cdns_imx_platform_suspend(struct device *dev, > bool suspend, bool wakeup) > @@ -372,6 +405,7 @@ static int cdns_imx_platform_suspend(struct device *dev, > > static const struct dev_pm_ops cdns_imx_pm_ops = { > SET_RUNTIME_PM_OPS(cdns_imx_suspend, cdns_imx_resume, NULL) > + SET_SYSTEM_SLEEP_PM_OPS(cdns_imx_suspend, cdns_imx_system_resume) > }; > > static const struct of_device_id cdns_imx_of_match[] = { > -- > 2.25.1 > -- Thanks, Peter Chen _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel