Received: by 2002:ac0:8845:0:0:0:0:0 with SMTP id g63csp243740img; Mon, 25 Feb 2019 22:22:30 -0800 (PST) X-Google-Smtp-Source: AHgI3Ia0gaZQV2TSNIRsszJiiOaRC003ab77ZR84ZU7mBS3vE98mtl8rFfv+4b3T/wXVTlkkwxMo X-Received: by 2002:a63:c705:: with SMTP id n5mr20072508pgg.73.1551162150319; Mon, 25 Feb 2019 22:22:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551162150; cv=none; d=google.com; s=arc-20160816; b=zC+omEiXeeHckkZwRshImajKenmPEs/KuDJ45OcE+SGJe1/YlGEpOYAZPTwobpsnxM rkBtQSkS5dgVCw8b18gkHS+DRmb21zFzuxdz3+P3Tuhc3S8tdp5HPF1BmAK0V9rj8jBc c6LpfOtlTGPrCYot4mskEjtv++XwUXWbq32qnjFviJQHGKBqtuy1w4L1yJ0IXU6omwRB sPk2ELa45a0qstDVW7jZfhT+ccRZ+BVXSYhKShR0P2633lzUmmR2xAiwQyAeX+eyoHQc Nu4QLl2OgS82AR8qPcGsD4feX7UeCcT4DiT6wG3cBbuxIi3ydJPUrnXAO011ly+QX7gb W0Pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:organization:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=ndV/o88VaJr2WeRWq3FjxA/p0ZeqMKH2+0t/LRYI9p0=; b=wmgz54wM3yMmIIXRys0l2pd72V6yq5fVhoW44BfAIviQjprQLooYaGTB0ySgEwm7I6 ZCGJvPvdZ6OD0i0FT8lVORsz1HvQPubyg+IkQfxOXfsjdbMl2Htc8XmtMbHVeY6fcLMc 2M7pIwrMzrb2yVIksiDCum9mJ0UT5eCdi9rBJlZntx3kUA3Yt7MqJEhEyLfR2rS+m0nW cDrKRhhUPAswd6SM8CJYd9ojMcM23ugK1BcGW4ZKtuCCpfBtkEdmERB/cgBcgSY9FoPA cFm6PjBayxg5aCufl48xgI1JoizLK7y5mES6156oFbiMn5Y9uSPgF5gId2xZc0tLdhnc qLkQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b="I8+lFqx/"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y5si2934203pge.192.2019.02.25.22.22.15; Mon, 25 Feb 2019 22:22:30 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b="I8+lFqx/"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726967AbfBZGVa (ORCPT + 99 others); Tue, 26 Feb 2019 01:21:30 -0500 Received: from mail-it1-f195.google.com ([209.85.166.195]:51695 "EHLO mail-it1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726588AbfBZGUd (ORCPT ); Tue, 26 Feb 2019 01:20:33 -0500 Received: by mail-it1-f195.google.com with SMTP id e24so2331133itl.1; Mon, 25 Feb 2019 22:20:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :reply-to:organization; bh=ndV/o88VaJr2WeRWq3FjxA/p0ZeqMKH2+0t/LRYI9p0=; b=I8+lFqx/mxRE3VYbseZSgBTTfyP7C9x8xgkbMxEjMEYL0WdzyMMkjG7dpJj/hQ+m3q mllFc74D33X7ymqzfXmt7OO4KKBVRNJTvLVbeyH1VqVVdnPcI2BwLngrgd5ClcAn9UP0 g+dynDlIpTwQNp33mBP8h+iyOBpmzp8hT7Z4eZheHj69Pt5RUSk1VSRlHBax6MQ3UzeV M0bYksVwzgXobJC6T+H1ENS/7ZfDxGerhgM1qqFlsvwa2X5Bs+C9HQnQLZ577M2Hb28+ FNr0wOtcsB558XDAyLMQ/FJQcs5Y0FvdOxcq2hyr0mdSLM916hxaF75TnHRcgbVV1UMt TMfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:reply-to:organization; bh=ndV/o88VaJr2WeRWq3FjxA/p0ZeqMKH2+0t/LRYI9p0=; b=H7LKlGDzQUgxdLHepUD4Jg/wh7CUsDD1MW+drDzd7h7GIjg1ubVKWzpdzMXthjo0Uy dSpg6j2TiZ4zre9AIWF8GZKfMdDZhjr6P0eG41RBQUpByY2FskDkctiECO+YXiaX7JsW AeZPi2p6sXfCjhgT3knUVY0MLR2TiZ1ibwjeTa5jUqBNsPcsK9JUj+O+N6YqK65MsFAz MdUXQrnqa508dniToSVbB5jb7vy45J4jnBwy4sxsRH7x9u5Cek9tR5u2/iV8Uu+B/WDs Fk9Dktx2Monsnc7U583meFk0GZcBagNlWKO+wYQBB3UojMwroD/4efzAXrbo7fpsrnu2 iICQ== X-Gm-Message-State: AHQUAub9GQEm8rIX53stL16XDkmkD9pmQ6Gt0ejuRIhL7umucWBYZAmn hKdEEG/6X4+Bo4xtC797LJ4= X-Received: by 2002:a24:7b8d:: with SMTP id q135mr1635811itc.30.1551162032530; Mon, 25 Feb 2019 22:20:32 -0800 (PST) Received: from kbl.lan (h66-222-56-144.cntcnh.dsl.dynamic.tds.net. [66.222.56.144]) by smtp.gmail.com with ESMTPSA id w8sm6431431ita.21.2019.02.25.22.20.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 25 Feb 2019 22:20:31 -0800 (PST) From: Len Brown To: x86@kernel.org Cc: linux-kernel@vger.kernel.org, Zhang Rui , Len Brown , linux-pm@vger.kernel.org Subject: [PATCH 08/14] powercap/intel_rapl: Support multi-die/package Date: Tue, 26 Feb 2019 01:20:06 -0500 Message-Id: <680e11fe0dcc65e4cfa5bfeaa0d1cdbe7896e3c0.1551160674.git.len.brown@intel.com> X-Mailer: git-send-email 2.18.0-rc0 In-Reply-To: References: Reply-To: Len Brown Organization: Intel Open Source Technology Center Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Zhang Rui On the new dual-die/package systems, the RAPL MSR becomes die-scope. Thus instead of one powercap device per physical package, now there should be one powercap device for each unique die on these systems. This patch introduces intel_rapl driver support for new dual-die/package systems. On the hardwares that do not have multi-die, topology_logical_die_id() equals topology_physical_package_id(), thus there is no functional change. Signed-off-by: Zhang Rui Signed-off-by: Len Brown Acked-by: Rafael J. Wysocki Cc: linux-pm@vger.kernel.org --- drivers/powercap/intel_rapl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/powercap/intel_rapl.c b/drivers/powercap/intel_rapl.c index 6057d9695fed..8723e9ae7436 100644 --- a/drivers/powercap/intel_rapl.c +++ b/drivers/powercap/intel_rapl.c @@ -266,7 +266,7 @@ static struct rapl_domain *platform_rapl_domain; /* Platform (PSys) domain */ /* caller to ensure CPU hotplug lock is held */ static struct rapl_package *rapl_find_package(int cpu) { - int id = topology_physical_package_id(cpu); + int id = topology_logical_die_id(cpu); struct rapl_package *rp; list_for_each_entry(rp, &rapl_packages, plist) { @@ -1457,7 +1457,7 @@ static void rapl_remove_package(struct rapl_package *rp) /* called from CPU hotplug notifier, hotplug lock held */ static struct rapl_package *rapl_add_package(int cpu) { - int id = topology_physical_package_id(cpu); + int id = topology_logical_die_id(cpu); struct rapl_package *rp; int ret; -- 2.18.0-rc0