From patchwork Tue May 16 09:13:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Shyam Sundar S K X-Patchwork-Id: 13242806 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 39E60C77B7F for ; Tue, 16 May 2023 09:17:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231823AbjEPJRK (ORCPT ); Tue, 16 May 2023 05:17:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53586 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232082AbjEPJQt (ORCPT ); Tue, 16 May 2023 05:16:49 -0400 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [IPv6:2a01:111:f400:7eae::601]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C95F349EB for ; Tue, 16 May 2023 02:16:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DCsLRpRomnsbsKB3wZTw96DsaRlELCc6W85FFeUg/Xd8UUIO6FSeOhucmTPO3whVho1co6R7hMV6+DzbqXXfl0kWdXEqm9v/EDQdDKr+7dyNJSXsIV3OcLZvAqcUmOArpD0/SFP/meB6bbHa3eBuE6yjgH1jZvddUz15LlEiuPe6yZLYjP2lFN1LRRHc7Bal7hIM/VWsE4h48h20MglRdj6VkPW6l4BZIOvcouQN6GwsmffasDDEyg4QN0ykAfyt3Byym5clbKb49mSkRZC896bYBEig6ssDSg8Aosa1gJwPGf/hsaDAsiJpSwydRa4nMVSKnDJacCh564fJejSR5A== 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=32tq6Ri0rSbi2uZKAapC2ZsnrJAudQHLgLWQbTVPjeo=; b=oGCGXi42Xbij0zx724NqJCgb9pNCJKGFGYxPy8+I27y5+WPoWDdCqERmJ6n6yfrLe0L3L6rB2GDJ04jO2XUZ8aRh7MyeKaTiydqhlEzLyXlRul99XITy5SuIgISFLDWubTX+KGo7PqtmXPQLu5auEoATv0+2Gjr4yRnhm6ddG1PRTAOvGEfm6iim3PHQxLI56+gHsL7d0mShf0kVFAAkwnHeuZhnejtFkfq+GRmKzJCrb1Y0MTBs3pFAXweI3nnT3HpepwS37G6YThymfAmbXv3PXD/brSIxOS14yFB5eNoNipvmIdtOFWG0W2/t/ZaYGSHprHJSU6TFIAjIiPFGDg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.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 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=32tq6Ri0rSbi2uZKAapC2ZsnrJAudQHLgLWQbTVPjeo=; b=C8KsOvJI0biBNaI22xY5ixZi3a2GMg5lmdD6Y0u1V1E4ox0LzpfGBPzaebq2dDax8NBGmGfGDKxjFi5YOlbIfdA5pcXlZVjGCfshTapbWkqGonLQikExpyQUTvjYz8TgWG4JewPOVuRX7H7OPHzTKk2mwwv4L0HvjpmnGssvzmk= Received: from MW4P221CA0001.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::6) by BL1PR12MB5094.namprd12.prod.outlook.com (2603:10b6:208:312::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.32; Tue, 16 May 2023 09:13:38 +0000 Received: from CO1NAM11FT027.eop-nam11.prod.protection.outlook.com (2603:10b6:303:8b:cafe::48) by MW4P221CA0001.outlook.office365.com (2603:10b6:303:8b::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.31 via Frontend Transport; Tue, 16 May 2023 09:13:37 +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 CO1NAM11FT027.mail.protection.outlook.com (10.13.174.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6411.15 via Frontend Transport; Tue, 16 May 2023 09:13:37 +0000 Received: from jatayu.amd.com (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.2375.34; Tue, 16 May 2023 04:13:34 -0500 From: Shyam Sundar S K To: , CC: , , , Shyam Sundar S K Subject: [PATCH v3 1/4] platform/x86/amd: pmc: Pass true/false to bool argument Date: Tue, 16 May 2023 14:43:05 +0530 Message-ID: <20230516091308.3905113-2-Shyam-sundar.S-k@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> References: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT027:EE_|BL1PR12MB5094:EE_ X-MS-Office365-Filtering-Correlation-Id: 59c111ff-3fcf-4fcc-858c-08db55edd53c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7YNlYaTPFOKnFrzFZ9so2F8ibSszA26UTuz7MQvGgnqdoJosxJnIxZNDRJrXHzzXF7suOBXap/2VqMdBXhrVWknEzxQwfmfRzZm0TuZ68sj7AAgUrzdTE8KHnvkN4cOYP2sU+6EuLsGQvhZ3lmbHfuLebLcOehtvDQ9XOBQv9DbsLelkBLk92IQ0LnYgFdXjB1OuQAwq2Bw//TA7vke3g4b+07b78hTipOTsml5O5rCJ0gnPLq7oLe9kn73KK3I9sqZHsrnN/I4oznL4foVo5kc/qg3J93vz24UgP5Y5yLhfJsH7UAWmvvJ1Rzy8CB70KOH6LHGY2P4lZad3Y/1eIl0Z3vIgKVi4gseqkz+m02uO5HN6IJPsR0rBhdIOcp4Yi7mEXqY3yMen9AxIPFsAVgARWTnXysh9+OtQSzTzURt9k5Ri5HAuxeevT/Az1s11jANvXer3ZfF+CSibV3NtApbk5TRXuq+fp7Te8wHgU4z5kcurJSdBa0Dn6az2fnnaWU62wyuuRrCplW7HNg2U6mrHgYE4b/pomak2wC1Iyy5RyepE9jJL/IE87MgaktwvikN7c4eYwVxIVcel3SQ8sZG2lLO5CHhg9gsJwwEUS2Eb5UN3Kbq3asRrsMyXkg/VBmU4OTi7pk1V6SGcl8xUa2agY5iDVJXyyUfQe/0m0WWWW+OcG/1GIhq7aEMkI+PRWFArDLmerIUBwCEJidC78iN6BOxrAYJZoelamsGM/u14aKHW6XPXU8XeieyVZpw0SvgTvTxHfwuxzXTt+7x09w== 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:(13230028)(4636009)(39860400002)(376002)(136003)(396003)(346002)(451199021)(40470700004)(46966006)(36840700001)(36756003)(110136005)(54906003)(7696005)(86362001)(316002)(70586007)(70206006)(4326008)(478600001)(40480700001)(82310400005)(41300700001)(8676002)(5660300002)(8936002)(81166007)(6666004)(2906002)(82740400003)(356005)(36860700001)(16526019)(2616005)(336012)(26005)(1076003)(426003)(83380400001)(47076005)(186003)(40460700003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2023 09:13:37.4618 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 59c111ff-3fcf-4fcc-858c-08db55edd53c 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: CO1NAM11FT027.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5094 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Pass true/false to the bool argument of the amd_pmc_send_cmd() function, instead of 1/0 to match the function signature. Co-developed-by: Sanket Goswami Signed-off-by: Sanket Goswami Signed-off-by: Shyam Sundar S K Reviewed-by: Ilpo Järvinen --- drivers/platform/x86/amd/pmc.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c index 427905714f79..f28c295b47dd 100644 --- a/drivers/platform/x86/amd/pmc.c +++ b/drivers/platform/x86/amd/pmc.c @@ -261,7 +261,7 @@ static int amd_pmc_stb_debugfs_open_v2(struct inode *inode, struct file *filp) dev->msg_port = 1; /* Get the num_samples to calculate the last push location */ - ret = amd_pmc_send_cmd(dev, S2D_NUM_SAMPLES, &num_samples, STB_SPILL_TO_DRAM, 1); + ret = amd_pmc_send_cmd(dev, S2D_NUM_SAMPLES, &num_samples, STB_SPILL_TO_DRAM, true); /* Clear msg_port for other SMU operation */ dev->msg_port = 0; if (ret) { @@ -317,15 +317,15 @@ static int amd_pmc_setup_smu_logging(struct amd_pmc_dev *dev) /* Get Active devices list from SMU */ if (!dev->active_ips) - amd_pmc_send_cmd(dev, 0, &dev->active_ips, SMU_MSG_GET_SUP_CONSTRAINTS, 1); + amd_pmc_send_cmd(dev, 0, &dev->active_ips, SMU_MSG_GET_SUP_CONSTRAINTS, true); /* Get dram address */ if (!dev->smu_virt_addr) { u32 phys_addr_low, phys_addr_hi; u64 smu_phys_addr; - amd_pmc_send_cmd(dev, 0, &phys_addr_low, SMU_MSG_LOG_GETDRAM_ADDR_LO, 1); - amd_pmc_send_cmd(dev, 0, &phys_addr_hi, SMU_MSG_LOG_GETDRAM_ADDR_HI, 1); + amd_pmc_send_cmd(dev, 0, &phys_addr_low, SMU_MSG_LOG_GETDRAM_ADDR_LO, true); + amd_pmc_send_cmd(dev, 0, &phys_addr_hi, SMU_MSG_LOG_GETDRAM_ADDR_HI, true); smu_phys_addr = ((u64)phys_addr_hi << 32 | phys_addr_low); dev->smu_virt_addr = devm_ioremap(dev->dev, smu_phys_addr, @@ -335,8 +335,8 @@ static int amd_pmc_setup_smu_logging(struct amd_pmc_dev *dev) } /* Start the logging */ - amd_pmc_send_cmd(dev, 0, NULL, SMU_MSG_LOG_RESET, 0); - amd_pmc_send_cmd(dev, 0, NULL, SMU_MSG_LOG_START, 0); + amd_pmc_send_cmd(dev, 0, NULL, SMU_MSG_LOG_RESET, false); + amd_pmc_send_cmd(dev, 0, NULL, SMU_MSG_LOG_START, false); return 0; } @@ -377,7 +377,7 @@ static int amd_pmc_get_smu_version(struct amd_pmc_dev *dev) if (dev->cpu_id == AMD_CPU_ID_PCO) return -ENODEV; - rc = amd_pmc_send_cmd(dev, 0, &val, SMU_MSG_GETSMUVERSION, 1); + rc = amd_pmc_send_cmd(dev, 0, &val, SMU_MSG_GETSMUVERSION, true); if (rc) return rc; @@ -794,7 +794,7 @@ static void amd_pmc_s2idle_prepare(void) } msg = amd_pmc_get_os_hint(pdev); - rc = amd_pmc_send_cmd(pdev, arg, NULL, msg, 0); + rc = amd_pmc_send_cmd(pdev, arg, NULL, msg, false); if (rc) { dev_err(pdev->dev, "suspend failed: %d\n", rc); return; @@ -829,7 +829,7 @@ static int amd_pmc_dump_data(struct amd_pmc_dev *pdev) if (pdev->cpu_id == AMD_CPU_ID_PCO) return -ENODEV; - return amd_pmc_send_cmd(pdev, 0, NULL, SMU_MSG_LOG_DUMP_DATA, 0); + return amd_pmc_send_cmd(pdev, 0, NULL, SMU_MSG_LOG_DUMP_DATA, false); } static void amd_pmc_s2idle_restore(void) @@ -839,7 +839,7 @@ static void amd_pmc_s2idle_restore(void) u8 msg; msg = amd_pmc_get_os_hint(pdev); - rc = amd_pmc_send_cmd(pdev, 0, NULL, msg, 0); + rc = amd_pmc_send_cmd(pdev, 0, NULL, msg, false); if (rc) dev_err(pdev->dev, "resume failed: %d\n", rc); @@ -899,13 +899,13 @@ static int amd_pmc_s2d_init(struct amd_pmc_dev *dev) /* Spill to DRAM feature uses separate SMU message port */ dev->msg_port = 1; - amd_pmc_send_cmd(dev, S2D_TELEMETRY_SIZE, &size, STB_SPILL_TO_DRAM, 1); + amd_pmc_send_cmd(dev, S2D_TELEMETRY_SIZE, &size, STB_SPILL_TO_DRAM, true); if (size != S2D_TELEMETRY_BYTES_MAX) return -EIO; /* Get STB DRAM address */ - amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_LOW, &phys_addr_low, STB_SPILL_TO_DRAM, 1); - amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_HIGH, &phys_addr_hi, STB_SPILL_TO_DRAM, 1); + amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_LOW, &phys_addr_low, STB_SPILL_TO_DRAM, true); + amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_HIGH, &phys_addr_hi, STB_SPILL_TO_DRAM, true); stb_phys_addr = ((u64)phys_addr_hi << 32 | phys_addr_low); From patchwork Tue May 16 09:13:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Shyam Sundar S K X-Patchwork-Id: 13242805 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 49A88C7EE24 for ; Tue, 16 May 2023 09:16:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231877AbjEPJQO (ORCPT ); Tue, 16 May 2023 05:16:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53512 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231872AbjEPJQA (ORCPT ); Tue, 16 May 2023 05:16:00 -0400 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20627.outbound.protection.outlook.com [IPv6:2a01:111:f400:7eaa::627]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 40F3E5BA3 for ; Tue, 16 May 2023 02:15:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Zt7z+qDsA9FUuPKlDI6pZDfkyI0NloCVJ0NZPuTa5JhZn+ihIhzBcdj1KUIaxu2vHVmec5QpvyX/jkbJ8qA7HBS9xvgjTT+zDYBscKsZHSHH1xdiqyOdtQfqkmgplIk04vsZ7mbacPRGqRFgDGuQi0oV5hJEw9mVcTaXAM9k7F2CnVVq8/uTEe+16ZXZKZtmk7Xg5LQOfva9BbfQ/Ro0J5He3h61MntAdxUhW8b4ch/lOSOonRJhBENPi+5mJSeFy9Cw+wXqXg37Rjbdj33OgcyQiTb1KM/g6mnOldIQLH+4HxelDgD6+EEtlxYiolqpNT0hRm6hSJ1Vv/2s8OcAww== 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=3kFALfnGsTZydzbxnZbUQUWIlXHlbRbx9tyLrV7E0NA=; b=NuoQJi5zOrH5aPJR/fsXFEEBlt0341IjsxmFF/Fr1Fa7yq7fN7H7m0KD1IUGyfWan3T9NPsej7XTT16U50zSYD9U1ZnvJPmi7b4x1Q4qDrWyOdFkcRlooIXjwd0SetM7jnlNKpdyCpbRU+8MtqlH++1bl+TdzO/IqjfNNAe92MlpwAe4hnc1NoJk7YOzBKNDgFXhR5/qmI82zbg7FKhHT6ikzx5fkDsZLsoONc5p8WIEBtmMC1bFwVlGYYikNOdJPg/s87uBMU0d1ATED7paJIOKgQCUJFGI+E2AM0Mvn01Z8jskHPnQ4YHqzUxFT+mZvWb0JhkoIvilZNoViLTaOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.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 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=3kFALfnGsTZydzbxnZbUQUWIlXHlbRbx9tyLrV7E0NA=; b=MpdwnoyIvXS4MzxJqymoWINY0aNLTBVk6C9tUrFLwrqOaA4kDHmPwSejxkAKzRvc4ElElAszQQy/ShM6hhe1tRoGf22IO8lZqpX2NDs7kaG6dduDNHuQyYbxwlytYap4yjOxjbYToKJoRHvWGkxZL9D5HisjCgiUXTZjXuTZzIw= Received: from MW4P221CA0005.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::10) by CY5PR12MB6454.namprd12.prod.outlook.com (2603:10b6:930:36::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.30; Tue, 16 May 2023 09:13:40 +0000 Received: from CO1NAM11FT027.eop-nam11.prod.protection.outlook.com (2603:10b6:303:8b:cafe::78) by MW4P221CA0005.outlook.office365.com (2603:10b6:303:8b::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.33 via Frontend Transport; Tue, 16 May 2023 09:13:39 +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 CO1NAM11FT027.mail.protection.outlook.com (10.13.174.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6411.15 via Frontend Transport; Tue, 16 May 2023 09:13:39 +0000 Received: from jatayu.amd.com (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.2375.34; Tue, 16 May 2023 04:13:37 -0500 From: Shyam Sundar S K To: , CC: , , , Shyam Sundar S K Subject: [PATCH v3 2/4] platform/x86/amd: pmc: Get STB DRAM size from PMFW Date: Tue, 16 May 2023 14:43:06 +0530 Message-ID: <20230516091308.3905113-3-Shyam-sundar.S-k@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> References: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT027:EE_|CY5PR12MB6454:EE_ X-MS-Office365-Filtering-Correlation-Id: 92745128-00a2-4cba-8334-08db55edd685 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iR33R6qREsSb1bTfmZPka4GBP7BnjvBe7NQCEVI0nMS7tMoW+lat3UsQNKu3GePQPEYGPNXBXuB9W3B+4uHv2q5EkAY0IrUeCnk83XBColH/QNSjUpCtfzus75GGNlN2DCEYhVmzubjZ9Lkez+Vere8B6V441Lh1jUMY4pFWLFQuJ32Ee96cLaPiG2P2bXR877rCjvkpzmDmsi3KW8Adsza1qxhHuP5aoDgAUttaouJnaMlrFSv4DMqwAEbRVFGBGFwlJOeYvHNtDp+ZMxLJYFCVFgCzC7mAl4Xz/dXWdgvKFFdxOs5SZYpg1w83QYbS4GP5cf8hrXTf0oA6x2t+DYKvX72QqaI0tnO9pTCpUoRlvcneblRuxQEjyY9vK0MR3h3cFDVWoaLHEIf+/S1cMdzF7phyuutT+IMWK2K3FEw+x75UbgVsf29FOUNzdWmqcukMJRzT5DN5tskibjlHpnj/UXWJW9TXvdM2LIcOw9Abna4581tSxW+Qcd3wne/r49qHOp3WO8MG4Kb9Q1qpwMtCABcbnwSSxVORriJui2JEuZZaNCCwREYv+rs+pM2Pe6ZZF0IAaQ7YcxHuCb+tRlRry/q5H4tba3RIc6WmhTG3PuM7MCWmjBL7j5GIQ1cHo2vl/NtHS1duQNbxnewAKhu2mWViXCYNB9LLl6xafmuu5zmtChE40KhksZq+k9Z6SFN8svjo5Uau+hOUQKdvdyUie8mpjQqVXyOld4eLLkK1GbheHecqJdZIDambXzLLqFlBzYlgNGcDyL6aNV+XAw== 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:(13230028)(4636009)(136003)(39860400002)(376002)(346002)(396003)(451199021)(36840700001)(46966006)(40470700004)(186003)(16526019)(426003)(336012)(81166007)(356005)(26005)(1076003)(41300700001)(7696005)(2616005)(47076005)(36860700001)(6666004)(83380400001)(478600001)(40460700003)(110136005)(54906003)(4326008)(70206006)(70586007)(82310400005)(82740400003)(40480700001)(316002)(5660300002)(8936002)(8676002)(2906002)(36756003)(86362001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2023 09:13:39.6178 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 92745128-00a2-4cba-8334-08db55edd685 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: CO1NAM11FT027.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6454 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Recent PMFW's have support for querying the STB DRAM size. Add this support to the driver. Co-developed-by: Sanket Goswami Signed-off-by: Sanket Goswami Signed-off-by: Shyam Sundar S K Reviewed-by: Ilpo Järvinen --- drivers/platform/x86/amd/pmc.c | 37 +++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c index f28c295b47dd..e2439fda5c02 100644 --- a/drivers/platform/x86/amd/pmc.c +++ b/drivers/platform/x86/amd/pmc.c @@ -115,6 +115,7 @@ enum s2d_arg { S2D_PHYS_ADDR_LOW, S2D_PHYS_ADDR_HIGH, S2D_NUM_SAMPLES, + S2D_DRAM_SIZE, }; struct amd_pmc_bit_map { @@ -147,6 +148,7 @@ struct amd_pmc_dev { u32 base_addr; u32 cpu_id; u32 active_ips; + u32 dram_size; /* SMU version information */ u8 smu_program; u8 major; @@ -890,11 +892,39 @@ static const struct pci_device_id pmc_pci_ids[] = { { } }; +static int amd_pmc_get_dram_size(struct amd_pmc_dev *dev) +{ + int ret; + + switch (dev->cpu_id) { + case AMD_CPU_ID_YC: + if (!(dev->major > 90 || (dev->major == 90 && dev->minor > 39))) { + ret = -EINVAL; + goto err_dram_size; + } + break; + default: + ret = -EINVAL; + goto err_dram_size; + } + + ret = amd_pmc_send_cmd(dev, S2D_DRAM_SIZE, &dev->dram_size, STB_SPILL_TO_DRAM, true); + if (ret || !dev->dram_size) + goto err_dram_size; + + return 0; + +err_dram_size: + dev_err(dev->dev, "DRAM size command not supported for this platform\n"); + return ret; +} + static int amd_pmc_s2d_init(struct amd_pmc_dev *dev) { u32 phys_addr_low, phys_addr_hi; u64 stb_phys_addr; u32 size = 0; + int ret; /* Spill to DRAM feature uses separate SMU message port */ dev->msg_port = 1; @@ -903,6 +933,11 @@ static int amd_pmc_s2d_init(struct amd_pmc_dev *dev) if (size != S2D_TELEMETRY_BYTES_MAX) return -EIO; + /* Get DRAM size */ + ret = amd_pmc_get_dram_size(dev); + if (ret) + dev->dram_size = S2D_TELEMETRY_DRAMBYTES_MAX; + /* Get STB DRAM address */ amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_LOW, &phys_addr_low, STB_SPILL_TO_DRAM, true); amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_HIGH, &phys_addr_hi, STB_SPILL_TO_DRAM, true); @@ -912,7 +947,7 @@ static int amd_pmc_s2d_init(struct amd_pmc_dev *dev) /* Clear msg_port for other SMU operation */ dev->msg_port = 0; - dev->stb_virt_addr = devm_ioremap(dev->dev, stb_phys_addr, S2D_TELEMETRY_DRAMBYTES_MAX); + dev->stb_virt_addr = devm_ioremap(dev->dev, stb_phys_addr, dev->dram_size); if (!dev->stb_virt_addr) return -ENOMEM; From patchwork Tue May 16 09:13:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shyam Sundar S K X-Patchwork-Id: 13242804 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 49159C77B7F for ; Tue, 16 May 2023 09:16:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231821AbjEPJQM (ORCPT ); Tue, 16 May 2023 05:16:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53430 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231433AbjEPJP6 (ORCPT ); Tue, 16 May 2023 05:15:58 -0400 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20612.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe59::612]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1AD615BBF for ; Tue, 16 May 2023 02:15:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A6YgLoJM2j0gkxMQcHO6feTL/PAsI9ZdvQqJBhsOZqLNhAyD49TGOcv9OWGLC9etiqd+nh1rhVco3EsjH4MFWm5e2kcEyELbjIzg+BdqomvHQ01VzzRmgpkeVKR9qkmMSF4BM/3B3vNTyQ5lduyMJp6HBzrEXt4XTJVahKdv7YPyymT9h2+JUGssMJjeTr9+bGVsVshG8yRtlzNzgTfez3jlOnxtDtAz44L7P9Mu0FcqJufb1DIrbMAjR8jqaWmeLL8VVcVtbEKFmQD0hMoPn7DDwrl7w633GpViXt4KrOwRBXq/XFN/bjqzh7bcRfChPRKUHKI/v9TJlGf5WV911Q== 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=SZ41Rl4T0EYqitEKBY6//O1BZDNgx70uWe3gzVtR1pM=; b=byJVjnCDOCld5o0DSefj97YJI/IbJ6lmtDHf856vz0Fp+rfSEilzBjs5zOxRzwfrvLwb8kiCcdXVdbbkrJCZfPlR5/cqcyNESNaAFQYe0DXtRcqVZJAbb40ZIlgEpzCOorGYmHHBDo2/+KD/TC/MaaFf4J6P59Hfz5zB3bdTvc6UlNmEf6gi0vzJbLtZUB55zh3U8vHrfBjb/TK4Wxu3cIHdR8XyWxFfyg6NvN+PEfZNPml9WgdlvRBZvgEJkkqxpZdwofUHBm2e93F9BTr4C61eVsLFOHk0A5YTILjHQDKR3ZKEaL1iuMAONJ898/EtLDSYfsgYhHJNbwRCq7pntg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.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 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=SZ41Rl4T0EYqitEKBY6//O1BZDNgx70uWe3gzVtR1pM=; b=dKRS3cXisQEP10I4iMnh/4loke3doBpQMLe01qpbY6duCzhmDtL5s+s2PcOpJ9ZavLOQ/BWuMLjx35VLqnGCwI1XsUERb3RBNOsX3VMb6wKoXfCtdqj5voKNtpbnhfo+uaWfZ1MI3sktP9GIVFAM/xqLhEnixdbsxdp4ynCV0Es= Received: from MW4P221CA0021.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::26) by MW3PR12MB4508.namprd12.prod.outlook.com (2603:10b6:303:5b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.33; Tue, 16 May 2023 09:13:41 +0000 Received: from CO1NAM11FT027.eop-nam11.prod.protection.outlook.com (2603:10b6:303:8b:cafe::dc) by MW4P221CA0021.outlook.office365.com (2603:10b6:303:8b::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.33 via Frontend Transport; Tue, 16 May 2023 09:13:41 +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 CO1NAM11FT027.mail.protection.outlook.com (10.13.174.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6411.15 via Frontend Transport; Tue, 16 May 2023 09:13:41 +0000 Received: from jatayu.amd.com (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.2375.34; Tue, 16 May 2023 04:13:39 -0500 From: Shyam Sundar S K To: , CC: , , , Shyam Sundar S K Subject: [PATCH v3 3/4] platform/x86/amd: pmc: Add helper function to check the cpu id Date: Tue, 16 May 2023 14:43:07 +0530 Message-ID: <20230516091308.3905113-4-Shyam-sundar.S-k@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> References: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT027:EE_|MW3PR12MB4508:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b9a3390-8943-4be4-bc6e-08db55edd7c9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oqaW+jzUxN8GHiKrD8CzIlsuGy3k/pJafASFr/T2Jv3DV2zC5Nd+1OHEbmZmkuu/64rHSEFK/5XEcOKq9he0XOoQOvcuLvcui9a+No9TzOBiKh8U1QTzpwVKkw38iE9Ae9wYnfSbwHbLeNkOD8OL/mKUISVMB7iX/Mg24gseX/2ZaPReZ0EHz/SHfN299iCUrUOor3ExcdIh4MTDeAclwmFwdBPYZCCM0yNaQN7DCttEgUq+bWD7eNmvkK8dTg9nGAJpGUlTVJCkC29R5dQkwuVp/Hl8MZNqc4XrmRLVhyP+hxGNlDbBhDJDuWCeC1xKtVqJDvPdniRStXY9N85rDq8A4akNtpRfgTUhlnhdzsF1u1yMBkPIrVKmAZo5ltg2QtmqTbIHWFo5xmvof0mcvjZ884gknRR+ewtbkgWEgXdsAXCDBVAZ5s7qDNDNEo/8ZwpeYcp61WhWZjQ50n8AbS+DevS2JgXq4SIMNbIWg+5b5DWZmFieoJKSKsc4lHkjcAK/Ma/MPS8Mknl76GcACRL9xzSak9gYNbJKZFyAfhhynbGu+mw0ZhOwqM2Ht/9Q8mLssPOsHDFdyGMhx9jXrCope9GKuZxR5Xv22VGZ/ZviccKxYgxpQXVIuceQFSYKOveJLuAjMDOw6vk3+JKudMnSqRvwSz+FyCLydzQv3Xcqj2rGRsMRUjDfbZhtRTei53HXRkPnIHliXCNniteSOYINp1yUOob6vxwxwopl9T1nyMfmdFML0bjkKzbXgqkDth1D03FBy8AHbnPzyHNskQ== 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:(13230028)(4636009)(376002)(39860400002)(396003)(136003)(346002)(451199021)(40470700004)(36840700001)(46966006)(2906002)(478600001)(41300700001)(316002)(54906003)(110136005)(6666004)(7696005)(8676002)(8936002)(4326008)(70586007)(5660300002)(70206006)(1076003)(26005)(40460700003)(16526019)(356005)(82740400003)(186003)(36860700001)(40480700001)(2616005)(336012)(47076005)(83380400001)(36756003)(426003)(82310400005)(86362001)(81166007)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2023 09:13:41.7427 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3b9a3390-8943-4be4-bc6e-08db55edd7c9 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: CO1NAM11FT027.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR12MB4508 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Add a helper routine to check the underlying cpu id, that can be used across the PMC driver to remove the duplicate code. Co-developed-by: Sanket Goswami Signed-off-by: Sanket Goswami Signed-off-by: Shyam Sundar S K --- drivers/platform/x86/amd/pmc.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c index e2439fda5c02..7e5e6afb3410 100644 --- a/drivers/platform/x86/amd/pmc.c +++ b/drivers/platform/x86/amd/pmc.c @@ -564,6 +564,18 @@ static void amd_pmc_dbgfs_unregister(struct amd_pmc_dev *dev) debugfs_remove_recursive(dev->dbgfs_dir); } +static bool amd_pmc_check_sup_cpuid(struct amd_pmc_dev *dev) +{ + switch (dev->cpu_id) { + case AMD_CPU_ID_YC: + case AMD_CPU_ID_CB: + case AMD_CPU_ID_PS: + return true; + default: + return false; + } +} + static void amd_pmc_dbgfs_register(struct amd_pmc_dev *dev) { dev->dbgfs_dir = debugfs_create_dir("amd_pmc", NULL); @@ -575,8 +587,7 @@ static void amd_pmc_dbgfs_register(struct amd_pmc_dev *dev) &amd_pmc_idlemask_fops); /* Enable STB only when the module_param is set */ if (enable_stb) { - if (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id == AMD_CPU_ID_CB || - dev->cpu_id == AMD_CPU_ID_PS) + if (amd_pmc_check_sup_cpuid(dev)) debugfs_create_file("stb_read", 0644, dev->dbgfs_dir, dev, &amd_pmc_stb_debugfs_fops_v2); else @@ -1036,7 +1047,7 @@ static int amd_pmc_probe(struct platform_device *pdev) mutex_init(&dev->lock); - if (enable_stb && (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id == AMD_CPU_ID_CB)) { + if (enable_stb && amd_pmc_check_sup_cpuid(dev)) { err = amd_pmc_s2d_init(dev); if (err) goto err_pci_dev_put; From patchwork Tue May 16 09:13:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shyam Sundar S K X-Patchwork-Id: 13242807 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 267B5C77B75 for ; Tue, 16 May 2023 09:18:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232029AbjEPJSg (ORCPT ); Tue, 16 May 2023 05:18:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57426 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232068AbjEPJSW (ORCPT ); Tue, 16 May 2023 05:18:22 -0400 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2062f.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e88::62f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E12D21720 for ; Tue, 16 May 2023 02:17:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HXGkR8ETGo9GmmBVkBJVlJJyC3KqaTLAXGlpm6BuEIYtyIRgcm8/suqdx8gkf/sftRagZYuohjH444CVck1gWm3I+NLDZZDiqscaXY9EFZVLjH3ZCfZijClbUn68czmhO+pMAW0oLG+uRDqkBx9meG2/cSyDyXHd20DB3p9FcOKPc0YQFDkWzPNJs5CIoEH9Z2PbPOjI47zEgrgzGwPgruCtT4xxXMXeSA8ILojcUy9qHUr/IniCxx93s7cY6CfU0hysPhtqJYaVG4EtM+GubGpXPKbXBsL0UGfOlTYcN3zUW4CvH9w+VcQzCRVlmM/hgMepEUJfY3Z5SmbS+1Rz6g== 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=CeDtv69JQqMWMi5M+lt7ZjJSucaokNPADMaY3+PV8Mg=; b=BMYui24RJAcP1tTAs14sn3Y3pIOTl8CmWQZK8Yg5ho8dTZA1VVA9DVISzi9mo9e58FaIS3phcTScHtl/UN+LuHmcpSObOqsIC0oGh1iJ1ugKdUT0GDt9CA2QIxW26UI69tzbRpluRjc7xfp5xBFr+6g6Qo27w7rxlIDv2xAuIREbcO8WFLjN5kYk15JIedX2AKRsanJB2CqY2sO4TUnXp2n+CpjBmOVTEp+DxD7Yp/CTtvq9yGVAmTs7q7tY+1gvdp9t3BLWv4h4/XEjtWM4WFIm37FHJcOVGaTS+4rF+hT0tbr1f0xGLZf2o+IY2JZIUpweUYws/3L1sRwLJK8xcA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.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 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=CeDtv69JQqMWMi5M+lt7ZjJSucaokNPADMaY3+PV8Mg=; b=HQhZuPurGJuyR+RyDwUH0KVVt2SKyXdJYwFcPzwVS9vxayRa1JxbDmpGrOTHzQKT06w3uWNSlOuBLBpnrJ01toIXYfsfbdLB6IewtiIW7MIGy4zJZ+ETlM/vDpH8wwDPUBXFW9u0dn7JZNvfmUE0LxGjmtx4qfrKwgxOCwLyv9Y= Received: from MW4PR04CA0316.namprd04.prod.outlook.com (2603:10b6:303:82::21) by BN9PR12MB5356.namprd12.prod.outlook.com (2603:10b6:408:105::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.33; Tue, 16 May 2023 09:14:20 +0000 Received: from CO1NAM11FT092.eop-nam11.prod.protection.outlook.com (2603:10b6:303:82:cafe::37) by MW4PR04CA0316.outlook.office365.com (2603:10b6:303:82::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.31 via Frontend Transport; Tue, 16 May 2023 09:14:20 +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 CO1NAM11FT092.mail.protection.outlook.com (10.13.175.225) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6411.16 via Frontend Transport; Tue, 16 May 2023 09:14:20 +0000 Received: from jatayu.amd.com (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.2375.34; Tue, 16 May 2023 04:13:41 -0500 From: Shyam Sundar S K To: , CC: , , , Shyam Sundar S K Subject: [PATCH v3 4/4] platform/x86/amd: pmc: Update metrics table info for Pink Sardine Date: Tue, 16 May 2023 14:43:08 +0530 Message-ID: <20230516091308.3905113-5-Shyam-sundar.S-k@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> References: <20230516091308.3905113-1-Shyam-sundar.S-k@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT092:EE_|BN9PR12MB5356:EE_ X-MS-Office365-Filtering-Correlation-Id: 07fe28df-ef67-42ac-eea3-08db55edeed8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sAav+sgrRkHFdBUUQPw8CiuRq28B0YphxeIgwiuUtbq/iex3HGHU2bjLIXDeoTzMUsO0iSZrlUNXLBlMdKuucfJP0CXrACIAaoT4mWt0hvFaY26lUIo1TXhXVtQwn6c1DkO9XlBGUHWv49iLfx1a9f12/Y80kbpKCafWOYN0XdAAUcrcjD3CRzHYNdbS6S+gNi8zLk6u8BTQ4Jl74GycqCmGK6QglSZsamHRzKHPmDYnfswzir80Xc9fyLDdCUToWyKxMRPclCapQlnmEKAWsC+zNgFi8xY69bHP5wqzxACPxPzj5QyiEOzGpeGSv+5UXrL16SkfB9b2nUI1OBQx2ti8jGg6Z76zuTT0oXvRnEGF8AB72iEN4Qh25U2sfoQvIIid0SBXb8WOOq36reRmrvIh6ZXb1xek6ZcPSPg2HiNGUtvxcaLAxsBA7uO9cWkVWn/PATNW90ZCQqxnuAWck5gj1nq2plOL7flpiYBesy0HXqUK5LxN8WxfvmThKaWDmc4hB9uf7+LC6RM/r//+QnRPDvGpQBKwxNbqpMj7FdHkXuKBTQ6jtfliwdzW9Pjno86HtMobNPZbT20TN9HNQ8G5hyugtxKdZPqIfe+7vwSir/JTMcPL8Xk/QqYvVGXD7EmBN7TDIQyRVyO94vJnndzs541RtBNDbumKHpS1wM4aH37lVE9/s7CZ82y/FsyrKTNA4pCPEK9r6g42KlckPrc2Tqh5c3P3NHnH0eVB2e0GZa5fAAkbhhsxZfqh0j26o0sAp1JzJ9GBZ1c2GseDdg== 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:(13230028)(4636009)(346002)(396003)(376002)(136003)(39860400002)(451199021)(36840700001)(40470700004)(46966006)(4326008)(36756003)(15650500001)(2906002)(426003)(336012)(8676002)(5660300002)(86362001)(8936002)(40460700003)(41300700001)(40480700001)(316002)(70206006)(70586007)(54906003)(478600001)(6666004)(7696005)(110136005)(186003)(16526019)(82740400003)(356005)(26005)(1076003)(36860700001)(47076005)(82310400005)(83380400001)(2616005)(81166007)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2023 09:14:20.4299 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 07fe28df-ef67-42ac-eea3-08db55edeed8 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: CO1NAM11FT092.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5356 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Starting from Pink Sardine, number of IP blocks were added to the SoC and the PMFW has the ability to give debug stats on each the IP blocks after a S0ix cycle within part of the SMU metrics table. Add this new capability to the driver. Signed-off-by: Shyam Sundar S K --- drivers/platform/x86/amd/pmc.c | 53 ++++++++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 12 deletions(-) diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c index 7e5e6afb3410..0e67325a5aec 100644 --- a/drivers/platform/x86/amd/pmc.c +++ b/drivers/platform/x86/amd/pmc.c @@ -45,7 +45,6 @@ #define AMD_PMC_STB_DUMMY_PC 0xC6000007 /* STB S2D(Spill to DRAM) has different message port offset */ -#define STB_SPILL_TO_DRAM 0xBE #define AMD_S2D_REGISTER_MESSAGE 0xA20 #define AMD_S2D_REGISTER_RESPONSE 0xA80 #define AMD_S2D_REGISTER_ARGUMENT 0xA88 @@ -99,7 +98,6 @@ #define PMC_MSG_DELAY_MIN_US 50 #define RESPONSE_REGISTER_LOOP_MAX 20000 -#define SOC_SUBSYSTEM_IP_MAX 12 #define DELAY_MIN_US 2000 #define DELAY_MAX_US 3000 #define FIFO_SIZE 4096 @@ -133,9 +131,18 @@ static const struct amd_pmc_bit_map soc15_ip_blk[] = { {"ISP", BIT(6)}, {"NBIO", BIT(7)}, {"DF", BIT(8)}, - {"USB0", BIT(9)}, - {"USB1", BIT(10)}, + {"USB3_0", BIT(9)}, + {"USB3_1", BIT(10)}, {"LAPIC", BIT(11)}, + {"USB3_2", BIT(12)}, + {"USB3_3", BIT(13)}, + {"USB3_4", BIT(14)}, + {"USB4_0", BIT(15)}, + {"USB4_1", BIT(16)}, + {"MPM", BIT(17)}, + {"JPEG", BIT(18)}, + {"IPU", BIT(19)}, + {"UMSCH", BIT(20)}, {} }; @@ -149,6 +156,8 @@ struct amd_pmc_dev { u32 cpu_id; u32 active_ips; u32 dram_size; + u32 num_ips; + u32 s2d_msg_id; /* SMU version information */ u8 smu_program; u8 major; @@ -196,8 +205,8 @@ struct smu_metrics { u64 timein_s0i3_totaltime; u64 timein_swdrips_lastcapture; u64 timein_swdrips_totaltime; - u64 timecondition_notmet_lastcapture[SOC_SUBSYSTEM_IP_MAX]; - u64 timecondition_notmet_totaltime[SOC_SUBSYSTEM_IP_MAX]; + u64 timecondition_notmet_lastcapture[32]; + u64 timecondition_notmet_totaltime[32]; } __packed; static int amd_pmc_stb_debugfs_open(struct inode *inode, struct file *filp) @@ -263,7 +272,7 @@ static int amd_pmc_stb_debugfs_open_v2(struct inode *inode, struct file *filp) dev->msg_port = 1; /* Get the num_samples to calculate the last push location */ - ret = amd_pmc_send_cmd(dev, S2D_NUM_SAMPLES, &num_samples, STB_SPILL_TO_DRAM, true); + ret = amd_pmc_send_cmd(dev, S2D_NUM_SAMPLES, &num_samples, dev->s2d_msg_id, true); /* Clear msg_port for other SMU operation */ dev->msg_port = 0; if (ret) { @@ -310,6 +319,23 @@ static const struct file_operations amd_pmc_stb_debugfs_fops_v2 = { .release = amd_pmc_stb_debugfs_release_v2, }; +static void amd_pmc_get_ip_info(struct amd_pmc_dev *dev) +{ + switch (dev->cpu_id) { + case AMD_CPU_ID_PCO: + case AMD_CPU_ID_RN: + case AMD_CPU_ID_YC: + case AMD_CPU_ID_CB: + dev->num_ips = 12; + dev->s2d_msg_id = 0xBE; + break; + case AMD_CPU_ID_PS: + dev->num_ips = 21; + dev->s2d_msg_id = 0x85; + break; + } +} + static int amd_pmc_setup_smu_logging(struct amd_pmc_dev *dev) { if (dev->cpu_id == AMD_CPU_ID_PCO) { @@ -471,7 +497,7 @@ static int smu_fw_info_show(struct seq_file *s, void *unused) table.timeto_resume_to_os_lastcapture); seq_puts(s, "\n=== Active time (in us) ===\n"); - for (idx = 0 ; idx < SOC_SUBSYSTEM_IP_MAX ; idx++) { + for (idx = 0 ; idx < dev->num_ips ; idx++) { if (soc15_ip_blk[idx].bit_mask & dev->active_ips) seq_printf(s, "%-8s : %lld\n", soc15_ip_blk[idx].name, table.timecondition_notmet_lastcapture[idx]); @@ -919,7 +945,7 @@ static int amd_pmc_get_dram_size(struct amd_pmc_dev *dev) goto err_dram_size; } - ret = amd_pmc_send_cmd(dev, S2D_DRAM_SIZE, &dev->dram_size, STB_SPILL_TO_DRAM, true); + ret = amd_pmc_send_cmd(dev, S2D_DRAM_SIZE, &dev->dram_size, dev->s2d_msg_id, true); if (ret || !dev->dram_size) goto err_dram_size; @@ -940,7 +966,10 @@ static int amd_pmc_s2d_init(struct amd_pmc_dev *dev) /* Spill to DRAM feature uses separate SMU message port */ dev->msg_port = 1; - amd_pmc_send_cmd(dev, S2D_TELEMETRY_SIZE, &size, STB_SPILL_TO_DRAM, true); + /* Get num of IP blocks within the SoC */ + amd_pmc_get_ip_info(dev); + + amd_pmc_send_cmd(dev, S2D_TELEMETRY_SIZE, &size, dev->s2d_msg_id, true); if (size != S2D_TELEMETRY_BYTES_MAX) return -EIO; @@ -950,8 +979,8 @@ static int amd_pmc_s2d_init(struct amd_pmc_dev *dev) dev->dram_size = S2D_TELEMETRY_DRAMBYTES_MAX; /* Get STB DRAM address */ - amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_LOW, &phys_addr_low, STB_SPILL_TO_DRAM, true); - amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_HIGH, &phys_addr_hi, STB_SPILL_TO_DRAM, true); + amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_LOW, &phys_addr_low, dev->s2d_msg_id, true); + amd_pmc_send_cmd(dev, S2D_PHYS_ADDR_HIGH, &phys_addr_hi, dev->s2d_msg_id, true); stb_phys_addr = ((u64)phys_addr_hi << 32 | phys_addr_low);