Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp5832279imm; Tue, 26 Jun 2018 19:52:07 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKOb5zdjXOBhvvjhtbzYdJyULgldsymwbYhWf7gp/5muYvazUUkFXWEUmKBi61cThNeEAlr X-Received: by 2002:a63:2404:: with SMTP id k4-v6mr3494350pgk.191.1530067927655; Tue, 26 Jun 2018 19:52:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530067927; cv=none; d=google.com; s=arc-20160816; b=SOZYNQTi1TQ+OBnE06SugQSwamZ8/dNgi+5Lkzh5y5SnaMKWojUb6Unm/qoZUHDCOs CNRF844dSDawFhZlDSFxBaW4Z6Z3EDvmgi0YamINsdA+yH5skcdnQs0H82slz4YJjUXT oZNbLRzBJRKQU8fIiu+USniPdCrKABCxIVKnBXsGWGddvHp3lM2cQcMMYJywvdjUjNuJ jSTtgjh6lY909yOCrGY8zJYd6jjQyY61ctV9nypNjdWiQt4ZM1D8e/wpeYqSuj43LvhZ fsI2ZRtiA0VRiSfOfj0w1+zNtbUKjz3StEILHItDohXN7jgXzhUZX7N3Bawi505mPeTL TGbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=QdtZqjNB56cuv6P2+2qAxXejqQGAnhJV3nzPHfZAx5I=; b=SAtWE9HmAvK9NSEcrYszxb5Ms799peS1CH2iVQgMo+Acm1EVI9WlSXoC/F+cLcnQ91 o+LyPt6mvw/ytDLA5ZPhkGhrmuUq8cJT3Zn/RP2huXFZFaSl8PpGK7HRXCaaTs+b4vRx 8bsLSw6V1nYlHpYtWtNe+F/+icZZEhy+eo3KOEaKn/pVN2hrLC49EBwCfdDe2Az2q5ex dVR7EVDVUuMANGfTuvFoKzL1c0oNQBbXqmgl9BXgy3XqQ72u1upvFbJhTlispyDFJnz0 FGt3Mhz2d02Fw3YSoElu4wdw+mFZJrXZ09iEwbti4suZu9coNLukWn2iC5W0xtbV5u/1 OWjw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Nq+HTrFv; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i6-v6si2643225pgt.470.2018.06.26.19.51.53; Tue, 26 Jun 2018 19:52:07 -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; dkim=pass header.i=@linaro.org header.s=google header.b=Nq+HTrFv; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752214AbeF0CRY (ORCPT + 99 others); Tue, 26 Jun 2018 22:17:24 -0400 Received: from mail-ot0-f194.google.com ([74.125.82.194]:36458 "EHLO mail-ot0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751803AbeF0CRW (ORCPT ); Tue, 26 Jun 2018 22:17:22 -0400 Received: by mail-ot0-f194.google.com with SMTP id c15-v6so511444otl.3 for ; Tue, 26 Jun 2018 19:17:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=QdtZqjNB56cuv6P2+2qAxXejqQGAnhJV3nzPHfZAx5I=; b=Nq+HTrFvoMy49GiNZLuWy27XlPQP8x29LV81mHXCGTO/hnrJRzFBIYCwbGEAxkH8pS QOr+F2Wps91SVeiDHVUD+SfwpEWchbnjxPZjzlC9RkqRD/XElkQRFIdtv+oEDtyvXjuY OqG2zT5G9IqC5FHh1321ixgPjs1KuM9G2vG/Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=QdtZqjNB56cuv6P2+2qAxXejqQGAnhJV3nzPHfZAx5I=; b=M9hGAdi2+hGl+mCBQCqWs5ot051f0u+0cipCfltNZRJgmyBtpi1IpcME9T2Sz0J2Fc CNLUcrKPWhcWox5nTPAIMblkQOmNv1VmLoo8ECFGeQ5HNX9+Z/2coCHND+HdLtXvYIkJ IrYG/9jYcsS0mSZiOlH9kcXtTNTtT4ruBTP3decvNZKfe9xc52Zb73nTnBTwJv47uLnW qsFPWI8iJeJlpPm+LMwKxgqva0IurbhguLeJNqZfeEhDnsiDEBl4rvXK2UERs6u41WXs W04jbc1pSlZcLuSUasUcLjDqGpORfXPHgJKTRrN8PnTb1Y06OWkXD2cY+5dzSa5n7sbC T0dw== X-Gm-Message-State: APt69E04JFxt5LuFUHGY6A8Drw3M9Ek69mQCIQZNadljqZlo6EBd7q9D kXxlpEOazSR2Mc+AEDoUCsxNHKtA7o7RKP4JKHmYUw== X-Received: by 2002:a9d:a66:: with SMTP id 93-v6mr2171159otg.177.1530065841636; Tue, 26 Jun 2018 19:17:21 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:237a:0:0:0:0:0 with HTTP; Tue, 26 Jun 2018 19:17:21 -0700 (PDT) In-Reply-To: <20180626205138.GF3206@builder> References: <20180626205138.GF3206@builder> From: Baolin Wang Date: Wed, 27 Jun 2018 10:17:21 +0800 Message-ID: Subject: Re: [PATCH 6/8] hwspinlock: sprd: Use devm_hwspin_lock_register() To: Bjorn Andersson Cc: Ohad Ben-Cohen , Mark Brown , linux-spi@vger.kernel.org, linux-remoteproc@vger.kernel.org, LKML Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 27 June 2018 at 04:51, Bjorn Andersson wrote: > On Fri 22 Jun 01:09 PDT 2018, Baolin Wang wrote: > >> Use devm_hwspin_lock_register() to register the hwlock controller to >> avoid unregistering the device explicitly. >> >> Signed-off-by: Baolin Wang >> --- >> drivers/hwspinlock/sprd_hwspinlock.c | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/hwspinlock/sprd_hwspinlock.c b/drivers/hwspinlock/sprd_hwspinlock.c >> index dc42bf5..ba5daf6 100644 >> --- a/drivers/hwspinlock/sprd_hwspinlock.c >> +++ b/drivers/hwspinlock/sprd_hwspinlock.c >> @@ -120,8 +120,9 @@ static int sprd_hwspinlock_probe(struct platform_device *pdev) >> platform_set_drvdata(pdev, sprd_hwlock); >> pm_runtime_enable(&pdev->dev); >> >> - ret = hwspin_lock_register(&sprd_hwlock->bank, &pdev->dev, >> - &sprd_hwspinlock_ops, 0, SPRD_HWLOCKS_NUM); >> + ret = devm_hwspin_lock_register(&pdev->dev, &sprd_hwlock->bank, >> + &sprd_hwspinlock_ops, 0, >> + SPRD_HWLOCKS_NUM); >> if (ret) { >> pm_runtime_disable(&pdev->dev); >> clk_disable_unprepare(sprd_hwlock->clk); >> @@ -135,7 +136,6 @@ static int sprd_hwspinlock_remove(struct platform_device *pdev) >> { >> struct sprd_hwspinlock_dev *sprd_hwlock = platform_get_drvdata(pdev); >> >> - hwspin_lock_unregister(&sprd_hwlock->bank); > > Until the hwspinlock is unregistered it's possible for clients to issue > operations on it, so disabling power and clocks before that seems bad. Yes, you are right. So may be register some additional actions with devm core to call the clock disable as appropriate. Thanks. -- Baolin.wang Best Regards