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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 264BBC6FA82 for ; Mon, 12 Sep 2022 16:37:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229533AbiILQhz (ORCPT ); Mon, 12 Sep 2022 12:37:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55334 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229748AbiILQhx (ORCPT ); Mon, 12 Sep 2022 12:37:53 -0400 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4598B2B1AD for ; Mon, 12 Sep 2022 09:37:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1663000673; x=1694536673; h=date:message-id:from:to:cc:subject:in-reply-to: references:mime-version; bh=0xat5XKTdseobaBb2a7q6MpkDPdQmY3erl4XQgtJht0=; b=PXSNt8I3WPdxqdVRat+InQUru1KzBpU1hO0ozinlf6HLzs4QdeavmyGc 2MUwIJ6Wyv7Mq7Bgk3JyGvTcS1lDgsfJ+rEWT2u08Y7xK6ATw6su3FiSK iWa+eO5IbpEEclfTN27VNNeMU7t8KYWf9RXWha3lZcPvrlfedGaSl8rYE 4OClCI/xKxrDXNF4t4CvjWr9A0kdfwBFNduVbcK1ChtsFECREWXkvQgBO QLyvqaRVz23FgGSpbh1ZIhsRlv73SibNR4/NUw290tGZbYmgqVtWkOwOu ev6XeXGFy95fSYtN3ezIvVSr8luI2hwiCE0XC6rSiHjksKWcSFISG+3Co Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10468"; a="359638366" X-IronPort-AV: E=Sophos;i="5.93,310,1654585200"; d="scan'208";a="359638366" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Sep 2022 09:37:53 -0700 X-IronPort-AV: E=Sophos;i="5.93,310,1654585200"; d="scan'208";a="616114031" Received: from adixit-mobl.amr.corp.intel.com (HELO adixit-arch.intel.com) ([10.209.54.92]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Sep 2022 09:37:52 -0700 Date: Mon, 12 Sep 2022 09:37:52 -0700 Message-ID: <87edwg5z1b.wl-ashutosh.dixit@intel.com> From: "Dixit, Ashutosh" To: "Gupta, Anshuman" Cc: "Nilawar, Badal" , "intel-gfx@lists.freedesktop.org" , "Tauro, Riana" , "Ewins, Jon" , "linux-hwmon@vger.kernel.org" Subject: Re: [PATCH 2/7] drm/i915/hwmon: Add HWMON current voltage support In-Reply-To: References: <20220825132118.784407-1-badal.nilawar@intel.com> <20220825132118.784407-3-badal.nilawar@intel.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/28.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Precedence: bulk List-ID: X-Mailing-List: linux-hwmon@vger.kernel.org On Mon, 12 Sep 2022 07:09:28 -0700, Gupta, Anshuman wrote: > > > +static int > > +hwm_in_read(struct hwm_drvdata *ddat, u32 attr, long *val) { > > + struct i915_hwmon *hwmon = ddat->hwmon; > > + intel_wakeref_t wakeref; > > + u32 reg_value; > > + > > + switch (attr) { > > + case hwmon_in_input: > > Other attributes in this series take hwmon->lock before accessing i915 > registers , So do we need lock here as well ? The lock is being taken only for RMW and for making sure energy counter updates happen atomically. We are not taking the lock for just reads so IMO no lock is needed here. > > + with_intel_runtime_pm(ddat->uncore->rpm, wakeref) > > + reg_value = intel_uncore_read(ddat->uncore, hwmon- > > >rg.gt_perf_status); > > + /* In units of 2.5 millivolt */ > > + *val = > > DIV_ROUND_CLOSEST(REG_FIELD_GET(GEN12_VOLTAGE_MASK, reg_value) * > > 25, 10); > > + return 0; > > + default: > > + return -EOPNOTSUPP; > > + } > > +} Thanks. -- Ashutosh