Message ID | 20240220153326.6236-1-sivaprasad.tummala@amd.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 073CD43B55; Tue, 20 Feb 2024 16:33:47 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CD214402A7; Tue, 20 Feb 2024 16:33:46 +0100 (CET) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2072.outbound.protection.outlook.com [40.107.237.72]) by mails.dpdk.org (Postfix) with ESMTP id 0A8974029B for <dev@dpdk.org>; Tue, 20 Feb 2024 16:33:46 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RXiCsTr870VnIhB8rwTCg7MUk/QjBGGwHGdDIH15Ajlyge5c2BoTdMWoP7xr6qVZFgboPfXwhtsVxF/9qvHoMJUMpaebUm5rREPA1En3+7hWHoCcwHWM5C8jzyQ58QcWXZ+MGdCuyjCS83GvI4n/OSEO/mxKzXwoI5830XXg6KE16Okw6CWQffdf9BypUmf1ABCWSPCnSevHTNcB9ntHh1zkjf3OvN8/iCImR2vyPFtwrcL/1AAVXFOcgA8FawRLfL3A8ruxk9EBgJ7yXZwbuqE4631g9UyX+MvybEbine/Gkj7LZOHfgI3nOkaa1d0aHmsILkOY3jzn66HWmmjcnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZINv7oL5o96XRma437RwWOg8o/llmpRS29Eje69zAcM=; b=eE0yOj5ufhaYa1oJrHNn8pKyFtSvyVAy9zfdPCWmSKKU/F3i5PBnfPDpXbJLPHT3n1wZ0iMLPF3teR9PpM9xle+T9bDLb7nzPL9aq/uNUsiq3Ne3XuQ/eYn8Gy7wMC6ZylUqmxYAXdFM9YPJSuZ+eVPiPETZBMWdmHtvUxvS29EfvXy44K1I989734zhGAM8OzEUMO6buxnc6nzjMk1bZFqEnbKJ/sBdxASeKd6gJxPpMXtu/yQZDst7LtbDWMSVMfDroLu97K2sBcJC65EyrQiTJypEguUQouHyYgc3ZYItWpnUFGlZfA+v784EsmXwxPUUHdSVTkZhrIjdD6BgbA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=intel.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZINv7oL5o96XRma437RwWOg8o/llmpRS29Eje69zAcM=; b=kzIPqDiYMwGO+c9iRKcYKIChykW/hye64lsKssPfy1XHg2JBdK60Tz1yVTNqeS3rSMO20lcu7WL3C5D58CBK1R6uIiJJUq2VG77UiTdvpPMjUV/rKPmukdqopONNkIvJkRX9nQJRV/wPKI2+z3KdkhBeodns8F+BfzV9RDBp6+s= Received: from BN9PR03CA0483.namprd03.prod.outlook.com (2603:10b6:408:130::8) by IA0PR12MB8748.namprd12.prod.outlook.com (2603:10b6:208:482::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7316.20; Tue, 20 Feb 2024 15:33:43 +0000 Received: from BN1PEPF00004687.namprd05.prod.outlook.com (2603:10b6:408:130:cafe::46) by BN9PR03CA0483.outlook.office365.com (2603:10b6:408:130::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.40 via Frontend Transport; Tue, 20 Feb 2024 15:33:42 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by BN1PEPF00004687.mail.protection.outlook.com (10.167.243.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7292.25 via Frontend Transport; Tue, 20 Feb 2024 15:33:42 +0000 Received: from ubuntu2004.linuxvmimages.local (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Tue, 20 Feb 2024 09:33:39 -0600 From: Sivaprasad Tummala <sivaprasad.tummala@amd.com> To: <david.hunt@intel.com>, <anatoly.burakov@intel.com>, <jerinj@marvell.com>, <radu.nicolau@intel.com>, <gakhil@marvell.com>, <cristian.dumitrescu@intel.com>, <ferruh.yigit@amd.com>, <konstantin.ananyev@huawei.com> CC: <dev@dpdk.org> Subject: [RFC PATCH 0/2] power: refactor power management library Date: Tue, 20 Feb 2024 16:33:23 +0100 Message-ID: <20240220153326.6236-1-sivaprasad.tummala@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN1PEPF00004687:EE_|IA0PR12MB8748:EE_ X-MS-Office365-Filtering-Correlation-Id: 142e7812-0020-44c1-4c4d-08dc322951cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +EHsKnph/NBSExPIN3Ju8i6GBlv9LUG993SUSlTKb/WzXyV/aCDq52duh3w1y1L85DKkxKie46S2MvXcCEqyM5u74V1QmemJyzSepUUloMwMLk9VVL9xW84lvtf4kf4EhmbhihoJuFegpEfHMMIoOJmvBW5aFeNgFGRMqWvgizF1Mlmdsz7kNZKSE4yWw20JiQc+tr7g18780S8ZR9SpTR9AR4YR5L4lrxUKPJqJr42GpOAoDIoV2MjdnuUjnj0NviXOTMpzMwKKaZ2++VZVfdrCVT0Nl0d80giC3DuyR/Pxyt5ugLhFu7Qaj89U3a6ARuKqzI567qtNocOjpYjgtWSelMs2PyWbH90mSsa9lKnpseRZq5cNJcqPYe7n7XQ+BcaUBLArGaN3rs+mFqxipg+NAXFVRWYaXJt18Q20Zj6o3J+lF2fyYJx9q/WUDsWAzuPAKi3XKJWxycOt2EYkO+wdmerU076TH2WXMSl2/LG7qVCTxZjElVTi/EkcDVblTKo0Qz6tQybp79fcEaA2IhSTJIO3gadQGTYHftJ9Un8OjCgYcFEn1+E/wH1VA7GW734u15uzIs2lMMhW/PIBu9///lVXJVJWobyna55HzQWV6nznr+D0ZUFQ3UZlo2m3YqLe1ZRbqpNX+AuGYYV9pqivK/zymfHruFDk6dbWBQI= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230031)(36860700004)(40470700004)(46966006); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Feb 2024 15:33:42.6755 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 142e7812-0020-44c1-4c4d-08dc322951cd 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.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN1PEPF00004687.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8748 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
power: refactor power management library
|
|
Message
Sivaprasad Tummala
Feb. 20, 2024, 3:33 p.m. UTC
This patchset refactors the power management library, addressing both
core and uncore power management. The primary changes involve the creation
of dedicated directories for each driver within 'drivers/power/core/*' and
'drivers/power/uncore/*'.
This refactor significantly improves code organization, enhances clarity,
and boosts maintainability. It lays the foundation for more focused
development on individual drivers and facilitates seamless integration of
future enhancements, particularly the AMD uncore driver.
Furthermore, this effort aims to streamline code maintenance by
consolidating common functions for cpufreq and cppc across various
core drivers, thus reducing code duplication.
Please note that this RFC patch is currently in its initial phase and is
primarily intended for soliciting feedback and comments. As of now,
it has not undergone testing for build or functional issues.
Signed-off-by: Sivaprasad Tummala <sivaprasad.tummala@amd.com>
---
power: refactor core power management library
power: refactor uncore power management library
drivers/meson.build | 1 +
drivers/power/core/acpi/meson.build | 8 +
.../power/core/acpi}/power_acpi_cpufreq.c | 19 ++
.../power/core/acpi}/power_acpi_cpufreq.h | 0
drivers/power/core/amd-pstate/meson.build | 8 +
.../amd-pstate}/power_amd_pstate_cpufreq.c | 19 ++
.../amd-pstate}/power_amd_pstate_cpufreq.h | 0
drivers/power/core/cppc/meson.build | 8 +
.../power/core/cppc}/power_cppc_cpufreq.c | 19 ++
.../power/core/cppc}/power_cppc_cpufreq.h | 0
.../power/core/kvm-vm}/guest_channel.c | 0
.../power/core/kvm-vm}/guest_channel.h | 0
drivers/power/core/kvm-vm/meson.build | 20 ++
.../power/core/kvm-vm}/power_kvm_vm.c | 19 ++
.../power/core/kvm-vm}/power_kvm_vm.h | 0
drivers/power/core/meson.build | 12 +
drivers/power/core/pstate/meson.build | 8 +
.../power/core/pstate}/power_pstate_cpufreq.c | 19 ++
.../power/core/pstate}/power_pstate_cpufreq.h | 0
drivers/power/meson.build | 9 +
drivers/power/uncore/intel/meson.build | 9 +
.../power/uncore/intel}/power_intel_uncore.c | 15 +
.../power/uncore/intel}/power_intel_uncore.h | 0
drivers/power/uncore/meson.build | 8 +
lib/power/meson.build | 7 -
lib/power/power_common.h | 11 +
lib/power/rte_power.c | 305 ++++++++----------
lib/power/rte_power.h | 207 ++++++++++--
lib/power/rte_power_uncore.c | 163 ++++------
lib/power/rte_power_uncore.h | 150 ++++++++-
lib/power/version.map | 13 +
31 files changed, 742 insertions(+), 315 deletions(-)
create mode 100644 drivers/power/core/acpi/meson.build
rename {lib/power => drivers/power/core/acpi}/power_acpi_cpufreq.c (95%)
rename {lib/power => drivers/power/core/acpi}/power_acpi_cpufreq.h (100%)
create mode 100644 drivers/power/core/amd-pstate/meson.build
rename {lib/power => drivers/power/core/amd-pstate}/power_amd_pstate_cpufreq.c (95%)
rename {lib/power => drivers/power/core/amd-pstate}/power_amd_pstate_cpufreq.h (100%)
create mode 100644 drivers/power/core/cppc/meson.build
rename {lib/power => drivers/power/core/cppc}/power_cppc_cpufreq.c (96%)
rename {lib/power => drivers/power/core/cppc}/power_cppc_cpufreq.h (100%)
rename {lib/power => drivers/power/core/kvm-vm}/guest_channel.c (100%)
rename {lib/power => drivers/power/core/kvm-vm}/guest_channel.h (100%)
create mode 100644 drivers/power/core/kvm-vm/meson.build
rename {lib/power => drivers/power/core/kvm-vm}/power_kvm_vm.c (83%)
rename {lib/power => drivers/power/core/kvm-vm}/power_kvm_vm.h (100%)
create mode 100644 drivers/power/core/meson.build
create mode 100644 drivers/power/core/pstate/meson.build
rename {lib/power => drivers/power/core/pstate}/power_pstate_cpufreq.c (96%)
rename {lib/power => drivers/power/core/pstate}/power_pstate_cpufreq.h (100%)
create mode 100644 drivers/power/meson.build
create mode 100644 drivers/power/uncore/intel/meson.build
rename {lib/power => drivers/power/uncore/intel}/power_intel_uncore.c (95%)
rename {lib/power => drivers/power/uncore/intel}/power_intel_uncore.h (100%)
create mode 100644 drivers/power/uncore/meson.build
Comments
This patchset refactors the power management library, addressing both
core and uncore power management. The primary changes involve the creation
of dedicated directories for each driver within 'drivers/power/core/*' and
'drivers/power/uncore/*'.
This refactor significantly improves code organization, enhances clarity,
and boosts maintainability. It lays the foundation for more focused
development on individual drivers and facilitates seamless integration of
future enhancements, particularly the AMD uncore driver.
Furthermore, this effort aims to streamline code maintenance by
consolidating common functions for cpufreq and cppc across various
core drivers, thus reducing code duplication.
Please note that this RFC patch is currently in its initial phase and is
primarily intended for soliciting feedback and comments. As of now,
it has not undergone testing for build or functional issues.
Signed-off-by: Sivaprasad Tummala <sivaprasad.tummala@amd.com>
---
power: refactor core power management library
power: refactor uncore power management library
drivers/meson.build | 1 +
drivers/power/core/acpi/meson.build | 8 +
.../power/core/acpi}/power_acpi_cpufreq.c | 19 ++
.../power/core/acpi}/power_acpi_cpufreq.h | 0
drivers/power/core/amd-pstate/meson.build | 8 +
.../amd-pstate}/power_amd_pstate_cpufreq.c | 19 ++
.../amd-pstate}/power_amd_pstate_cpufreq.h | 0
drivers/power/core/cppc/meson.build | 8 +
.../power/core/cppc}/power_cppc_cpufreq.c | 19 ++
.../power/core/cppc}/power_cppc_cpufreq.h | 0
.../power/core/kvm-vm}/guest_channel.c | 0
.../power/core/kvm-vm}/guest_channel.h | 0
drivers/power/core/kvm-vm/meson.build | 20 ++
.../power/core/kvm-vm}/power_kvm_vm.c | 19 ++
.../power/core/kvm-vm}/power_kvm_vm.h | 0
drivers/power/core/meson.build | 12 +
drivers/power/core/pstate/meson.build | 8 +
.../power/core/pstate}/power_pstate_cpufreq.c | 19 ++
.../power/core/pstate}/power_pstate_cpufreq.h | 0
drivers/power/meson.build | 9 +
drivers/power/uncore/intel/meson.build | 9 +
.../power/uncore/intel}/power_intel_uncore.c | 15 +
.../power/uncore/intel}/power_intel_uncore.h | 0
drivers/power/uncore/meson.build | 8 +
lib/power/meson.build | 7 -
lib/power/power_common.h | 11 +
lib/power/rte_power.c | 305 ++++++++----------
lib/power/rte_power.h | 207 ++++++++++--
lib/power/rte_power_uncore.c | 163 ++++------
lib/power/rte_power_uncore.h | 150 ++++++++-
lib/power/version.map | 13 +
31 files changed, 742 insertions(+), 315 deletions(-)
create mode 100644 drivers/power/core/acpi/meson.build
rename {lib/power => drivers/power/core/acpi}/power_acpi_cpufreq.c (95%)
rename {lib/power => drivers/power/core/acpi}/power_acpi_cpufreq.h (100%)
create mode 100644 drivers/power/core/amd-pstate/meson.build
rename {lib/power => drivers/power/core/amd-pstate}/power_amd_pstate_cpufreq.c (95%)
rename {lib/power => drivers/power/core/amd-pstate}/power_amd_pstate_cpufreq.h (100%)
create mode 100644 drivers/power/core/cppc/meson.build
rename {lib/power => drivers/power/core/cppc}/power_cppc_cpufreq.c (96%)
rename {lib/power => drivers/power/core/cppc}/power_cppc_cpufreq.h (100%)
rename {lib/power => drivers/power/core/kvm-vm}/guest_channel.c (100%)
rename {lib/power => drivers/power/core/kvm-vm}/guest_channel.h (100%)
create mode 100644 drivers/power/core/kvm-vm/meson.build
rename {lib/power => drivers/power/core/kvm-vm}/power_kvm_vm.c (83%)
rename {lib/power => drivers/power/core/kvm-vm}/power_kvm_vm.h (100%)
create mode 100644 drivers/power/core/meson.build
create mode 100644 drivers/power/core/pstate/meson.build
rename {lib/power => drivers/power/core/pstate}/power_pstate_cpufreq.c (96%)
rename {lib/power => drivers/power/core/pstate}/power_pstate_cpufreq.h (100%)
create mode 100644 drivers/power/meson.build
create mode 100644 drivers/power/uncore/intel/meson.build
rename {lib/power => drivers/power/uncore/intel}/power_intel_uncore.c (95%)
rename {lib/power => drivers/power/uncore/intel}/power_intel_uncore.h (100%)
create mode 100644 drivers/power/uncore/meson.build