Received: by 2002:a05:7412:40d:b0:e2:908c:2ebd with SMTP id 13csp1149541rdf; Wed, 22 Nov 2023 06:58:26 -0800 (PST) X-Google-Smtp-Source: AGHT+IHsVdeAifCKLZReNGlnXR33OomyxOyP5MlCBszvfd8Ja8M9snfYl2Dqcf0J+IvaQTzXLX01 X-Received: by 2002:a17:903:2292:b0:1cf:65e1:b754 with SMTP id b18-20020a170903229200b001cf65e1b754mr2868188plh.16.1700665106213; Wed, 22 Nov 2023 06:58:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700665106; cv=none; d=google.com; s=arc-20160816; b=hcCOsBXukOxvE5nDgBrjHQZdM8ac3dj6B441gO6A46+YSfMgK+u2SDcInKxyfNLG4x z0wLek14q2lWpZSxyBzXqIJYFrp5kE0ppIpTIfrshQ17Q4ZZvF3G8adq7xAzxCNnQNZX q0XNoKUHA57HjNflmss7e2LvoPREkFNWEDZnOTAgdiRSWlVvQPYvO7i/p/lHtJHsS3Xo r3szzPhzLdbIE51BvrO+xW6AKlJXktMf1Ji3h094GALov/bv4Hv+4a/VCx16u77/dpPO r3kKauvAO8jSqvGPScaW5xgrcKBNzCCqil5LipDA4wpNx1Fwiz5ZjWIOEkqzVsGbGMaO Og5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=Q5i/ohsVa+2X1zbahEiYbO4I02xJOEIBNsYWm6VCfLg=; fh=e4OHv6Xov0Q4gEe0JuRq0fA/xym953GfWftHd/HqGes=; b=anaobNabw0kZaPbNu66Yt3VrSknbeyATJfO4yuFUSW80FF5ts8uTNLOhmJthLDlxSC Xy0uS6brLT5JcjY8JmlvcR5eDYvNzCB/KR+hR80DZuYM1acM1abIzTvOrsFEyHE8RCha NzwtBBvSUgyP6vNOS+uhST2AGzHY5uNjPzSjnkW5GsiO3z56RA8gU2eBy8O7XrJptc9E r6c7X9v9eKMkn09AivdjbPEskD9QE7FJMWT/uePJMBvQ2oMwvlAgG9iwRoa/2uQNg8Mu 3LVOgHfIXG6r98wQDNCr+p8y8T94OE1uI6lfU57snaSti/Jjjvy56451gVhh6g6cEDbN DKQA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=lzPk2RTo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id l7-20020a170903244700b001cf6475ffb5si6042744pls.457.2023.11.22.06.58.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Nov 2023 06:58:26 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=lzPk2RTo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id E3EA680486A2; Wed, 22 Nov 2023 06:56:22 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344143AbjKVO4Q (ORCPT + 99 others); Wed, 22 Nov 2023 09:56:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54052 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235157AbjKVO4O (ORCPT ); Wed, 22 Nov 2023 09:56:14 -0500 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3F0DB1A8; Wed, 22 Nov 2023 06:56:11 -0800 (PST) Received: from pendragon.ideasonboard.com (213-243-189-158.bb.dnainternet.fi [213.243.189.158]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id ED22229A; Wed, 22 Nov 2023 15:55:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1700664938; bh=AQD+AKtGlu5tb4VGoUq86TgL623DydxCYLmlNgoA7c4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=lzPk2RTolTmQljSyoiQ+sfpc6Pyg/8tXEJs3yMlo9BGljwJLnNAwonjJiomJXb5lo HSU807deQV2E+RgEs8lcoJSVasn35heION686EHylY6++bKv/LWGX7rIgYUeUPE5/G f7B2+xSxvjba7q15LmmnCQIEEj/zW+y6KBfecC4M= Date: Wed, 22 Nov 2023 16:56:15 +0200 From: Laurent Pinchart To: Tomi Valkeinen Cc: Kieran Bingham , Rui Miguel Silva , Martin Kepplinger , Purism Kernel Team , Mauro Carvalho Chehab , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] media: imx-mipi-csis: Fix clock handling in remove() Message-ID: <20231122145615.GE8627@pendragon.ideasonboard.com> References: <20231122-imx-csis-v1-0-0617368eb996@ideasonboard.com> <20231122-imx-csis-v1-1-0617368eb996@ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20231122-imx-csis-v1-1-0617368eb996@ideasonboard.com> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_PASS,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 X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 22 Nov 2023 06:56:23 -0800 (PST) Hi Tomi, Thank you for the patch. On Wed, Nov 22, 2023 at 03:13:48PM +0200, Tomi Valkeinen wrote: > The driver always calls mipi_csis_runtime_suspend() and > mipi_csis_clk_disable() in remove(). This causes multiple WARNs from the > kernel, as the clocks get disabled too many times. Did you try to unload the driver ? What a weird idea :-) > Fix the remove() to call mipi_csis_runtime_suspend() and > mipi_csis_clk_disable() in a way that reverses what is done in probe(). > > Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart > --- > drivers/media/platform/nxp/imx-mipi-csis.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/nxp/imx-mipi-csis.c b/drivers/media/platform/nxp/imx-mipi-csis.c > index 6cb20b45e0a1..b39d7aeba750 100644 > --- a/drivers/media/platform/nxp/imx-mipi-csis.c > +++ b/drivers/media/platform/nxp/imx-mipi-csis.c > @@ -1502,8 +1502,10 @@ static void mipi_csis_remove(struct platform_device *pdev) > v4l2_async_nf_cleanup(&csis->notifier); > v4l2_async_unregister_subdev(&csis->sd); > > + if (!pm_runtime_enabled(&pdev->dev)) > + mipi_csis_runtime_suspend(&pdev->dev); > + > pm_runtime_disable(&pdev->dev); > - mipi_csis_runtime_suspend(&pdev->dev); > mipi_csis_clk_disable(csis); > v4l2_subdev_cleanup(&csis->sd); > media_entity_cleanup(&csis->sd.entity); > -- Regards, Laurent Pinchart