From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966321AbbJ3KB0 (ORCPT ); Fri, 30 Oct 2015 06:01:26 -0400 Received: from mail-bn1bon0081.outbound.protection.outlook.com ([157.56.111.81]:52544 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1758784AbbJ3KBY (ORCPT ); Fri, 30 Oct 2015 06:01:24 -0400 Authentication-Results: spf=none (sender IP is 165.204.84.221) smtp.mailfrom=amd.com; alien8.de; dkim=none (message not signed) header.d=none;alien8.de; dmarc=permerror action=none header.from=amd.com; X-WSS-ID: 0NX12I5-07-F29-02 X-M-MSG: From: Huang Rui To: Borislav Petkov , Guenter Roeck , "Peter Zijlstra" , Jean Delvare , "Andy Lutomirski" , Andreas Herrmann , Thomas Gleixner , "Ingo Molnar" , "Rafael J. Wysocki" , "Len Brown" , John Stultz , =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Weisbecker?= CC: , , , Andreas Herrmann , Aravind Gopalakrishnan , Borislav Petkov , Fengguang Wu , Aaron Lu , SPG_Linux_Kernel , Huang Rui Subject: [PATCH v3 03/10] hwmon: (fam15h_power) Add max compute unit accumulated power Date: Fri, 30 Oct 2015 17:56:57 +0800 Message-ID: <1446199024-1896-4-git-send-email-ray.huang@amd.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1446199024-1896-1-git-send-email-ray.huang@amd.com> References: <1446199024-1896-1-git-send-email-ray.huang@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.221;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(428002)(199003)(189002)(33646002)(189998001)(50466002)(2950100001)(77096005)(105586002)(53416004)(47776003)(106466001)(229853001)(5001770100001)(36756003)(11100500001)(92566002)(97736004)(48376002)(19580395003)(5008740100001)(87936001)(5003940100001)(5003600100002)(50986999)(5007970100001)(76176999)(86362001)(101416001)(50226001)(19580405001)(921003)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR12MB0864;H:atltwp01.amd.com;FPR:;SPF:None;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0864;2:OAsrLfHxPOagv0LG3auHwDbPUKXYLaj8+IKRasSz7AWnfrnFwm5gufN8mXJeQMlsDUYYDebQBlAZyA8afxRnQtqMtK5MVoL8lODQ9D7LYGrUD5tXdHJYzOcTy3OCzFEooiZ7BjErf0eQ6i0eY1EEtoSPIVvmteMDrWv9A8YoDWI=;3:vfnp5u1rd8AlUjRPMTbGH0UaNnMuWjbvqp82paRqE0yOF0z9bRCXFLz8Np+b0tpX1DJkr7O8hRuLaU8bRxCSvIozpBl1YkT7zen/fuj3ZkdbsIt/GFviAz+yOP83iS/EoJxMqX4yh7+nj0A8bwWW/67dlsAHZXeNEcwin8FMoUNd7MHaPuEDc4ZXsMs5NzUFLMIGh5aqRLebd4ZxWtsDntsk7kkPREeAfBUeQwbH5j4N9VAaq/GfigbB9O14X6Po;25:+evSFOK2GL39jRKr2l+1rO8VLg5h0QmzvJi9CHyRTDR4mAYf1/hStlNxq4smyCPsi4vr3JP+Ez6HRhbLHVRVyRCwNomhgytOuM9baD4Vwjz5PMjQvNxVy3Ih9dL2/x7eodzoB82ozIAqdy7YvZI+5+BOsvxXmZH2CJj8B8W+TeK+A8OA7KjK1G/lqaFdDIsxm2aZRmU+Iy6cN2tNz5iWTJJuJfwxtzZJaVnTpIzu0LsR+Fm2OvFeo8maZYsYdf/P X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0864; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0864;20:tYDd7ukGa6CLvUFQn5LXY+Qa1MqhFUs9wLaQwiZsCNYA8tt3FKUwIKrX27Jzf6G44+RKWQAAV7MiU/hy5FMnaZyDeYaMFyQpkIKr2ue/8qH4M9b93HY4vpgAGXBOijnIz4+l0VWNJPAYB3d83VbwqYgCDh39syABOP352vWTGlCnrZOW8/qyNGHwXhI1KaShTswU1JTui/qjNRasgaYGHsIxjei1hnBDz0DXLQKGg7Dz3uG43ClVfVukI2ZD4J46jAXW8qng1lMXI9vs2TGokOxukO1WyfurACkLlBDKaBXzk0DcYdPlKPMarJjdaW5M/iqGnDvVPBOv3UsxsDBKECttewKbzoE6wVcbM2WMMNEMJtmTFaGh/7PkUyra3YyV1xFpR9GX8wP+ofK7bWE9+X6AZ2M3Fu+4xokMA32dh4ZiybNAF9whvPDsqHvFogD6IVfxNMYKSrdYPHcshqU54bfuWawYZ8lwM7/pkTnY9jeTnnR//bzBJYIui+FFwwFk;4:WnzEwvLsXayCjyAhA4UvPXSc0jA87vW8Q7x2UtE7Fv01zPnVcjx3TNJQUNkyoI9RYZ3WdgiCWwXOx6E7DF+OPz6/zXCBFPi6fGHz1gfuj7GqzY5wzD5Pd1sSjUuyjrROCgWHv6hHuzikamN7IAqMsyoH+uShhvTPABW56eHQ0xnNZoNrIvie+q/OoIEOuEBqd+YWw4W6sSy1EF1Gw8TE/27NSLGgUs9HNf/1eXqXuFeuTpZQy1sxraQ5VmGkGrz9myv86fdO60b1HB6qtqLDFFIXSlPzEpgcF9TS12nF87UpEOFs3QK5DLCRVtbPCJPxpJOV9vctfkhYDbitzu9Kr9MJ0QlPwGjiGHyVuvuKTbsUuE1GjJhliVEPYbzgH2CVzGOhFpCxo66ahxYhX+KWrg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110)(8415204561270); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(10201501046)(3002001)(102215026);SRVR:SN1PR12MB0864;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0864; X-Forefront-PRVS: 07459438AA X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SN1PR12MB0864;23:UjXcRTCWjw+Kw5fAns7C7vwimqFmg+/RXT6egUNBu?= =?us-ascii?Q?CEAfyiad0d5jRguQwzhbMw1O/SHQxddaQhP4QcfkW0+1vI04y5IXU4xD2D4F?= =?us-ascii?Q?Wj7xIaQunFeM30GO5HXMi5msU/C438z/5iVjZLltk+B1zPF5LnMuSSyJm4IP?= =?us-ascii?Q?a0AITb6Yk98YlvoWpBENjojddcjA1yM3/twxVLj5xf+bei73YGs9Iond0zu0?= =?us-ascii?Q?Qu9bP03OKlhtMOb2QKtTvh24zotoF0iMOVwxgdHUN3zkNbzcKodYLbb6frAw?= =?us-ascii?Q?sZaTsb431oTwl/+dc05O3wzCn0FHrJjbDpzPmKT2awSM/niWQnYtwzHhHB4A?= =?us-ascii?Q?7QWCAXQFnH+aWtFL/Fl7/WHF+7UbZQ6w3G1FbKgFj79uaFccSoP0RjQkiu80?= =?us-ascii?Q?N+nQsCDsx11NfBJoq5cqOARg9AjWV4877IGc6AAYE0MZbo9j+ifEBU3wJtA+?= =?us-ascii?Q?F9jpl8zouJi+Y14KHsMV3oSrev4CwGHzTyDhSPjj5jxDuZLf/8TY7urd+8ul?= =?us-ascii?Q?wvBgLNU86bkvD19h1ASGPuSaPeBio7PRRuC4Dr4UGGGV3SY7ErwzEwLGlFk6?= =?us-ascii?Q?MMv9UaHX8RZazvVYKFwJ41lA1JJpL4efT5rmgvVYJcu8nXs9jv+4B39lH1Z6?= =?us-ascii?Q?SAU+9fOmJB0E4AK895LEKEXorZAQkudpI6+h1c3UKQknHgqwLWa/UJgNZShL?= =?us-ascii?Q?jISAZnpIm3KbiZOEmvY+PK6hHOC+qN3H5eX4VltoiQWqFalC/TejiALpknIZ?= =?us-ascii?Q?1BByaDjBnbqTegnA8IthlvGXi9mtu3BhRbEXS3O6LdLKj1Z6vderGMI0scGC?= =?us-ascii?Q?0P2iybtUm9Ps2upoE/SWZLIGZFk0wOkF/eE9NwMZaWBkkafcebYV+h5nUT4a?= =?us-ascii?Q?0Rs+RCKbe6rh3BD+8r3VocH6NYoW4m+DBA6rgXZXRZFUT4Zx/JuRpkWhtvPk?= =?us-ascii?Q?k+UL9ic2x0jKp12EvXWAweh2eyZK3jvVIWS/MXOjA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0864;5:lrwQwUA1/BLKU5CkRhQnI74xem3XuT1xyxTJXPsRE5ztxXMX42/RrG2DWcDLHLpz/8VvFHCosMeEGLmgtIhtfNjEMPHoMCV5r9gHePU4xng5F/aV3X/euXjTXLSxUN+1CvcbZG6qBTolDgupWwMG6w==;24:6qvnEqXnUFHk9BFOuJiijTTIeac2LUDLuI2vo6L0ggcJSIDKRAHXYH8QoYa9RfBd8vlxQsByo1DaSMirF6pSUFF2AtryP9UVPXlF7LwVFOA=;20:EojwO097K8F/cyNvNxN6V/VgbAPjhni0hSqV2q/3QreBl/O4zPn5B+N5ZsD3qrpsCzQDlVSPE5C8R34MgSJovXs6NaS6dE2i7CemzJYwiKn1/YtoUIGNI+b4V4MVVOFCeX5AiytlZHvukvc95nfDU/KinQQSpTgXU2Jgp13ioNUEYMxX6nQM2Nrv1BfMXxbMJ1OGPBsewmLhRBxQVUctXNW5qDmYg7pPssibK2Jpr+vJV48rZtA2rX1cHPbGN2Eg SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2015 10:01:18.7345 (UTC) X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.221];Helo=[atltwp01.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0864 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch adds a member in fam15h_power_data which specifies the maximum accumulated power in a compute unit. Signed-off-by: Huang Rui Cc: Borislav Petkov Cc: Guenter Roeck Cc: Peter Zijlstra Cc: Ingo Molnar --- drivers/hwmon/fam15h_power.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/hwmon/fam15h_power.c b/drivers/hwmon/fam15h_power.c index a46e166..5f7067d 100644 --- a/drivers/hwmon/fam15h_power.c +++ b/drivers/hwmon/fam15h_power.c @@ -26,6 +26,7 @@ #include #include #include +#include MODULE_DESCRIPTION("AMD Family 15h CPU processor power monitor"); MODULE_AUTHOR("Andreas Herrmann "); @@ -44,6 +45,8 @@ MODULE_LICENSE("GPL"); #define FAM15H_MIN_NUM_ATTRS 2 #define FAM15H_NUM_GROUPS 2 +#define MSR_F15H_CU_MAX_PWR_ACCUMULATOR 0xc001007b + struct fam15h_power_data { struct pci_dev *pdev; unsigned int tdp_to_watts; @@ -52,6 +55,8 @@ struct fam15h_power_data { unsigned int cpu_pwr_sample_ratio; const struct attribute_group *groups[FAM15H_NUM_GROUPS]; struct attribute_group group; + /* maximum accumulated power of a compute unit */ + u64 max_cu_acc_power; }; static ssize_t show_power(struct device *dev, @@ -241,6 +246,13 @@ static int fam15h_power_init_data(struct pci_dev *f4, */ data->cpu_pwr_sample_ratio = ecx; + if (rdmsrl_safe(MSR_F15H_CU_MAX_PWR_ACCUMULATOR, &tmp)) { + pr_err("Failed to read max compute unit power accumulator MSR\n"); + return -ENODEV; + } + + data->max_cu_acc_power = tmp; + return 0; } -- 1.9.1