From patchwork Fri Jun 16 13:52:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Miquel Raynal X-Patchwork-Id: 13282803 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E2F3AEB64D7 for ; Fri, 16 Jun 2023 13:53:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=XdVxW3dP05wTaxi1guhivtQLKQIfpn4WxVwYL8QLKfQ=; b=dzFz4JI7ddrS6n O9WFVmjwL3lF05iYrXYCVahSx97aWUo8FKpW1Xi2xrRXXKKpuXpon+CCGU+Mths8b/1MiCLjV+4ym IjwErHcaH2z8cM2foG6vbwfi/JLlkQl7OyJxNcNO1nlI0d0VoDHaoO2M5N6k+KuXnejPtY0hEhW/f vbUp8WKjpFr/ccOkmSaWT7az00G46Cl+ehMyO4ATNz7Uo4s7YTMGiHgivktVq14HPGr1HgUg+OZ0p Mhp6L1uaAG+KUD6mNed5LRMFFL4BvwIwl9dmYMn7afyY05+DWcVZ7qQMShNNM74sRPKKxTJywYpW6 8/vEWACyUq4hq4IZ+Y/A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qA9sr-000imh-20; Fri, 16 Jun 2023 13:53:01 +0000 Received: from relay2-d.mail.gandi.net ([217.70.183.194]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qA9sp-000ilZ-0V for linux-arm-kernel@lists.infradead.org; Fri, 16 Jun 2023 13:53:00 +0000 X-GND-Sasl: miquel.raynal@bootlin.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1686923575; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=raAjiXztDhuejqjgDIi3ajilKhYkJBwhbCGx4pOyvAw=; b=BsOmhDgaoGpB/brbcksAP7WMk6MH/yniLVC6L5v8CzO7hBfnwM8CzfL0XfD5KOgxkIpzs9 ARm7oVCX5qWFLoKlO2lDq5ISzPk9Np4+XGQe6Co/WNmj22eQ2BcXH/7EXuYkHP+fDnbSnf qXW+89Pg2tuvreRFTeaSHKBvI0m78WWkUgMO41lfK/YBF9codDmPvDf0DvGChovkovy7By 58fwVF3hcCVQnc5XMKvm1wh+jyXMO2ZRdWioytuI93mboPDoM9ck+HYhLrys/27bg8TvNO 7lRdsPUVvcDANyf9DJQPBRlvyZWOcsnaQB6S6ZDtCBL8azi/gr7km1+ZXVTuqg== X-GND-Sasl: miquel.raynal@bootlin.com X-GND-Sasl: miquel.raynal@bootlin.com X-GND-Sasl: miquel.raynal@bootlin.com X-GND-Sasl: miquel.raynal@bootlin.com X-GND-Sasl: miquel.raynal@bootlin.com X-GND-Sasl: miquel.raynal@bootlin.com X-GND-Sasl: miquel.raynal@bootlin.com Received: by mail.gandi.net (Postfix) with ESMTPSA id E585A4000A; Fri, 16 Jun 2023 13:52:54 +0000 (UTC) From: Miquel Raynal To: Sebastian Reichel Subject: [PATCH v3 1/2] power: reset: at91-reset: change the power on reason prototype Date: Fri, 16 Jun 2023 15:52:51 +0200 Message-Id: <20230616135252.2787679-2-miquel.raynal@bootlin.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230616135252.2787679-1-miquel.raynal@bootlin.com> References: <20230616135252.2787679-1-miquel.raynal@bootlin.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230616_065259_462978_2DBD4FEA X-CRM114-Status: GOOD ( 14.21 ) 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: , Cc: Alexandre Belloni , linux-pm@vger.kernel.org, Thomas Petazzoni , Miquel Raynal , Claudiu Beznea , linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org It is quite uncommon to use a driver helper with parameters like *pdev and __iomem *base. It is much cleaner and close to today's standards to provide the per-device driver structure and then access its internals. Let's do this with the helper which returns the power on reason. While we change the parameters, we can as well rename the function from at91_reset_status() to at91_reset_reason() to be more accurate with what the helper actually does, and finally because we don't really need the pdev argument in this helper besides for printing the reset reason, we can move the dev_info() call into the probe. All these modifications prepare the introduction of a sysfs entry to access this information. This way the diff will be much smaller. Thus, there is no intended functional change. Signed-off-by: Miquel Raynal Acked-by: Nicolas Ferre --- drivers/power/reset/at91-reset.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/power/reset/at91-reset.c b/drivers/power/reset/at91-reset.c index 741e44a017c3..d6884841a6dc 100644 --- a/drivers/power/reset/at91-reset.c +++ b/drivers/power/reset/at91-reset.c @@ -149,11 +149,10 @@ static int at91_reset(struct notifier_block *this, unsigned long mode, return NOTIFY_DONE; } -static void __init at91_reset_status(struct platform_device *pdev, - void __iomem *base) +static const char * __init at91_reset_reason(struct at91_reset *reset) { + u32 reg = readl(reset->rstc_base + AT91_RSTC_SR); const char *reason; - u32 reg = readl(base + AT91_RSTC_SR); switch ((reg & AT91_RSTC_RSTTYP) >> 8) { case RESET_TYPE_GENERAL: @@ -185,7 +184,7 @@ static void __init at91_reset_status(struct platform_device *pdev, break; } - dev_info(&pdev->dev, "Starting after %s\n", reason); + return reason; } static const struct of_device_id at91_ramc_of_match[] = { @@ -392,7 +391,7 @@ static int __init at91_reset_probe(struct platform_device *pdev) if (ret) goto disable_clk; - at91_reset_status(pdev, reset->rstc_base); + dev_info(&pdev->dev, "Starting after %s\n", at91_reset_reason(reset)); return 0;