From patchwork Wed Aug 29 07:08:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vincent Guittot X-Patchwork-Id: 145393 Delivered-To: patch@linaro.org Received: by 2002:a2e:1648:0:0:0:0:0 with SMTP id 8-v6csp344145ljw; Wed, 29 Aug 2018 00:08:48 -0700 (PDT) X-Google-Smtp-Source: ANB0VdbIOzB59dAqevIEqvZet7azmk9rXfgf3pV0ZYtRTOG+d5LKgFilTTZHGB1IIDSVKxxAFT7u X-Received: by 2002:a62:d113:: with SMTP id z19-v6mr4649183pfg.98.1535526528655; Wed, 29 Aug 2018 00:08:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535526528; cv=none; d=google.com; s=arc-20160816; b=sPtU26ysHseQ+qyUWdPKVbNmmIAIrdYqKDsHUaKj0Z1Hxc1EF/BbHgFqZQCkyFj3eU f+5U3/P7IhxU3SqKby9y5l8WtBq2LBhj9jCeloCie1t5KtPtmiV3yLBeH1Px14rFSgqZ OG4KEZnUI6LCoLXGf+8ely+JpIAcDrWQ4DqMfyrjh7Ia5XbUXPfIh2xBbrGSUi5avXdz 6HKOUu/yPAFZEU98x8sdDqXA+qEWBgoS3asR5KTQdDUaHVtUQgEPd7dtz/VfNugTaO+P SFb3FRjQQThizIA/bEh7rk3phqJqjQ3pJAX8imlCeIKMawY48rulxMGSwHug//9xI53q dVrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=hGYHtsxP6qJIBkowwqLcEfY3ekjpkezQKD1guvAXw6I=; b=FydwCJLUcakp/sS10LLx/hKJVdAe+Q3hkWTu6tqsdNWEvLr0QRxXBl8EgH61352AMo hje5c13eXmEkcBy5ah/DycDxcIX7SkHs/vsyJ8cXI7E/1hhj274jDFXE0m+M6ss7z4zV u4fuUA+CQlcfZU644TZ8g72gTTWONfJlRN5azXR/3CGe3FqTOm5CCbLWm7ydH3FQAkWE 970hn9xQd5HCOkZ9CD/Q+y7S2g32fFWpfZ19YOqw0zhuCmlinbroQsMaUkoVZ6I99YDB TgShgd+q5V8dr9Z8spqk4WMcaRgpfddfy+f179+d2uHg/ZNQAO1rjAMOdidGorIfe/ku syKA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UHwvBlsS; spf=pass (google.com: best guess record for domain of linux-pm-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-pm-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 c15-v6si2775712plo.232.2018.08.29.00.08.48; Wed, 29 Aug 2018 00:08:48 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-pm-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=UHwvBlsS; spf=pass (google.com: best guess record for domain of linux-pm-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-pm-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 S1727107AbeH2LEL (ORCPT + 10 others); Wed, 29 Aug 2018 07:04:11 -0400 Received: from mail-wm0-f65.google.com ([74.125.82.65]:36890 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727216AbeH2LEL (ORCPT ); Wed, 29 Aug 2018 07:04:11 -0400 Received: by mail-wm0-f65.google.com with SMTP id n11-v6so4307676wmc.2 for ; Wed, 29 Aug 2018 00:08:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=hGYHtsxP6qJIBkowwqLcEfY3ekjpkezQKD1guvAXw6I=; b=UHwvBlsSs4XACcwYmxO4D1gLt7a1zWh8LQs/0u7Sgx0bnfu8OPQPZWis4+vS3byauQ tbAK7E5BwoMZXaITymAjZBMfOTM8gkwK3uO89deOBLu7e6nrfA8e858huEvhLcv2QX/2 2KLtAXLxdAzBkqYtVQAcYeKpa3aR8yrWOHCoA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=hGYHtsxP6qJIBkowwqLcEfY3ekjpkezQKD1guvAXw6I=; b=C0eB/cGL5meT6ZyyalYh05j5U8bvcJ2mU1KprJtwyAGjt5SoKb7Gzs3lHtBecGhyCw 8nMi/H6f3pLu0OzNVvNIA4ymP6iRXD0Z+hagbGRRn7nYdmbQ4BmbOxHGIoF9hPVp28le /2fbVIGIOBWqzzoWFcTZcUdSb8UrQkuO+2zHQWM+dbqR2CseWd36Ju86kC7El/02aUjQ Hi23DM6LK23PoyKxhqcC8zDiABUwNlbRBE2Uw3C/Zm4BI6/ctfQOxdoAHIWR7jQelISl 03Ypo8KGZjyE9walyTpOdP/4RTJXL8Z8PS9X8VKqTy1fRal+fwzmLE5IHiVIiERQkKC5 HA9w== X-Gm-Message-State: APzg51DpDx1dIxCKwvMaBQDD9yKQDl9txqmJT2lbOapFUUWktUP+JtZp u9+0jpmecKlUIcvd+RCQzloxFQ== X-Received: by 2002:a1c:ae8d:: with SMTP id x135-v6mr3412241wme.20.1535526523911; Wed, 29 Aug 2018 00:08:43 -0700 (PDT) Received: from localhost.localdomain ([2a01:e0a:f:6020:4c23:4749:7ea6:c5af]) by smtp.gmail.com with ESMTPSA id 34-v6sm4984283wra.20.2018.08.29.00.08.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 29 Aug 2018 00:08:43 -0700 (PDT) From: Vincent Guittot To: robh+dt@kernel.org, mark.rutland@arm.com, devicetree@vger.kernel.org, punit.agrawal@arm.com Cc: edubezval@gmail.com, viresh.kumar@linaro.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, Vincent Guittot Subject: [PATCH v2] dt-binding: arm/cpus.txt: fix dynamic-power-coefficient unit Date: Wed, 29 Aug 2018 09:08:38 +0200 Message-Id: <1535526518-29022-1-git-send-email-vincent.guittot@linaro.org> X-Mailer: git-send-email 2.7.4 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org The unit of dynamic-power-coefficient is described as mW/MHz/uV^2 whereas its usage in the code assumes that unit is uW/MHz/V^2 In drivers/thermal/cpu_cooling.c, the code is : power = (u64)capacitance * freq_mhz * voltage_mv * voltage_mv; do_div(power, 1000000000); which can be summarized as : power (mW) = capacitance * freq_mhz/1000 * (voltage_mv/1000)^2 or power (mW) = (capacitance * freq_mhz * (voltage_mv/1000)^2) / 1000 then power (mW) = power (uW) / 1000 so power (uW) = capacitance * freq_mhz * (voltage_mv/1000)^2 Furthermore, if we test basic values like : voltage_mv = 1000mV = 1V freq_mhz = 1000Mhz The minimum possible power, when dynamic-power-coefficient equals 1, will be with current unit: min power = 1 * 1000 * (1000000)^2 = 10^15 mW which is not realistic With the unit used by the code, the min power is min power = 1 * 1000 * 1^2 = 1000uW = 1mW which is far more realistic Signed-off-by: Vincent Guittot --- Documentation/devicetree/bindings/arm/cpus.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.7.4 diff --git a/Documentation/devicetree/bindings/arm/cpus.txt b/Documentation/devicetree/bindings/arm/cpus.txt index 29e1dc5..71d8cd0 100644 --- a/Documentation/devicetree/bindings/arm/cpus.txt +++ b/Documentation/devicetree/bindings/arm/cpus.txt @@ -274,7 +274,7 @@ described below. Usage: optional Value type: Definition: A u32 value that represents the running time dynamic - power coefficient in units of mW/MHz/uV^2. The + power coefficient in units of uW/MHz/V^2. The coefficient can either be calculated from power measurements or derived by analysis. @@ -285,7 +285,7 @@ described below. Pdyn = dynamic-power-coefficient * V^2 * f - where voltage is in uV, frequency is in MHz. + where voltage is in V, frequency is in MHz. Example 1 (dual-cluster big.LITTLE system 32-bit):