Received: by 2002:a05:6358:1087:b0:cb:c9d3:cd90 with SMTP id j7csp994711rwi; Thu, 27 Oct 2022 09:52:18 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7WPfM23dlp53x6Rw9AYtBRyMJmVdpm/cgSlwjMeYy78RpO8ceY3Io4WdGRcSUq0AM8T4hW X-Received: by 2002:a05:6402:516e:b0:461:ebe2:f17d with SMTP id d14-20020a056402516e00b00461ebe2f17dmr17871247ede.181.1666889538183; Thu, 27 Oct 2022 09:52:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666889538; cv=none; d=google.com; s=arc-20160816; b=L4Ljq9at0DwGvo6CQ7i2yPye04TMTl/NNGjjy0JGz6/m2r7N5NmRS2yjhdN3+b3yY7 0hbKfkqItNcCIV8McUHG5KjtGh0T5So6Ucku36L3IFVSYtLBXY3sng3etasmqvIBH/b2 VVs05QiCMBdQZMdLCjwzByizterwRS9+IFh0kyXZTu3tmnAXh6EDexvC5C8/dI4tQ9Vl SDq2TEndvIqdmnPmkkg2Cyye4uDEZFY/Lgi+Y/iNn4rvd54jG3dhWLj0hudT8RLbV7Ks TEn51Dpw3GlVQr33o6OywGeVJ9BrC9qHiBxJ2WX3pqyVb1e79BpHN6yfhh0cPLJxF6SW YJUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=w2sKi/FidnzYYF/kqFgrvTbVLAOpdPoKmkW/OsJ1VX8=; b=XzQWU449pXMcSOFTfbEh1YQ9cmzvYdnneZkZhy4Q/TaIt10jpMrXpwKjxZeAhmNmnk 1Y1HITJ8stzKSvLcBdatDieKANPCSZxq2lZCbTqKXXcqCKCQm+Tj3pzUj5v9eWTu2x2m bw94xfzP3KaeIYGQkm30X5OkikG0u93Ou3RAfQ70HtIMm1BjqO99IIsLGa2yA+DE5/SB UChJx8Q8/XSy9Mnc0zWRhG62Snk4t/uqHhadsTJIfiLGVMzkC19OK3j6X5vbzZ5zeEA7 M/QqOHDEWRigBqjlvO8R49LBU96zYSllrUi9mxDK7Junb42FBU3P4Riv0nacTiNOVmdD uZsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=gtPuHpSe; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cw19-20020a170906479300b007316ac034acsi2191394ejc.834.2022.10.27.09.51.52; Thu, 27 Oct 2022 09:52:18 -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; dkim=pass header.i=@gmail.com header.s=20210112 header.b=gtPuHpSe; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236607AbiJ0Qcj (ORCPT + 99 others); Thu, 27 Oct 2022 12:32:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39722 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235710AbiJ0Qcf (ORCPT ); Thu, 27 Oct 2022 12:32:35 -0400 Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com [IPv6:2a00:1450:4864:20::636]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1E342A2329; Thu, 27 Oct 2022 09:32:35 -0700 (PDT) Received: by mail-ej1-x636.google.com with SMTP id sc25so6167806ejc.12; Thu, 27 Oct 2022 09:32:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=w2sKi/FidnzYYF/kqFgrvTbVLAOpdPoKmkW/OsJ1VX8=; b=gtPuHpSebI19NwQMNWbQe8LxqWpp6NFl/9GH5Bm46HkvTKTCbtk21yXDGOvu80s8lr 6u5Zu683zpxmECsFY9YQ+iU3o5+enrd64/R5BjWOkc5aDNLm0+vIGMskyIjovXFYB/w8 IAinKBt+BuZiSsCOcYo7tmmlyn6RCHg7J1zP4U6foSWGFZl+hwQ62w6CCVT0ZP7ZrHmD Q3t3LsriE9hPM/9BY/c05qnlJUWYmSUpCPZTLbRO7QwnfaFc8C+ZSoOrbQxtN5+2MrfV t/viBOCzXW3m6zjv/hjxE7Bj6T1e3kI1/uBof3wT5+mpYTVrWVFs6PRQJKJorNBTdliC jYDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=w2sKi/FidnzYYF/kqFgrvTbVLAOpdPoKmkW/OsJ1VX8=; b=SM9S3XYvfd09kMexyoLlGTaagWSOwsFhyCwAW+5p8xQaWakczllno0ERxnzX9ztibb MqYfosrXmqo6pNfEd/Bwmg5TSVweChvWVB+HMUN7pSIH/6h5i/5iWeMoXCDOKlXjvAeT 75OvV5e4aKmoldm1/MTFBx1LrUiqGIdpoKoqMxxK3+WxiUZnjB1ZikvUBILhE56Dm6+M 2mTvmIuMHuhs3HDnBs/CTixCVccI8OPSeG1kkl+GjHCc2A9h13sGwKkvEwPrfnjH4ffG DGGY/RpEFDZ7N+665DXycpYWhJRA5yrXkImFLt//C+Tm0ivcDS61raqB4qh0/qZca/dL XQIw== X-Gm-Message-State: ACrzQf2IqSA+4CRj9co6KDXUv83gFNWHuljJgA0oB53wx/QrNpMmPeJf v0P+nVAaraOqOn3PtXgzA7yX0iW52eqplEQlG+I= X-Received: by 2002:a17:907:b1c:b0:797:983a:7d97 with SMTP id h28-20020a1709070b1c00b00797983a7d97mr35628022ejl.267.1666888353496; Thu, 27 Oct 2022 09:32:33 -0700 (PDT) MIME-Version: 1.0 References: <20221014183459.181567-1-prabhakar.mahadev-lad.rj@bp.renesas.com> <20221014183459.181567-3-prabhakar.mahadev-lad.rj@bp.renesas.com> In-Reply-To: From: "Lad, Prabhakar" Date: Thu, 27 Oct 2022 17:32:07 +0100 Message-ID: Subject: Re: [PATCH v2 2/5] media: i2c: ov5645: Use runtime PM To: Sakari Ailus Cc: Laurent Pinchart , Krzysztof Kozlowski , Rob Herring , Mauro Carvalho Chehab , Hans Verkuil , Shawn Tu , Jacopo Mondi , linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Biju Das , Lad Prabhakar Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 Hi Sakari, On Thu, Oct 27, 2022 at 1:47 PM Sakari Ailus wrote: > > Hi Prabhakar, > > On Thu, Oct 27, 2022 at 01:01:52PM +0100, Lad, Prabhakar wrote: > > Hi Sakari, > > > > On Thu, Oct 27, 2022 at 12:20 PM Sakari Ailus > > wrote: > > > > > > Hi Prabhakar, > > > > > > One more comment. > > > > > > On Fri, Oct 14, 2022 at 07:34:56PM +0100, Prabhakar wrote: > > > > @@ -1209,12 +1190,16 @@ static int ov5645_probe(struct i2c_client *client) > > > > > > > > dev_info(dev, "OV5645 detected at address 0x%02x\n", client->addr); > > > > > > > > + pm_runtime_set_active(dev); > > > > + pm_runtime_get_noresume(dev); > > > > + pm_runtime_enable(dev); > > > > > > You won't gain anything by eanbling runtime PM here. Just move it to the > > > end of the function before the rest of the calls. Error handling becomes > > > more simple. > > > > > If I move the above calls below I get the below warning: > > > > [ 2.633386] ov5645 0-003c: Runtime PM usage count underflow! > > > > This is because of the last patch which moves ov5645_entity_init_cfg() > > before registering the subdev. ov5645_entity_init_cfg() calls s_ctrl > > due to which we are seeing the above message. Please let me know how > > to proceed on this. > > Ah. Yes, this is a problem with the usage pattern of > pm_runtime_get_if_in_use(). But please don't change that. > > You can still move enabling runtime PM later in the function. > Agreed, the final version looks like below: pm_runtime_set_active(dev); pm_runtime_get_noresume(dev); ov5645_entity_init_cfg(&ov5645->sd, NULL); ret = v4l2_async_register_subdev(&ov5645->sd); if (ret < 0) { dev_err(dev, "could not register v4l2 device\n"); goto err_pm_runtime; } pm_runtime_set_autosuspend_delay(dev, 1000); pm_runtime_use_autosuspend(dev); pm_runtime_enable(dev); Cheers, Prabhakar