From patchwork Fri Oct 30 06:01:47 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390801 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=OGcqy6hI; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsCp30bZz9sTR; Fri, 30 Oct 2020 17:02:29 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNUV-0007Jq-8h; Fri, 30 Oct 2020 06:02:23 +0000 Received: from mail-pf1-f195.google.com ([209.85.210.195]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUT-0007JX-RC for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:21 +0000 Received: by mail-pf1-f195.google.com with SMTP id w65so4357198pfd.3 for ; Thu, 29 Oct 2020 23:02:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=NBW/fQCAMbRI6Fe+AlsMEsyB/g9joiQsFlUpKUheysg=; b=OGcqy6hI+fVYxJOY7pjMdvvAjkRGvuoCIusQQUG0p/OdRFwrBtPJhhBLCbKvrOxgU6 UdXcm9Ww4jdRdAIeQr8f3sUFh2J3EZcO4EEqa8hDRJZqMqWawpuckpfgq/vFLtTJgDAR kdHvtSrcoY3yUwDzYVtzXE7anmwgXAmXVq7NumLvabQrni8uZHsROpf/OLH1TKWgu434 J203kqBg+RzcSJxy36vNmJNaTFHefmH85HTFzIf1hk7Aa54nJ2SMl+epfmDvzuR3AV+j 49tluVNQczywrZhe4iXrGvga5pVEDtTZ1QktEUGxDCDOX/flCGASqoDnZ1n3Y9VeJiY9 vbag== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=NBW/fQCAMbRI6Fe+AlsMEsyB/g9joiQsFlUpKUheysg=; b=C4t0PKPv2PO+zGKhz2xb9U/EoLFHOX+lv0h2A13fpQreheXYGYsiBbcoLvn2QM7qSX HB9Z8LKJff+e5FTWiObXs6My+V1laF15MoK4X9gYRlQKysoPN32Cn1751J1lfGOB3Hsp j8SJTC+AjIng0/gF+uUi8HIaASGicjlZJDAOnW1obYch7W8XODAXzo3FQ6LApXw/csOs 3IiHycKGUM+aOQ+ovqjCmh947+23LMHsj/McPQ9/GhHq79kslnR1vRbRZpDzZV953rR4 KGlnqJxPeeHUXjbiRZRnrzUoSs4VEUvH9vG11bQqMkNETbiVIAuX/c7tErjeZstKPu/9 jDCg== X-Gm-Message-State: AOAM532Ud5ynlkPKLo6DvXo/RH9ZKhKbVueNB8HAYU+YY93KjBFaGW3L ErEo3o2ujvQ4zOPkA1XQZEFZO4aGWG6XgQ== X-Google-Smtp-Source: ABdhPJzmDgen1TedtyvZSUv8tONTlQEn3CP6BHkaXQrP2J3EeFrtPe69DbzKxk1J+i4Om8NMiexBfw== X-Received: by 2002:a63:d40f:: with SMTP id a15mr806018pgh.143.1604037739417; Thu, 29 Oct 2020 23:02:19 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id n16sm4729656pfo.150.2020.10.29.23.02.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:18 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 1/5][SRU][G] platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name Date: Fri, 30 Oct 2020 14:01:47 +0800 Message-Id: <20201030060214.780883-2-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.195; envelope-from=acelan@gmail.com; helo=mail-pf1-f195.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Sathyanarayana Nujella BugLink: https://bugs.launchpad.net/bugs/1899883 PMC debug tools use lpm0's 23rd bit to reflect Main PLL, not just Audio PLL. So, update tgl_lpm0 debug reg bit map name. Signed-off-by: Sathyanarayana Nujella Signed-off-by: Arava Jairaj Acked-by: David E. Box Signed-off-by: Andy Shevchenko (cherry picked from commit cd85b55cfceff62a95a81eea99859df6336b7d1f) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 7c8bdab078cf..5a0a25e9ccc9 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -415,7 +415,7 @@ static const struct pmc_bit_map tgl_lpm0_map[] = { {"PCIe_Gen3PLL_OFF_STS", BIT(20)}, {"OPIOPLL_OFF_STS", BIT(21)}, {"OCPLL_OFF_STS", BIT(22)}, - {"AudioPLL_OFF_STS", BIT(23)}, + {"MainPLL_OFF_STS", BIT(23)}, {"MIPIPLL_OFF_STS", BIT(24)}, {"Fast_XTAL_Osc_OFF_STS", BIT(25)}, {"AC_Ring_Osc_OFF_STS", BIT(26)}, From patchwork Fri Oct 30 06:01:48 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390799 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=PTLvoL7A; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsCp2J38z9sTD; Fri, 30 Oct 2020 17:02:29 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNUX-0007KM-DR; Fri, 30 Oct 2020 06:02:25 +0000 Received: from mail-pf1-f194.google.com ([209.85.210.194]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUV-0007Jn-D4 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:23 +0000 Received: by mail-pf1-f194.google.com with SMTP id 10so4347159pfp.5 for ; Thu, 29 Oct 2020 23:02:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=39TOTdTUWJ/LgGL/JNd/sqwP/NyoCorqNjG53R959BI=; b=PTLvoL7A5mlVUEADaXvEzPgKvj9qoskt1KZonfsXVigWWg75NXqT3M+hh4/KInwrwe Qt5Py9sMscXqdVEtB1g9McR/mcu2xaSq71aRLe0LB44xneFBMAip155BWXiiZfWXIJEz HQnMbFVHq+fOo4E+0qmJFT/ly3MYuQeRdY7P49EJwPOismreXw18ghGT7EKHfpNYqEk2 uDmKPceak8Iughq+ARi519yeWGNptkoFo3Cktq3lUi+QEOjDz9H+Gq5KE6efh2KOZL6y aEhkrO2hH4Jsve8pwiNFRYGaHT3GT+bHiHcASK0TUX3g267+rNB20h2eO3NJb6ir1Zg1 8D/A== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=39TOTdTUWJ/LgGL/JNd/sqwP/NyoCorqNjG53R959BI=; b=p5+9X397mJ4zkJfqXWxeMAywLBX9UsItlYlccma3hXvUW3kyJ5NXpsy5GYX1gb105A RuCQTvn4mg2iX6VFUzZlbmH5yfYnFkH9tFwGjV3e5JMjZ7SMIkEDpQk4tpELeCcIPjr0 e5RhyStUpCs/qIxp++gFKDQ0LTxq8gsLUeGNodywT1MVeWX1kGXfb85Qy8KWXtP8ZEaE kKbPneAG15UI+THiaZ92bop39pMgUK/uYBN8crtvH7GYn1N2FlcddaebvN3ykMONmq4x jfrcMuxu089ctO0UpFBa4UBro5L/J34tUgPqkcGyOY2FMNCu08mb0/68nW2PqriyVJHz sZbw== X-Gm-Message-State: AOAM5332h8UdnAzOLOlMRhR6SMWIwG7M7oCz5n7KEA1wx8BU2owEdMOf RO53cbjHGrBuDIzKmaPg8Chr28tK440t9Q== X-Google-Smtp-Source: ABdhPJxaE3W/nklaibDIKr4DUqi0BkG/fbH1CqRggTTg+EiXc7ySIJAtOcu8tUDZcdWsVj+WbTPSRQ== X-Received: by 2002:a63:4d18:: with SMTP id a24mr809808pgb.414.1604037741621; Thu, 29 Oct 2020 23:02:21 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id v186sm4863187pfv.135.2020.10.29.23.02.20 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:21 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 2/5][SRU][G] platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() Date: Fri, 30 Oct 2020 14:01:48 +0800 Message-Id: <20201030060214.780883-3-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.194; envelope-from=acelan@gmail.com; helo=mail-pf1-f194.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gaurav Singh BugLink: https://bugs.launchpad.net/bugs/1899883 Check bounds before accessing map[] array. Signed-off-by: Gaurav Singh Signed-off-by: Andy Shevchenko (cherry picked from commit aff374dfe7330be10a20c97bd0b3196c153e9f9e) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 5a0a25e9ccc9..338ea5222555 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -795,7 +795,7 @@ static int pmc_core_mphy_pg_show(struct seq_file *s, void *unused) msleep(10); val_high = pmc_core_reg_read(pmcdev, SPT_PMC_MFPMC_OFFSET); - for (index = 0; map[index].name && index < 8; index++) { + for (index = 0; index < 8 && map[index].name; index++) { seq_printf(s, "%-32s\tState: %s\n", map[index].name, map[index].bit_mask & val_low ? "Not power gated" : From patchwork Fri Oct 30 06:01:49 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390802 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=MUXx9d35; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsCr0Y8Jz9sV0; Fri, 30 Oct 2020 17:02:31 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNUa-0007Li-NU; Fri, 30 Oct 2020 06:02:28 +0000 Received: from mail-pl1-f195.google.com ([209.85.214.195]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUY-0007Kb-Sg for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:27 +0000 Received: by mail-pl1-f195.google.com with SMTP id u7so379565pls.10 for ; Thu, 29 Oct 2020 23:02:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SvD6JxlMAKP7r/zqlbZx18E/nIvSlTG0Keasyno72dU=; b=MUXx9d35sUUNaqm+vVmZFGHgK3a2pN0Nb1blE8Gcvvvi3EuIAQqgC7MmFNQ3dWcTVq E3NvnCpjcngNOEsWmRrDftPUrqWCnLe4PSwyu490BwrRdif37uGEvwH9xWxvoaBRQZ6M AwV7SeaTB+S0DDN4G4fc1Pg6J7vmHuRuXv82M2WH4MuzfgCGt3R8+RZavzqW09+BDbtR 0v8lT4LggE6Q8FYFpG+yMUFyRi0Razyz2vIyd8PbIOW62KoFTaeXmuDpAKx6/3Arf9i0 /Iu37NeqknI6K14tZHYnYcb0n425l0B1tR8mODGTe54fjrBfcFsi9shb/CwckB2pD3Yf Q+6Q== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=SvD6JxlMAKP7r/zqlbZx18E/nIvSlTG0Keasyno72dU=; b=S1KLr3sEGP4Lfu4cBzFYn/1t+xqwd0e3096l/PzoiEfXgj+Xqx6lrfuwAdzPZHErCW gV40XrDPvJAcEISXPUCJj/J1ukp+3MLCiaTrlOhzLfmUHyQrYpAX9QNLwCLoTo3sXK1Y C7trM6bvlpkb/KfyuYIy+PmZs6TxYH7KDuwj9snMarDeAPjRqe/uVGD5vHSBbK6tNwle Qz+4egX6EfC47rMrmTTnySe+LBprZWhzjdarWlufJCFYMsH43YB1GZhVUVxXVV+dznn8 /XjCpZf/gGtrsz5jo25rr0+wooV0N+wpj+VPp6QO79PAGt+/qFbfDVaU+uQlNFHWTbBA xCvA== X-Gm-Message-State: AOAM530GsCoRCCXTGY3rhQQw4UxtgL84nESzjkk1oZbQTyAtWYLpEFYE +XshasM/zQRmx4msFGCFvVkgOYzYTsEm+w== X-Google-Smtp-Source: ABdhPJw4VORVNQnaHsSrQ/Kpwi4ITOGRCVe/fZ74mqc3oVApwkDcdJp+S7s4tTAKxWZjzGh7BsZjhA== X-Received: by 2002:a17:902:9a84:b029:d2:9390:5e6 with SMTP id w4-20020a1709029a84b02900d2939005e6mr7616187plp.37.1604037744691; Thu, 29 Oct 2020 23:02:24 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id s38sm4377294pgm.62.2020.10.29.23.02.23 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:23 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 3/5][SRU][G] platform/x86: pmc_core: Use descriptive names for LPM registers Date: Fri, 30 Oct 2020 14:01:49 +0800 Message-Id: <20201030060214.780883-4-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.214.195; envelope-from=acelan@gmail.com; helo=mail-pl1-f195.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: "David E. Box" BugLink: https://bugs.launchpad.net/bugs/1899883 TigerLake Lower Power Mode (LPM) registers are grouped by functionality but were given simple enumerated names in the code (lpm0, lpm1, ...). Instead, give the register blocks names that describe their usage. Suggested-by: Andy Shevchenko Signed-off-by: David E. Box Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20201006224702.12697-2-david.e.box@linux.intel.com Signed-off-by: Hans de Goede (cherry picked from commit e973f1d372dca5ac1d107ec6134f72e566fdf968) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 338ea5222555..ed9fdf7c8928 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -409,7 +409,7 @@ static const struct pmc_reg_map icl_reg_map = { .ltr_ignore_max = ICL_NUM_IP_IGN_ALLOWED, }; -static const struct pmc_bit_map tgl_lpm0_map[] = { +static const struct pmc_bit_map tgl_clocksource_status_map[] = { {"USB2PLL_OFF_STS", BIT(18)}, {"PCIe/USB3.1_Gen2PLL_OFF_STS", BIT(19)}, {"PCIe_Gen3PLL_OFF_STS", BIT(20)}, @@ -425,7 +425,7 @@ static const struct pmc_bit_map tgl_lpm0_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm1_map[] = { +static const struct pmc_bit_map tgl_power_gating_status_map[] = { {"SPI_PG_STS", BIT(2)}, {"xHCI_PG_STS", BIT(3)}, {"PCIe_Ctrller_A_PG_STS", BIT(4)}, @@ -453,7 +453,7 @@ static const struct pmc_bit_map tgl_lpm1_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm2_map[] = { +static const struct pmc_bit_map tgl_d3_status_map[] = { {"ADSP_D3_STS", BIT(0)}, {"SATA_D3_STS", BIT(1)}, {"xHCI0_D3_STS", BIT(2)}, @@ -468,7 +468,7 @@ static const struct pmc_bit_map tgl_lpm2_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm3_map[] = { +static const struct pmc_bit_map tgl_vnn_req_status_map[] = { {"GPIO_COM0_VNN_REQ_STS", BIT(1)}, {"GPIO_COM1_VNN_REQ_STS", BIT(2)}, {"GPIO_COM2_VNN_REQ_STS", BIT(3)}, @@ -493,7 +493,7 @@ static const struct pmc_bit_map tgl_lpm3_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm4_map[] = { +static const struct pmc_bit_map tgl_vnn_misc_status_map[] = { {"CPU_C10_REQ_STS_0", BIT(0)}, {"PCIe_LPM_En_REQ_STS_3", BIT(3)}, {"ITH_REQ_STS_5", BIT(5)}, @@ -509,7 +509,7 @@ static const struct pmc_bit_map tgl_lpm4_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm5_map[] = { +static const struct pmc_bit_map tgl_signal_status_map[] = { {"LSX_Wake0_En_STS", BIT(0)}, {"LSX_Wake0_Pol_STS", BIT(1)}, {"LSX_Wake1_En_STS", BIT(2)}, @@ -546,12 +546,12 @@ static const struct pmc_bit_map tgl_lpm5_map[] = { }; static const struct pmc_bit_map *tgl_lpm_maps[] = { - tgl_lpm0_map, - tgl_lpm1_map, - tgl_lpm2_map, - tgl_lpm3_map, - tgl_lpm4_map, - tgl_lpm5_map, + tgl_clocksource_status_map, + tgl_power_gating_status_map, + tgl_d3_status_map, + tgl_vnn_req_status_map, + tgl_vnn_misc_status_map, + tgl_signal_status_map, NULL }; From patchwork Fri Oct 30 06:01:50 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390803 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=PGLjxfAP; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsCs70rZz9sTf; Fri, 30 Oct 2020 17:02:33 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNUc-0007Mq-UE; Fri, 30 Oct 2020 06:02:30 +0000 Received: from mail-pl1-f196.google.com ([209.85.214.196]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUb-0007LX-QH for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:29 +0000 Received: by mail-pl1-f196.google.com with SMTP id u7so379632pls.10 for ; Thu, 29 Oct 2020 23:02:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=O45UHmU0Thm+KMevYQDfunDcvRLhpdcggEouR84Fcf4=; b=PGLjxfAPNQ37/2cx++1UgpvVM31LG4QYFqFebcMal2jiY0MOZuJ9J/nff5WnkWTZA+ z9j69/BKmRrmtVp9iyFe2O38iRDg2m7lhlvXTDSoIGJNvCb1GDfW1z9gwYY3bnnWLN61 uPxoE3u/4pZ5ILd2U1vpeUMjU98nnwFVKqGCvPTeNikaCYZI7dlZcUOjIcZkJwgZM+Wn 1P9OsPwwqEWrwgGDUh1S8wvzo9GbTmcxK+omn0aD++io7/jxQzUFN6AowxDzF9C/Yco2 DJwYawWSq39czVFi0ufWt0/aRLMD52qfHSZFBvDy0HT9NgRY6eN28dTPtFcaWVpBMQdM An2g== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=O45UHmU0Thm+KMevYQDfunDcvRLhpdcggEouR84Fcf4=; b=FupHEetn3lD79sogcGHxHfcoGLEnA1P9dKnNM523yk7Osl0+A4R+HGGnqXJsM3eTTe uy9i7BCO0LuSy47nNA5ntstSEVfsQh5DFCCFpiW5TG6YCy/DxP6twjaOZ7XYD99B/4hM X+RzRZMKKei/XCnLnSN4Fgvw3u5nXnPRep1+SsL+4TXZdaImCbP+OPpoJU8WfbYxikTn W2iHMw4fVhHhLEKo3/Xfc9+AvZWfsDzsgWkPO7iB9ir+FECOKmUPj8GVIuKBDi1IVwsQ QHvme4gmblz2eCwkVQO2Z6htUQ87dwP/lzJ02VESdTTd3edRH5bhTFuRGcp9pXMK3xQO d84g== X-Gm-Message-State: AOAM5313yOaXE5Qmngl2fQOQh8WTSKrxUfHXT5zeqvT49HIHNo6/SeFI pYKKvcsvWeKmHd28s6Rm4FiNaE3AhYZ++w== X-Google-Smtp-Source: ABdhPJx6XnhSTibSesgG9stF8hKNbMjAvsBOEiDGCe1UCcxsn0Tk4DmM5mI4ezPSowuxMwMG8PEvfQ== X-Received: by 2002:a17:902:bd4c:b029:d6:8c38:7221 with SMTP id b12-20020a170902bd4cb02900d68c387221mr5920538plx.82.1604037747532; Thu, 29 Oct 2020 23:02:27 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id m129sm4940232pfd.177.2020.10.29.23.02.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:26 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 4/5][SRU][G] platform/x86: intel_pmc_core: Fix TigerLake power gating status map Date: Fri, 30 Oct 2020 14:01:50 +0800 Message-Id: <20201030060214.780883-5-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.214.196; envelope-from=acelan@gmail.com; helo=mail-pl1-f196.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 TigerLake's LPM power gating status register has errors in the bit-to-name mapping as well as with the marked reserved bits according to the actual implementation. Hence, update the right bit-to-name mapping and the reserved bits in accordance with actual implementation. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: David E. Box Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20201006224702.12697-3-david.e.box@linux.intel.com Signed-off-by: Hans de Goede (cherry picked from commit 652036bd5be0ac94fd1db851d72ece8ee133c74d) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 48 +++++++++++++-------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index ed9fdf7c8928..cf4006e08c69 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -426,30 +426,30 @@ static const struct pmc_bit_map tgl_clocksource_status_map[] = { }; static const struct pmc_bit_map tgl_power_gating_status_map[] = { - {"SPI_PG_STS", BIT(2)}, - {"xHCI_PG_STS", BIT(3)}, - {"PCIe_Ctrller_A_PG_STS", BIT(4)}, - {"PCIe_Ctrller_B_PG_STS", BIT(5)}, - {"PCIe_Ctrller_C_PG_STS", BIT(6)}, - {"GBE_PG_STS", BIT(7)}, - {"SATA_PG_STS", BIT(8)}, - {"HDA0_PG_STS", BIT(9)}, - {"HDA1_PG_STS", BIT(10)}, - {"HDA2_PG_STS", BIT(11)}, - {"HDA3_PG_STS", BIT(12)}, - {"PCIe_Ctrller_D_PG_STS", BIT(13)}, - {"ISIO_PG_STS", BIT(14)}, - {"SMB_PG_STS", BIT(16)}, - {"ISH_PG_STS", BIT(17)}, - {"ITH_PG_STS", BIT(19)}, - {"SDX_PG_STS", BIT(20)}, - {"xDCI_PG_STS", BIT(25)}, - {"DCI_PG_STS", BIT(26)}, - {"CSME0_PG_STS", BIT(27)}, - {"CSME_KVM_PG_STS", BIT(28)}, - {"CSME1_PG_STS", BIT(29)}, - {"CSME_CLINK_PG_STS", BIT(30)}, - {"CSME2_PG_STS", BIT(31)}, + {"CSME_PG_STS", BIT(0)}, + {"SATA_PG_STS", BIT(1)}, + {"xHCI_PG_STS", BIT(2)}, + {"UFSX2_PG_STS", BIT(3)}, + {"OTG_PG_STS", BIT(5)}, + {"SPA_PG_STS", BIT(6)}, + {"SPB_PG_STS", BIT(7)}, + {"SPC_PG_STS", BIT(8)}, + {"SPD_PG_STS", BIT(9)}, + {"SPE_PG_STS", BIT(10)}, + {"SPF_PG_STS", BIT(11)}, + {"LSX_PG_STS", BIT(13)}, + {"P2SB_PG_STS", BIT(14)}, + {"PSF_PG_STS", BIT(15)}, + {"SBR_PG_STS", BIT(16)}, + {"OPIDMI_PG_STS", BIT(17)}, + {"THC0_PG_STS", BIT(18)}, + {"THC1_PG_STS", BIT(19)}, + {"GBETSN_PG_STS", BIT(20)}, + {"GBE_PG_STS", BIT(21)}, + {"LPSS_PG_STS", BIT(22)}, + {"MMP_UFSX2_PG_STS", BIT(23)}, + {"MMP_UFSX2B_PG_STS", BIT(24)}, + {"FIA_PG_STS", BIT(25)}, {} }; From patchwork Fri Oct 30 06:01:51 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390804 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=txY9aku5; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsCy5hZ8z9sSn; Fri, 30 Oct 2020 17:02:38 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNUg-0007P6-2S; Fri, 30 Oct 2020 06:02:34 +0000 Received: from mail-pg1-f196.google.com ([209.85.215.196]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUe-0007Mp-39 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:32 +0000 Received: by mail-pg1-f196.google.com with SMTP id g12so4304507pgm.8 for ; Thu, 29 Oct 2020 23:02:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ih7+Eeifq5K/N+GH/i9RRWnXMAp8yR9UjAQ3r73Rr24=; b=txY9aku5TIRPqvNyaCNvUnohhdfs3m8fthnzs7RWKpiPRTVokLJl5hrxVJv0yHTZsJ qkJDYfKU0ARmvbbaTqSsOjRrO01sLnrzyOWDwx9onpBXMZq6Xcb8Iu3HhYAojsxvYHcJ CAa/Q0bNuestSyzXEDOV4R+psuzb3EUPRJHJofOOJYX7DCvfA5C3/k/D33IK4r78ZNgG SZW6sLEeQvxHCh1iBeSBJFeSllp9cRBNyLVqmp9Q6a4Aa0/iEjisAn+mY2NTk7KBUdD3 XtS78po5rcIKFjFgkpgmL1lriEJjiHec+/bQOvQ5cSdfw/NeWmDMQkW2qKv3RP834hez TOpA== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ih7+Eeifq5K/N+GH/i9RRWnXMAp8yR9UjAQ3r73Rr24=; b=PQBMS/EvkcvpGGOoaPArqI1KimTiqTKId6CXeLx62N+sdWeCUUUz4PEhvmhj9vGsEw VbWVTav6411RMb30WK2j6HfPAd6ZI2iPlQPYYi32AIIdscSdKP1sdn/XBcy1SMfm/PyK DB8R/YbO9XPo47BP9xKsZqc+QjD40qcvC+Sq1m7oqDpeB9/hMLzyyAPpA/mA2iPXatlH 3Rbxxi4afY2Ba/PKmGM6H4LUtzzDynNxMatqLSE/023W0JWxw8s6hojMXw/m2krmBR9D UP7/1vsnzBBwWIAkuTT4cfpuOp2iNJ9V9m4cImiv/8GZs1JVhm98tFXD8+lSkNX7dsQZ PHAw== X-Gm-Message-State: AOAM533xIZnioOcUSycyObwAbwQR9PLwQDsrzMAILNytLu/pHbR8YdAU RAvDPnBwY3Vva0C10QSebVI4zkT3RPVlag== X-Google-Smtp-Source: ABdhPJwGh4Hi1tqjuRvcKp29LQl5ocNn//cGS/F7fiOyiA3Ecuu+oytyaWqAM1zFLbWnvjYEacnFtg== X-Received: by 2002:a63:7347:: with SMTP id d7mr863254pgn.63.1604037749943; Thu, 29 Oct 2020 23:02:29 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id x123sm4818485pfb.212.2020.10.29.23.02.29 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:29 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 5/5][SRU][G] platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value Date: Fri, 30 Oct 2020 14:01:51 +0800 Message-Id: <20201030060214.780883-6-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.196; envelope-from=acelan@gmail.com; helo=mail-pg1-f196.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 slp_s0 counter value displayed via debugfs interface is calculated by multiplying the granularity for crystal oscillator tick as 100us with the value read from using slp_s0 offset. But the granularity of the tick varies from platform to platform and it needs to be fixed. Hence, specify granularity of the tick for each platform, so that the value of the slp_s0 counter is accurate. Signed-off-by: Gayatri Kammela Signed-off-by: David E. Box Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20201006224702.12697-4-david.e.box@linux.intel.com Signed-off-by: Hans de Goede (cherry picked from commit 025f26de7fa0fc40c8baf6c19fb273500f3321f0) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 10 +++++++--- drivers/platform/x86/intel_pmc_core.h | 5 ++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index cf4006e08c69..122eb53eb595 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -154,6 +154,7 @@ static const struct pmc_reg_map spt_reg_map = { .ltr_show_sts = spt_ltr_show_map, .msr_sts = msr_map, .slp_s0_offset = SPT_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = SPT_PMC_SLP_S0_RES_COUNTER_STEP, .ltr_ignore_offset = SPT_PMC_LTR_IGNORE_OFFSET, .regmap_length = SPT_PMC_MMIO_REG_LEN, .ppfear0_offset = SPT_PMC_XRAM_PPFEAR0A, @@ -380,6 +381,7 @@ static const struct pmc_bit_map cnp_ltr_show_map[] = { static const struct pmc_reg_map cnp_reg_map = { .pfear_sts = ext_cnp_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = SPT_PMC_SLP_S0_RES_COUNTER_STEP, .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, @@ -396,6 +398,7 @@ static const struct pmc_reg_map cnp_reg_map = { static const struct pmc_reg_map icl_reg_map = { .pfear_sts = ext_icl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = ICL_PMC_SLP_S0_RES_COUNTER_STEP, .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, @@ -558,6 +561,7 @@ static const struct pmc_bit_map *tgl_lpm_maps[] = { static const struct pmc_reg_map tgl_reg_map = { .pfear_sts = ext_tgl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = TGL_PMC_SLP_S0_RES_COUNTER_STEP, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, .ltr_ignore_offset = CNP_PMC_LTR_IGNORE_OFFSET, @@ -586,9 +590,9 @@ static inline void pmc_core_reg_write(struct pmc_dev *pmcdev, int reg_offset, writel(val, pmcdev->regbase + reg_offset); } -static inline u64 pmc_core_adjust_slp_s0_step(u32 value) +static inline u64 pmc_core_adjust_slp_s0_step(struct pmc_dev *pmcdev, u32 value) { - return (u64)value * SPT_PMC_SLP_S0_RES_COUNTER_STEP; + return (u64)value * pmcdev->map->slp_s0_res_counter_step; } static int pmc_core_dev_state_get(void *data, u64 *val) @@ -598,7 +602,7 @@ static int pmc_core_dev_state_get(void *data, u64 *val) u32 value; value = pmc_core_reg_read(pmcdev, map->slp_s0_offset); - *val = pmc_core_adjust_slp_s0_step(value); + *val = pmc_core_adjust_slp_s0_step(pmcdev, value); return 0; } diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel_pmc_core.h index 5eae55d80226..f33cd2c34835 100644 --- a/drivers/platform/x86/intel_pmc_core.h +++ b/drivers/platform/x86/intel_pmc_core.h @@ -30,7 +30,7 @@ #define SPT_PMC_MPHY_CORE_STS_1 0x1142 #define SPT_PMC_MPHY_COM_STS_0 0x1155 #define SPT_PMC_MMIO_REG_LEN 0x1000 -#define SPT_PMC_SLP_S0_RES_COUNTER_STEP 0x64 +#define SPT_PMC_SLP_S0_RES_COUNTER_STEP 0x68 #define PMC_BASE_ADDR_MASK ~(SPT_PMC_MMIO_REG_LEN - 1) #define MTPMC_MASK 0xffff0000 #define PPFEAR_MAX_NUM_ENTRIES 12 @@ -185,8 +185,10 @@ enum ppfear_regs { #define ICL_PPFEAR_NUM_ENTRIES 9 #define ICL_NUM_IP_IGN_ALLOWED 20 #define ICL_PMC_LTR_WIGIG 0x1BFC +#define ICL_PMC_SLP_S0_RES_COUNTER_STEP 0x64 #define TGL_NUM_IP_IGN_ALLOWED 22 +#define TGL_PMC_SLP_S0_RES_COUNTER_STEP 0x7A /* * Tigerlake Power Management Controller register offsets @@ -245,6 +247,7 @@ struct pmc_reg_map { const struct pmc_bit_map *msr_sts; const struct pmc_bit_map **lpm_sts; const u32 slp_s0_offset; + const int slp_s0_res_counter_step; const u32 ltr_ignore_offset; const int regmap_length; const u32 ppfear0_offset; From patchwork Fri Oct 30 06:01:57 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390810 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=aC1+L1Jp; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDM2Mv8z9sTf; Fri, 30 Oct 2020 17:02:59 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNV0-0007gB-Tn; Fri, 30 Oct 2020 06:02:54 +0000 Received: from mail-pf1-f195.google.com ([209.85.210.195]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUw-0007ZJ-Ds for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:50 +0000 Received: by mail-pf1-f195.google.com with SMTP id e15so4345089pfh.6 for ; Thu, 29 Oct 2020 23:02:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=bptXnzTMfeo/0FcvPWj19cjnaY5wWiJUJ2hKssJYi90=; b=aC1+L1JpdM8uA022zBkJ+qKDpvzbt5Jt15EyU85qS40YQANMCVUR07caiedeYyDlho UpeHKdYi8JBRwSjb3muwzwms8Lw61LkQHavmvgkaSvIRPgB2hOPF4r9skbFJkkllQjMN 2l+gKHtIfu1Rv7bq0+Smsof9NNTgBvvo+qCb5HRu8HThRlYV1gmXQDWv8dKgiBCjP1n7 /WcW4b3mUdWUyQWs5DOS5hp4V11Icp4PODnYKckuLFbwS/RAO2L+g2qQj2FqjJ0sECQT 9e1RF2HmEJR/VtQ2I7qTzeELPDuPHoeqdPNuz8QpbQxH+QiEdA2sqDQl6f23eI8I1sVX Kseg== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=bptXnzTMfeo/0FcvPWj19cjnaY5wWiJUJ2hKssJYi90=; b=pIQ155unwHlbdJtoSevGb+A9mFSX1nTqMCn9osXA0z39gmcEeB9encxDpW9UCPW80k pXhfQxw3MhemqWNwK4litilgUw0Rdiw7WWFlAC1fNrf4voSf761/+KKUAbI6WlPnJVww jrvqqwjUp4AWwE5gDeDuw1fKeLFTsaglmkWRtLrZi+4IzApHflT5tcA4vq/JRomv3lWH Y3OrXi0Bgp5RQLoqSMeaOlfV6wounvY14+ALvTP5nZd7kdda2B5Z5X8dq7oZdtQ1YveG lya/mj0/4exS9D7+PQebRrmFZkjyAHJhar/oeFsAeeURnvnVy6SF6D5fF9rPVnYn9Xcq r/XQ== X-Gm-Message-State: AOAM533sYmRdUUVmP0eIssP6hF155YeIYddQ5qkvC3hpyLmZaylAYNvP t+zldenMPfy3uL+zOScjLyV+KjcoCTV9oQ== X-Google-Smtp-Source: ABdhPJxEa84QrC46NRUijUTwYmwX7xiXGb5OY+JOEmpHKMbf9anlg5uir/MclP6CAefipHS1eGskbQ== X-Received: by 2002:a17:90a:d901:: with SMTP id c1mr832845pjv.81.1604037765322; Thu, 29 Oct 2020 23:02:45 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id e4sm1854641pjg.44.2020.10.29.23.02.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:44 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 06/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Add debugfs entry for low power mode status registers Date: Fri, 30 Oct 2020 14:01:57 +0800 Message-Id: <20201030060214.780883-12-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.195; envelope-from=acelan@gmail.com; helo=mail-pf1-f195.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Tiger Lake has 6 status registers that are memory mapped. These registers show the status of the low power mode requirements. The registers are latched on every C10 entry or exit and on every s0ix.y entry/exit. Accessing these registers is useful for debugging any low power related activities. Thus, add debugfs entry to access low power mode status registers. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David Box Signed-off-by: David Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit f632817d5ef369a6f433449a1b8fa26627fc40e0) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 188 ++++++++++++++++++++++++++ drivers/platform/x86/intel_pmc_core.h | 5 + 2 files changed, 193 insertions(+) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 92f5510a340e..e9b7edb7aa39 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -408,6 +408,152 @@ static const struct pmc_reg_map icl_reg_map = { .ltr_ignore_max = ICL_NUM_IP_IGN_ALLOWED, }; +static const struct pmc_bit_map tgl_lpm0_map[] = { + {"USB2PLL_OFF_STS", BIT(18)}, + {"PCIe/USB3.1_Gen2PLL_OFF_STS", BIT(19)}, + {"PCIe_Gen3PLL_OFF_STS", BIT(20)}, + {"OPIOPLL_OFF_STS", BIT(21)}, + {"OCPLL_OFF_STS", BIT(22)}, + {"AudioPLL_OFF_STS", BIT(23)}, + {"MIPIPLL_OFF_STS", BIT(24)}, + {"Fast_XTAL_Osc_OFF_STS", BIT(25)}, + {"AC_Ring_Osc_OFF_STS", BIT(26)}, + {"MC_Ring_Osc_OFF_STS", BIT(27)}, + {"SATAPLL_OFF_STS", BIT(29)}, + {"XTAL_USB2PLL_OFF_STS", BIT(31)}, + {} +}; + +static const struct pmc_bit_map tgl_lpm1_map[] = { + {"SPI_PG_STS", BIT(2)}, + {"xHCI_PG_STS", BIT(3)}, + {"PCIe_Ctrller_A_PG_STS", BIT(4)}, + {"PCIe_Ctrller_B_PG_STS", BIT(5)}, + {"PCIe_Ctrller_C_PG_STS", BIT(6)}, + {"GBE_PG_STS", BIT(7)}, + {"SATA_PG_STS", BIT(8)}, + {"HDA0_PG_STS", BIT(9)}, + {"HDA1_PG_STS", BIT(10)}, + {"HDA2_PG_STS", BIT(11)}, + {"HDA3_PG_STS", BIT(12)}, + {"PCIe_Ctrller_D_PG_STS", BIT(13)}, + {"ISIO_PG_STS", BIT(14)}, + {"SMB_PG_STS", BIT(16)}, + {"ISH_PG_STS", BIT(17)}, + {"ITH_PG_STS", BIT(19)}, + {"SDX_PG_STS", BIT(20)}, + {"xDCI_PG_STS", BIT(25)}, + {"DCI_PG_STS", BIT(26)}, + {"CSME0_PG_STS", BIT(27)}, + {"CSME_KVM_PG_STS", BIT(28)}, + {"CSME1_PG_STS", BIT(29)}, + {"CSME_CLINK_PG_STS", BIT(30)}, + {"CSME2_PG_STS", BIT(31)}, + {} +}; + +static const struct pmc_bit_map tgl_lpm2_map[] = { + {"ADSP_D3_STS", BIT(0)}, + {"SATA_D3_STS", BIT(1)}, + {"xHCI0_D3_STS", BIT(2)}, + {"xDCI1_D3_STS", BIT(5)}, + {"SDX_D3_STS", BIT(6)}, + {"EMMC_D3_STS", BIT(7)}, + {"IS_D3_STS", BIT(8)}, + {"THC0_D3_STS", BIT(9)}, + {"THC1_D3_STS", BIT(10)}, + {"GBE_D3_STS", BIT(11)}, + {"GBE_TSN_D3_STS", BIT(12)}, + {} +}; + +static const struct pmc_bit_map tgl_lpm3_map[] = { + {"GPIO_COM0_VNN_REQ_STS", BIT(1)}, + {"GPIO_COM1_VNN_REQ_STS", BIT(2)}, + {"GPIO_COM2_VNN_REQ_STS", BIT(3)}, + {"GPIO_COM3_VNN_REQ_STS", BIT(4)}, + {"GPIO_COM4_VNN_REQ_STS", BIT(5)}, + {"GPIO_COM5_VNN_REQ_STS", BIT(6)}, + {"Audio_VNN_REQ_STS", BIT(7)}, + {"ISH_VNN_REQ_STS", BIT(8)}, + {"CNVI_VNN_REQ_STS", BIT(9)}, + {"eSPI_VNN_REQ_STS", BIT(10)}, + {"Display_VNN_REQ_STS", BIT(11)}, + {"DTS_VNN_REQ_STS", BIT(12)}, + {"SMBUS_VNN_REQ_STS", BIT(14)}, + {"CSME_VNN_REQ_STS", BIT(15)}, + {"SMLINK0_VNN_REQ_STS", BIT(16)}, + {"SMLINK1_VNN_REQ_STS", BIT(17)}, + {"CLINK_VNN_REQ_STS", BIT(20)}, + {"DCI_VNN_REQ_STS", BIT(21)}, + {"ITH_VNN_REQ_STS", BIT(22)}, + {"CSME_VNN_REQ_STS", BIT(24)}, + {"GBE_VNN_REQ_STS", BIT(25)}, + {} +}; + +static const struct pmc_bit_map tgl_lpm4_map[] = { + {"CPU_C10_REQ_STS_0", BIT(0)}, + {"PCIe_LPM_En_REQ_STS_3", BIT(3)}, + {"ITH_REQ_STS_5", BIT(5)}, + {"CNVI_REQ_STS_6", BIT(6)}, + {"ISH_REQ_STS_7", BIT(7)}, + {"USB2_SUS_PG_Sys_REQ_STS_10", BIT(10)}, + {"PCIe_Clk_REQ_STS_12", BIT(12)}, + {"MPHY_Core_DL_REQ_STS_16", BIT(16)}, + {"Break-even_En_REQ_STS_17", BIT(17)}, + {"Auto-demo_En_REQ_STS_18", BIT(18)}, + {"MPHY_SUS_REQ_STS_22", BIT(22)}, + {"xDCI_attached_REQ_STS_24", BIT(24)}, + {} +}; + +static const struct pmc_bit_map tgl_lpm5_map[] = { + {"LSX_Wake0_En_STS", BIT(0)}, + {"LSX_Wake0_Pol_STS", BIT(1)}, + {"LSX_Wake1_En_STS", BIT(2)}, + {"LSX_Wake1_Pol_STS", BIT(3)}, + {"LSX_Wake2_En_STS", BIT(4)}, + {"LSX_Wake2_Pol_STS", BIT(5)}, + {"LSX_Wake3_En_STS", BIT(6)}, + {"LSX_Wake3_Pol_STS", BIT(7)}, + {"LSX_Wake4_En_STS", BIT(8)}, + {"LSX_Wake4_Pol_STS", BIT(9)}, + {"LSX_Wake5_En_STS", BIT(10)}, + {"LSX_Wake5_Pol_STS", BIT(11)}, + {"LSX_Wake6_En_STS", BIT(12)}, + {"LSX_Wake6_Pol_STS", BIT(13)}, + {"LSX_Wake7_En_STS", BIT(14)}, + {"LSX_Wake7_Pol_STS", BIT(15)}, + {"Intel_Se_IO_Wake0_En_STS", BIT(16)}, + {"Intel_Se_IO_Wake0_Pol_STS", BIT(17)}, + {"Intel_Se_IO_Wake1_En_STS", BIT(18)}, + {"Intel_Se_IO_Wake1_Pol_STS", BIT(19)}, + {"Int_Timer_SS_Wake0_En_STS", BIT(20)}, + {"Int_Timer_SS_Wake0_Pol_STS", BIT(21)}, + {"Int_Timer_SS_Wake1_En_STS", BIT(22)}, + {"Int_Timer_SS_Wake1_Pol_STS", BIT(23)}, + {"Int_Timer_SS_Wake2_En_STS", BIT(24)}, + {"Int_Timer_SS_Wake2_Pol_STS", BIT(25)}, + {"Int_Timer_SS_Wake3_En_STS", BIT(26)}, + {"Int_Timer_SS_Wake3_Pol_STS", BIT(27)}, + {"Int_Timer_SS_Wake4_En_STS", BIT(28)}, + {"Int_Timer_SS_Wake4_Pol_STS", BIT(29)}, + {"Int_Timer_SS_Wake5_En_STS", BIT(30)}, + {"Int_Timer_SS_Wake5_Pol_STS", BIT(31)}, + {} +}; + +static const struct pmc_bit_map *tgl_lpm_maps[] = { + tgl_lpm0_map, + tgl_lpm1_map, + tgl_lpm2_map, + tgl_lpm3_map, + tgl_lpm4_map, + tgl_lpm5_map, + NULL +}; + static const struct pmc_reg_map tgl_reg_map = { .pfear_sts = ext_tgl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, @@ -424,6 +570,8 @@ static const struct pmc_reg_map tgl_reg_map = { .ltr_ignore_max = TGL_NUM_IP_IGN_ALLOWED, .lpm_en_offset = TGL_LPM_EN_OFFSET, .lpm_residency_offset = TGL_LPM_RESIDENCY_OFFSET, + .lpm_sts = tgl_lpm_maps, + .lpm_status_offset = TGL_LPM_STATUS_OFFSET, }; static inline u32 pmc_core_reg_read(struct pmc_dev *pmcdev, int reg_offset) @@ -816,6 +964,40 @@ static int pmc_core_substate_res_show(struct seq_file *s, void *unused) } DEFINE_SHOW_ATTRIBUTE(pmc_core_substate_res); +static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct seq_file *s, + u32 offset, const char *str, + const struct pmc_bit_map **maps) +{ + u32 lpm_regs[ARRAY_SIZE(tgl_lpm_maps)-1]; + int index, idx, len = 32, bit_mask; + + for (index = 0; tgl_lpm_maps[index]; index++) { + lpm_regs[index] = pmc_core_reg_read(pmcdev, offset); + offset += 4; + } + + for (idx = 0; maps[idx]; idx++) { + seq_printf(s, "\nLPM_%s_%d:\t0x%x\n", str, idx, lpm_regs[idx]); + for (index = 0; maps[idx][index].name && index < len; index++) { + bit_mask = maps[idx][index].bit_mask; + seq_printf(s, "%-30s %-30d\n", maps[idx][index].name, + lpm_regs[idx] & bit_mask ? 1 : 0); + } + } +} + +static int pmc_core_substate_sts_regs_show(struct seq_file *s, void *unused) +{ + struct pmc_dev *pmcdev = s->private; + const struct pmc_bit_map **maps = pmcdev->map->lpm_sts; + u32 offset = pmcdev->map->lpm_status_offset; + + pmc_core_lpm_display(pmcdev, s, offset, "STATUS", maps); + + return 0; +} +DEFINE_SHOW_ATTRIBUTE(pmc_core_substate_sts_regs); + static int pmc_core_pkgc_show(struct seq_file *s, void *unused) { struct pmc_dev *pmcdev = s->private; @@ -887,6 +1069,12 @@ static void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) pmcdev->dbgfs_dir, pmcdev, &pmc_core_substate_res_fops); } + + if (pmcdev->map->lpm_status_offset) { + debugfs_create_file("substate_status_registers", 0444, + pmcdev->dbgfs_dir, pmcdev, + &pmc_core_substate_sts_regs_fops); + } } #else static inline void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel_pmc_core.h index ff1b2645d9b4..3fdf4735c56f 100644 --- a/drivers/platform/x86/intel_pmc_core.h +++ b/drivers/platform/x86/intel_pmc_core.h @@ -194,6 +194,9 @@ enum ppfear_regs { #define TGL_LPM_EN_OFFSET 0x1C78 #define TGL_LPM_RESIDENCY_OFFSET 0x1C80 +/* Tigerlake Low Power Mode debug registers */ +#define TGL_LPM_STATUS_OFFSET 0x1C3C + const char *lpm_modes[] = { "S0i2.0", "S0i2.1", @@ -239,6 +242,7 @@ struct pmc_reg_map { const struct pmc_bit_map **slps0_dbg_maps; const struct pmc_bit_map *ltr_show_sts; const struct pmc_bit_map *msr_sts; + const struct pmc_bit_map **lpm_sts; const u32 slp_s0_offset; const u32 ltr_ignore_offset; const int regmap_length; @@ -252,6 +256,7 @@ struct pmc_reg_map { /* Low Power Mode registers */ const u32 lpm_en_offset; const u32 lpm_residency_offset; + const u32 lpm_status_offset; }; /** From patchwork Fri Oct 30 06:01:58 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390811 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=VW6N8IEy; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDQ5Y0Dz9sTf; Fri, 30 Oct 2020 17:03:02 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNV3-0007iE-8F; Fri, 30 Oct 2020 06:02:57 +0000 Received: from mail-pl1-f194.google.com ([209.85.214.194]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNUx-0007b6-15 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:51 +0000 Received: by mail-pl1-f194.google.com with SMTP id b12so2467419plr.4 for ; Thu, 29 Oct 2020 23:02:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mlEcK//dnIdz67ybag+Qc3AhiOuYQtXuLSjcU6s9Uyo=; b=VW6N8IEy/4/MUSTo1+lvvEO/MRfW7NBDXjkGJOg8tAHa+ccx0xHAam+8jmmGxdsCnf w2gJnAv1fxemeOZ7+YZa3+jQ40reDzKclMTUNzAL0bvEtpxJ8Z2PbuVQVPnFSM3zDZka QGjVNESaUm9Jo0AlbNhKm1kOe/xkw+I/hBoz8ccm5OEaCbsEy28hIacDRTUYWyF86u6T Qy0z/jPa2+Cucyd/xvru7f6iTB6qUU4+0HoGEcpA4q2z5aYNd6dOktm42Qt/p1V2foFp wdZH4/FkT2zb/fBPPFfoaacpeA3Dc6iS8yLdlhUA7EWRm0UsBGgUP2KguXMyHTATFhIb PziA== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=mlEcK//dnIdz67ybag+Qc3AhiOuYQtXuLSjcU6s9Uyo=; b=a4rwWVs5gIlntKO3mbK3Id5rVQP6s4V29bUmjDFiobDOKq4SONmjDp+CdTFDGc2Co0 wZH2UY9ELhnORLPItQ6sqvboDDiUTSARwNQDw8FWQRYESNOyxniE4O9FYQGz28LtskXH XWGXHS4vjb27iXTocs7fgc7tM5bOZJ1MoRhVoZtQq6iaFiNP04xLVJgpTaCIAfDNqCAY z5Fe53mehVrHU4dodd94NN+8DitfWfsoTX8j/Q5RELhvuATO+7lYwDHeA7qZ0VBSfrsY bDi0GoGC/HdxKE5UGNHbbVjgyVYD7/ko5Y/sNKgEmt38J+x1tukCLkBqDUUVxupY55lr at2Q== X-Gm-Message-State: AOAM5305ubLDCUKa4gopXCFqMNRfnu29Bj6niWWMq07qurhg5dhcUbud DSSW847lFJnNMwo9WKyqOVhXhfSpaHG34A== X-Google-Smtp-Source: ABdhPJw0C4hGhjvkfEOm73+gnt6IFuYZZsBDDGeV9HO2i/JFw4Atrl7EqKYErN4yqsZY+0bssudWjQ== X-Received: by 2002:a17:902:d909:b029:d3:d52c:b98b with SMTP id c9-20020a170902d909b02900d3d52cb98bmr7429430plz.54.1604037767830; Thu, 29 Oct 2020 23:02:47 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id i14sm4622979pfd.38.2020.10.29.23.02.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:47 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 07/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Refactor the driver by removing redundant code Date: Fri, 30 Oct 2020 14:01:58 +0800 Message-Id: <20201030060214.780883-13-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.214.194; envelope-from=acelan@gmail.com; helo=mail-pl1-f194.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 pmc_core_slps0_dbg_show() is responsible for displaying debug registers through slp_s0_debug_status entry. The driver uses the same but redundant code to dump these debug registers for an S0ix failure. Hence, refactor the driver by removing redundant code and reuse the same function that both dumps registers through slp_s0_debug_status entry and in resume for an S0ix failure. The changes in this patch are preparatory, so platforms that support low power sub-states can dump the debug registers when the attempt to enter low power states are unsuccessful. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David Box Suggested-by: Andy Shevchenko Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 4d6a63e0b99ea4ba7f718ab084ebf566b7d1585f) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 48 +++++++++++++-------------- 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index e9b7edb7aa39..6cd17aef35d9 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -845,30 +845,41 @@ static void pmc_core_slps0_dbg_latch(struct pmc_dev *pmcdev, bool reset) mutex_unlock(&pmcdev->lock); } -static int pmc_core_slps0_dbg_show(struct seq_file *s, void *unused) +static void pmc_core_slps0_display(struct pmc_dev *pmcdev, struct device *dev, + struct seq_file *s) { - struct pmc_dev *pmcdev = s->private; const struct pmc_bit_map **maps = pmcdev->map->slps0_dbg_maps; const struct pmc_bit_map *map; - int offset; + int offset = pmcdev->map->slps0_dbg_offset; u32 data; - pmc_core_slps0_dbg_latch(pmcdev, false); - offset = pmcdev->map->slps0_dbg_offset; while (*maps) { map = *maps; data = pmc_core_reg_read(pmcdev, offset); offset += 4; while (map->name) { - seq_printf(s, "SLP_S0_DBG: %-32s\tState: %s\n", - map->name, - data & map->bit_mask ? - "Yes" : "No"); + if (dev) + dev_dbg(dev, "SLP_S0_DBG: %-32s\tState: %s\n", + map->name, + data & map->bit_mask ? "Yes" : "No"); + if (s) + seq_printf(s, "SLP_S0_DBG: %-32s\tState: %s\n", + map->name, + data & map->bit_mask ? "Yes" : "No"); ++map; } ++maps; } +} + +static int pmc_core_slps0_dbg_show(struct seq_file *s, void *unused) +{ + struct pmc_dev *pmcdev = s->private; + + pmc_core_slps0_dbg_latch(pmcdev, false); + pmc_core_slps0_display(pmcdev, NULL, s); pmc_core_slps0_dbg_latch(pmcdev, true); + return 0; } DEFINE_SHOW_ATTRIBUTE(pmc_core_slps0_dbg); @@ -1264,10 +1275,6 @@ static inline bool pmc_core_is_s0ix_failed(struct pmc_dev *pmcdev) static int pmc_core_resume(struct device *dev) { struct pmc_dev *pmcdev = dev_get_drvdata(dev); - const struct pmc_bit_map **maps = pmcdev->map->slps0_dbg_maps; - int offset = pmcdev->map->slps0_dbg_offset; - const struct pmc_bit_map *map; - u32 data; if (!pmcdev->check_counters) return 0; @@ -1285,18 +1292,9 @@ static int pmc_core_resume(struct device *dev) /* The real interesting case - S0ix failed - lets ask PMC why. */ dev_warn(dev, "CPU did not enter SLP_S0!!! (S0ix cnt=%llu)\n", pmcdev->s0ix_counter); - while (*maps) { - map = *maps; - data = pmc_core_reg_read(pmcdev, offset); - offset += 4; - while (map->name) { - dev_dbg(dev, "SLP_S0_DBG: %-32s\tState: %s\n", - map->name, - data & map->bit_mask ? "Yes" : "No"); - map++; - } - maps++; - } + if (pmcdev->map->slps0_dbg_maps) + pmc_core_slps0_display(pmcdev, dev, NULL); + return 0; } From patchwork Fri Oct 30 06:01:59 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390812 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=Wb2nVMJn; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDW4RJRz9sSn; Fri, 30 Oct 2020 17:03:07 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNV6-0007kj-IT; Fri, 30 Oct 2020 06:03:00 +0000 Received: from mail-pg1-f193.google.com ([209.85.215.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNV0-0007da-Pw for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:02:54 +0000 Received: by mail-pg1-f193.google.com with SMTP id 15so4287781pgd.12 for ; Thu, 29 Oct 2020 23:02:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=iVn3dl5IyL7vvRf/SgwF340s5IcA9F39KBuZouozjOQ=; b=Wb2nVMJnTp6YCSWd9fUdCCwbNVOqqDa9ViEyt2fhB0LAbnTi9xFEKv2iJdg/BwXIwc Y+CSiUvUj8OdyLDEjatxxsJONoMEElYp6G8m2WFD2MTpEdZJJRQlteCliu9eHx2mKgQX 3ws2rjtMIFget3PIEdf81senFuva9Zw/j+HVno+RQLgil0SBi6LfGYWo/5Q7pjRL3NRh fAC2c7ZrkXXgTXydxW/ghxi3aG7iwd78yh4xLBhs5vMJRM6MHMGfkF0zl8NOlyBhz6Vg gey7QL4GM6WuJLjJIghrLtr/ogjVc5y2A07uV+fKwDT2UagpliHOTGg2upMU6acTkPwL kGiQ== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=iVn3dl5IyL7vvRf/SgwF340s5IcA9F39KBuZouozjOQ=; b=Hi5YDuJ7tzmQdHa84bsXkLi93+ueNuORS9QM7rQOuucluY3dOFD4z5pWBJ8pSRD5oo r7e7s19WDaB4aYE9pZuwiNElEzZTCCX3h6nm/phOTcGLz1KYGRbdjq/Wq1xb9a8NmwVK k59DA5mL46mz5krCyVkB/DkeDQcyujAto/ZuOkoulU7Jc/+gkniiNUB/yAEF25bISGEB ipSS0hIW73/G9AxlMz3E0qz5bNW3eJzIXe8YbpWYQ6ag7WmsH0pl7uvI+ovzH+B7zsDU 4btifVRp/6+Ne7O+buLrZYoyv8T4TfHZSlF4p3qy2LSwckJ8mNT5dNJ2d2nP1qdFlYqx hpMg== X-Gm-Message-State: AOAM532S8O/L+RgeJa+gAc7ZlZkHimQMmJ1dxan2dZ/LhR4Tb09H+Ei+ 3MXw4e0A982Pp4lNLhRkdfomy1L/YhDCSg== X-Google-Smtp-Source: ABdhPJziYqoEWUCoHS/eSJYGo4/Ur7eMNcWgLpZsLIQFyneUf3DRXNbmhhIhJl3swwpXMIuETKUt4w== X-Received: by 2002:a17:90b:16c2:: with SMTP id iy2mr937999pjb.172.1604037770603; Thu, 29 Oct 2020 23:02:50 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id w23sm4669303pfn.142.2020.10.29.23.02.49 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:49 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 08/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Remove slp_s0 attributes from tgl_reg_map Date: Fri, 30 Oct 2020 14:01:59 +0800 Message-Id: <20201030060214.780883-14-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.193; envelope-from=acelan@gmail.com; helo=mail-pg1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 If platforms such as Tiger Lake has sub-states of S0ix, then both slp_s0_debug_status and slp_s0_dbg_latch entries become invalid. Thus, remove slp_s0_offset and slp_s0_dbg_maps attributes from tgl_reg_map, so that both the entries are not created. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David Box Suggested-by: David Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit a018e28f0880c1eaa72b09d2ec64831024d149a6) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 6cd17aef35d9..be8358dd5ecf 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -556,8 +556,6 @@ static const struct pmc_bit_map *tgl_lpm_maps[] = { static const struct pmc_reg_map tgl_reg_map = { .pfear_sts = ext_tgl_pfear_map, - .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, - .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, .slps0_dbg_offset = CNP_PMC_SLPS0_DBG_OFFSET, From patchwork Fri Oct 30 06:02:00 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390813 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=AtoscIy5; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDb6bj3z9sRk; Fri, 30 Oct 2020 17:03:11 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVD-0007rd-8E; Fri, 30 Oct 2020 06:03:07 +0000 Received: from mail-pg1-f196.google.com ([209.85.215.196]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNV7-0007fo-G7 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:01 +0000 Received: by mail-pg1-f196.google.com with SMTP id o3so4290094pgr.11 for ; Thu, 29 Oct 2020 23:02:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2yf0vEyWwgGDEIzvbgPoC/elnA7JD05vx9e5SoemhSA=; b=AtoscIy59o2MpM3RvtJZx1j2dQbDixM0GIKffLq/L26P5ktBNS/YIo0lpX5bpqhaR3 XzcH043iHfqcRfzeEVWMpoeMgQMF7jGV+29S5IWbd44kFLLw1FeHYDWEmLZqZvCA+XZz 7MNoZ/UTY2SrF90nC4XugijFCWb06OUSGH9ZowZkZs6U8EnSIb7SlLFCsXoZOh1DlVwM u5Xn+6ldzDegtXCoBbGOXKamz7jadmrpd/j8ok3H2LYzT/cO8HOvQy3keJxa6Ry9Ilc1 lv2e5IAjOyuywbGS94Ncfo2wOO0WEYjYLJ63sr0U/Tb5JNq2Hw2ILASIZM+64xyGiyWf mTow== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=2yf0vEyWwgGDEIzvbgPoC/elnA7JD05vx9e5SoemhSA=; b=DaxXHeMR9Mq5RpASgrgRh9iojGijTIESOOxVB/Jl0wGEqtpmjOZpha7fmwMx31h/kR AatyjIltsb2MdzKVm0RM1suhtso6OqzMG4Kf9f4U4XBuytXUcnmAcWpw0Gl0lxBfbVAf /aOya3GVBOy4u3EskaQ//gYmLCCT0f1WKgu5Qc6NT1MTPuvpIK9YaoFAiqPtfgrFhd02 VQgomkDN7zCV5MI8mBVj5MfbUvc/MMG3ngP9ECdspQWW/X+sQV22T3pGaE5qLTEG7P3r 8zoSjTgsGLqWBPy8wiIunhH/ujVKaO4Va2f3Zvb29cG1dm80g+T2xRa15vzT+SNnZC1b WquA== X-Gm-Message-State: AOAM531pd3lOxzetvaQ8THV/HFG6yOAZ6dzlgikmDva9s7M1Znd7v+Ok eE/qqyjT2CL4UvPQkWHqwz4MceAvBwOdqg== X-Google-Smtp-Source: ABdhPJwzJ5sTy4UNAgy9+IHrfP6bUCuM6zVC+WBocGcrRAA23ohGATjRHWmr3i06D7YmgGzfMBzGvw== X-Received: by 2002:a63:e44b:: with SMTP id i11mr829382pgk.431.1604037773458; Thu, 29 Oct 2020 23:02:53 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id v3sm1833780pjk.23.2020.10.29.23.02.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:52 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 09/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Add an additional parameter to pmc_core_lpm_display() Date: Fri, 30 Oct 2020 14:02:00 +0800 Message-Id: <20201030060214.780883-15-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.196; envelope-from=acelan@gmail.com; helo=mail-pg1-f196.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Add a device pointer of type struct device as an additional parameter to pmc_core_lpm_display(), so that the driver can re-use it to dump the debug registers in resume for an S0ix failure. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 913f984a8347ea967ee9693dfa1e15da78e64661) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index be8358dd5ecf..19cd852293ff 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -973,8 +973,9 @@ static int pmc_core_substate_res_show(struct seq_file *s, void *unused) } DEFINE_SHOW_ATTRIBUTE(pmc_core_substate_res); -static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct seq_file *s, - u32 offset, const char *str, +static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, + struct seq_file *s, u32 offset, + const char *str, const struct pmc_bit_map **maps) { u32 lpm_regs[ARRAY_SIZE(tgl_lpm_maps)-1]; @@ -986,11 +987,22 @@ static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct seq_file *s, } for (idx = 0; maps[idx]; idx++) { - seq_printf(s, "\nLPM_%s_%d:\t0x%x\n", str, idx, lpm_regs[idx]); + if (dev) + dev_dbg(dev, "\nLPM_%s_%d:\t0x%x\n", str, idx, + lpm_regs[idx]); + if (s) + seq_printf(s, "\nLPM_%s_%d:\t0x%x\n", str, idx, + lpm_regs[idx]); for (index = 0; maps[idx][index].name && index < len; index++) { bit_mask = maps[idx][index].bit_mask; - seq_printf(s, "%-30s %-30d\n", maps[idx][index].name, - lpm_regs[idx] & bit_mask ? 1 : 0); + if (dev) + dev_dbg(dev, "%-30s %-30d\n", + maps[idx][index].name, + lpm_regs[idx] & bit_mask ? 1 : 0); + if (s) + seq_printf(s, "%-30s %-30d\n", + maps[idx][index].name, + lpm_regs[idx] & bit_mask ? 1 : 0); } } } @@ -1001,7 +1013,7 @@ static int pmc_core_substate_sts_regs_show(struct seq_file *s, void *unused) const struct pmc_bit_map **maps = pmcdev->map->lpm_sts; u32 offset = pmcdev->map->lpm_status_offset; - pmc_core_lpm_display(pmcdev, s, offset, "STATUS", maps); + pmc_core_lpm_display(pmcdev, NULL, s, offset, "STATUS", maps); return 0; } From patchwork Fri Oct 30 06:02:01 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390814 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=GSz+KGOO; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDh5qhgz9sTD; Fri, 30 Oct 2020 17:03:16 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVI-0007vl-1b; Fri, 30 Oct 2020 06:03:12 +0000 Received: from mail-pf1-f195.google.com ([209.85.210.195]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVD-0007hp-6P for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:07 +0000 Received: by mail-pf1-f195.google.com with SMTP id 13so4347284pfy.4 for ; Thu, 29 Oct 2020 23:02:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=dvnwmBYgyoIvrISpKSKNXUGWT6O+UCtaRzQtlHq7w88=; b=GSz+KGOON9LA4w91g8Y5zXyc2aczt6/zRR77I1zqEjDstvh7uC2+WdtKEl6vDm1piS S8Z7HYQTYEFGGxixWI9TSDHPzktFul68H9UYcXHLIfU6d6hgZwN8fy632Od0QfRj1rWr o2VisNyUFi0kgTVrYsZZ0AIt/CH2ZQRw3ZigxWf3l4qjgftxmAoRzZMhWbVgJ8VpeSZB XdZ+7//ltYZxSZp0zzhOnqNEZ8cpwLfaThy5dFHU7aaj6AIW++HlMZptXh+vunu9jCQ8 14qUvFfVgFLeB1bmgVwJZL2AE957WzZLBx3cJFhRLDMn7qFX4mYl8uYwmYtLlXzxi7pH BHlA== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=dvnwmBYgyoIvrISpKSKNXUGWT6O+UCtaRzQtlHq7w88=; b=m2UdfYuEgtlciyI9y0FQk0tOBxgHVh5PJWYGxoCf+By0kSd3dGqwIhgGcs3f0ystUM 1r1feMID7ulaW1FWbJ51xUgAuaoXKEEXqAzJLa1b8EUvxLooejsB/M4kft6VbzubID7f az8ZADzgZVnWWNjbkVsfW1ReN9gVGC3oAFqBjizfqcqKAXC3B/g9CKQto/T+qibdYpwH fn6pXF399N5OvXwxP0Hhhxjsz0eWLZXxA9XvUkebqAgLpmgT+N3rux6PJP1WDrXCgG2F 0Iu9HBkE+GZgLrdi0ZPZ9dNmzDmm8HXJz7c8Fj3NYXt1tqxrXZx6p3xgPq90lsFyXal+ KqfQ== X-Gm-Message-State: AOAM533sDLoLIv/qjjg0WuD68AXegTC2ixSQiyEnk+JoxDQDQFXNLhlJ qfBu9QNohqDZm6PU265CXirMkWnSpj+TdQ== X-Google-Smtp-Source: ABdhPJwHqKQKPKX7iAQ0GQ3L208gkeUN57XMWt2uefFykpdMXcIwI3TRiE8bY6BDn2T5ssuybO4z5w== X-Received: by 2002:a17:90b:3882:: with SMTP id mu2mr930773pjb.112.1604037775667; Thu, 29 Oct 2020 23:02:55 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id r8sm4386541pgl.57.2020.10.29.23.02.54 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:55 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 10/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Dump low power status registers on an S0ix.y failure Date: Fri, 30 Oct 2020 14:02:01 +0800 Message-Id: <20201030060214.780883-16-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.195; envelope-from=acelan@gmail.com; helo=mail-pf1-f195.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Platforms prior to Tiger Lake has no sub-states of S0ix and accessing device PM states that are latched whenever there is a PC10 entry is possible with the help of slp_s0_debug_status and slp_s0_dbg_latch debugfs entries. If a platform has sub-states of S0ix, no such entries are created. Hence, dump low power status registers on resume When any attempt to enter any low power state was unsuccessful. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David Box Suggested-by: David Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 2e36ac08a98829b132a9d0bf1ca281af1a931747) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 19cd852293ff..20950b3d49fa 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -1285,6 +1285,8 @@ static inline bool pmc_core_is_s0ix_failed(struct pmc_dev *pmcdev) static int pmc_core_resume(struct device *dev) { struct pmc_dev *pmcdev = dev_get_drvdata(dev); + const struct pmc_bit_map **maps = pmcdev->map->lpm_sts; + int offset = pmcdev->map->lpm_status_offset; if (!pmcdev->check_counters) return 0; @@ -1304,6 +1306,8 @@ static int pmc_core_resume(struct device *dev) pmcdev->s0ix_counter); if (pmcdev->map->slps0_dbg_maps) pmc_core_slps0_display(pmcdev, dev, NULL); + if (pmcdev->map->lpm_sts) + pmc_core_lpm_display(pmcdev, dev, NULL, offset, "STATUS", maps); return 0; } From patchwork Fri Oct 30 06:02:02 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390815 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=u54UCWyt; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDl4p49z9sSn; Fri, 30 Oct 2020 17:03:19 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVK-0007xJ-Gw; Fri, 30 Oct 2020 06:03:14 +0000 Received: from mail-pf1-f193.google.com ([209.85.210.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVF-0007kR-Ly for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:09 +0000 Received: by mail-pf1-f193.google.com with SMTP id 13so4347372pfy.4 for ; Thu, 29 Oct 2020 23:03:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=+2adJwPpRke5S6tApCYLt59LKQuOMcbMFs21JMN+agg=; b=u54UCWytg7lUNxT6nKaF5ja7lO7Zyr4imK64oZA4DaOio1/LMpDrNmwv6qSMgU+GLe vdnyjwsrP/KnOVhpuJurYr4d3+0HwemFtvZuBsLl2q5x5iVW8u0g4INwkQlJfDVVRKfP /EdTzMeZuN5Zi29ZKP25+77/8n5fiRIMWTqvWThzsn9aGw0IrhQuOM/dY0kHjOUqJg8n V/T0q+LyWb7bp0QTgJAyI4YKblorot3V4Pdm2WcH/5Avbo+hf55xGDkjCScEHWbTcuFw 9cCuQy5mT/3B3CCk4mFoqnv7H09GrSsZbO9czMDD7d23CstkneraoDqLBhYT8dkBiJeH jBXg== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=+2adJwPpRke5S6tApCYLt59LKQuOMcbMFs21JMN+agg=; b=N4TC7ZaKJqQmkwjRNdNIHwhJnd7WuPTXiOe9arfpYzpTldgai0X66y3jh3tclucybr pCScW07yEtMRguX2xza77hkSPXrUiM1CtqWv9w61ZxOP0Y5BJodaeR63VraNlDjFcvl+ 0FsYikqqtKf6NW33EH+OK4aII0O4T9QbUakKWo79DKE4t3mM5JjgnBMfbSo5Y+fOMQob XssaA+k/zPFpLsswH9ePo0w4Ad6cSw9HU/gWKnEva80OQaFU366tBCMLbInISoKuv/RF wGfcVkNepBl+3EvweJqVeZFujw6yC8YGVUQ4lbeTBp9lDx5sOE7lt8whoXbV82vzvzJ9 qspw== X-Gm-Message-State: AOAM530hokqk3jkQXMTUZLIebDMqDtGj2JHbhTkSUaxrU0wBJTmklpPy F6nfUefDwu4E74/ma64oZ0WkfUaVfs7E5g== X-Google-Smtp-Source: ABdhPJziakf3HCkWciXRwnM7XDHTThsrT9ifZR/ihO8sUMvb9vvwssHe+ZQGrBpMuz1YwknOmo2Hew== X-Received: by 2002:a62:14c6:0:b029:163:c9b6:5bfb with SMTP id 189-20020a6214c60000b0290163c9b65bfbmr7704601pfu.37.1604037778596; Thu, 29 Oct 2020 23:02:58 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id x16sm4692421pff.14.2020.10.29.23.02.57 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:02:58 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 11/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Add debugfs support to access live status registers Date: Fri, 30 Oct 2020 14:02:02 +0800 Message-Id: <20201030060214.780883-17-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.193; envelope-from=acelan@gmail.com; helo=mail-pf1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Just like status registers, Tiger Lake has another set of 6 registers that help with status of the low power mode requirements. They are latched on every PC10 entry/exit and S0ix.y entry/exit as well. Though status and live status registers show the status of same list of requirements, live status registers show the status of the low power mode requirements at the time of reading. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 7adb1e8aeeb5d4d88012568b2049599c1a247cf2) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 19 +++++++++++++++++++ drivers/platform/x86/intel_pmc_core.h | 2 ++ 2 files changed, 21 insertions(+) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 20950b3d49fa..d382e01f8173 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -570,6 +570,7 @@ static const struct pmc_reg_map tgl_reg_map = { .lpm_residency_offset = TGL_LPM_RESIDENCY_OFFSET, .lpm_sts = tgl_lpm_maps, .lpm_status_offset = TGL_LPM_STATUS_OFFSET, + .lpm_live_status_offset = TGL_LPM_LIVE_STATUS_OFFSET, }; static inline u32 pmc_core_reg_read(struct pmc_dev *pmcdev, int reg_offset) @@ -1019,6 +1020,18 @@ static int pmc_core_substate_sts_regs_show(struct seq_file *s, void *unused) } DEFINE_SHOW_ATTRIBUTE(pmc_core_substate_sts_regs); +static int pmc_core_substate_l_sts_regs_show(struct seq_file *s, void *unused) +{ + struct pmc_dev *pmcdev = s->private; + const struct pmc_bit_map **maps = pmcdev->map->lpm_sts; + u32 offset = pmcdev->map->lpm_live_status_offset; + + pmc_core_lpm_display(pmcdev, NULL, s, offset, "LIVE_STATUS", maps); + + return 0; +} +DEFINE_SHOW_ATTRIBUTE(pmc_core_substate_l_sts_regs); + static int pmc_core_pkgc_show(struct seq_file *s, void *unused) { struct pmc_dev *pmcdev = s->private; @@ -1096,6 +1109,12 @@ static void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) pmcdev->dbgfs_dir, pmcdev, &pmc_core_substate_sts_regs_fops); } + + if (pmcdev->map->lpm_status_offset) { + debugfs_create_file("substate_live_status_registers", 0444, + pmcdev->dbgfs_dir, pmcdev, + &pmc_core_substate_l_sts_regs_fops); + } } #else static inline void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel_pmc_core.h index 3fdf4735c56f..1bbdffe80bde 100644 --- a/drivers/platform/x86/intel_pmc_core.h +++ b/drivers/platform/x86/intel_pmc_core.h @@ -196,6 +196,7 @@ enum ppfear_regs { /* Tigerlake Low Power Mode debug registers */ #define TGL_LPM_STATUS_OFFSET 0x1C3C +#define TGL_LPM_LIVE_STATUS_OFFSET 0x1C5C const char *lpm_modes[] = { "S0i2.0", @@ -257,6 +258,7 @@ struct pmc_reg_map { const u32 lpm_en_offset; const u32 lpm_residency_offset; const u32 lpm_status_offset; + const u32 lpm_live_status_offset; }; /** From patchwork Fri Oct 30 06:02:03 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390817 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=I+YcQcl/; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDq3Xrcz9sTR; Fri, 30 Oct 2020 17:03:23 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVO-00080Y-TN; Fri, 30 Oct 2020 06:03:18 +0000 Received: from mail-pg1-f193.google.com ([209.85.215.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVG-0007mp-Nj for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:10 +0000 Received: by mail-pg1-f193.google.com with SMTP id r186so4334590pgr.0 for ; Thu, 29 Oct 2020 23:03:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1l9OMLM3ctoyBeHpb179+pILn0hmIZOgauTJhz9rQhw=; b=I+YcQcl/5a/izVJtOuFDl7vqneGRVb2KhBgZabFH2qnN24GB/hgDSXUXZOcSOvJaE9 E5Eag9TOyFEPYqiPgeeQHeCOYLwSk6ZZtsKQ5REW/9xVcl/nsyXJKY4XObEOmvhxq4Uj a6GpBd+l5oJs9+LptVe4BhuAsc2kAmsIZaRuTRTUqX/9QVkNQV6pfTePuJj9jEeYH4Ok X6ZZ5DXPb6hHkZuK40wY1WTYjbFAyhUeCLH2mYyiltOV7zWBrcKu6Hp2LJuhDkZYyfKG fRGiCkBUvA89TYV1gR/zDPkberFXliRPd/P7OxYIYkqsywQu1YlF8LxKS6+efzbFFZkw Q3iw== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=1l9OMLM3ctoyBeHpb179+pILn0hmIZOgauTJhz9rQhw=; b=M2RtpJ3JNKF+0iHmncivluSePiA0QHnyYGeXBtEtF83p4vj/v17iqrqtdy5nGnueEK 6RpfRzzCZp14wy4xJFbmALLVKaoksDZ7QVa3NbtDrC9s+pHqyoxLYDkS2hyfGmdm0uJj JtGDl/fGCbgNHKpo37CdbFL1aiuUQ0KUK50VWMlZzrAsi6voqx1u9mjaxku4tNG2Ic6g vL5BcTJ+kVKkcVP4yDQM3A9sLpPjK7J8AZsoJi6dml8e4GUphVJS5JJJg5ia3PVmD8nV E1kQCOiR3SI3PeHmjBF8ecOeZoIcrzfGy2Xz0rNdwZlv4zVjsAUGNq/4Ge3PMZs/i/zh dx5w== X-Gm-Message-State: AOAM530niNetPBdZy1xzsPVI+2O9Iig2ZPg/ijQoS/sAjRAjb2+Brjec RxTkExIIdmALdZ4edgxaDeB39DymbrtvQg== X-Google-Smtp-Source: ABdhPJzRsLxNoPmEC7BiuItLN8Z8HuPfM37D0zF43pyrh2mkvzlxkHCFpnnuSiY2RRN4SdAHSLs6oQ== X-Received: by 2002:a62:ab0e:0:b029:156:1dfe:ae74 with SMTP id p14-20020a62ab0e0000b02901561dfeae74mr7373578pff.7.1604037781053; Thu, 29 Oct 2020 23:03:01 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id v186sm4865611pfv.135.2020.10.29.23.03.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:00 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 12/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of CONFIG_DEBUG_FS Date: Fri, 30 Oct 2020 14:02:03 +0800 Message-Id: <20201030060214.780883-18-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.193; envelope-from=acelan@gmail.com; helo=mail-pg1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Since pmc_core_slps0_display() and pmc_core_lpm_display() is responsible for dumping as well as displaying debug registers, there is no need for these two functions to be defined under CONFIG_DEBUG_FS. Hence, relocate these functions from under CONFIG_DEBUG_FS to above the block. Cc: Chen Zhou Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit aae43c2bcdc1939c4c6a51b3e28460ada68f8c0c) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 122 +++++++++++++------------- 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index d382e01f8173..0bb730a47c67 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -612,6 +612,67 @@ static int pmc_core_check_read_lock_bit(void) return value & BIT(pmcdev->map->pm_read_disable_bit); } +static void pmc_core_slps0_display(struct pmc_dev *pmcdev, struct device *dev, + struct seq_file *s) +{ + const struct pmc_bit_map **maps = pmcdev->map->slps0_dbg_maps; + const struct pmc_bit_map *map; + int offset = pmcdev->map->slps0_dbg_offset; + u32 data; + + while (*maps) { + map = *maps; + data = pmc_core_reg_read(pmcdev, offset); + offset += 4; + while (map->name) { + if (dev) + dev_dbg(dev, "SLP_S0_DBG: %-32s\tState: %s\n", + map->name, + data & map->bit_mask ? "Yes" : "No"); + if (s) + seq_printf(s, "SLP_S0_DBG: %-32s\tState: %s\n", + map->name, + data & map->bit_mask ? "Yes" : "No"); + ++map; + } + ++maps; + } +} + +static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, + struct seq_file *s, u32 offset, + const char *str, + const struct pmc_bit_map **maps) +{ + u32 lpm_regs[ARRAY_SIZE(tgl_lpm_maps)-1]; + int index, idx, len = 32, bit_mask; + + for (index = 0; tgl_lpm_maps[index]; index++) { + lpm_regs[index] = pmc_core_reg_read(pmcdev, offset); + offset += 4; + } + + for (idx = 0; maps[idx]; idx++) { + if (dev) + dev_dbg(dev, "\nLPM_%s_%d:\t0x%x\n", str, idx, + lpm_regs[idx]); + if (s) + seq_printf(s, "\nLPM_%s_%d:\t0x%x\n", str, idx, + lpm_regs[idx]); + for (index = 0; maps[idx][index].name && index < len; index++) { + bit_mask = maps[idx][index].bit_mask; + if (dev) + dev_dbg(dev, "%-30s %-30d\n", + maps[idx][index].name, + lpm_regs[idx] & bit_mask ? 1 : 0); + if (s) + seq_printf(s, "%-30s %-30d\n", + maps[idx][index].name, + lpm_regs[idx] & bit_mask ? 1 : 0); + } + } +} + #if IS_ENABLED(CONFIG_DEBUG_FS) static bool slps0_dbg_latch; @@ -844,33 +905,6 @@ static void pmc_core_slps0_dbg_latch(struct pmc_dev *pmcdev, bool reset) mutex_unlock(&pmcdev->lock); } -static void pmc_core_slps0_display(struct pmc_dev *pmcdev, struct device *dev, - struct seq_file *s) -{ - const struct pmc_bit_map **maps = pmcdev->map->slps0_dbg_maps; - const struct pmc_bit_map *map; - int offset = pmcdev->map->slps0_dbg_offset; - u32 data; - - while (*maps) { - map = *maps; - data = pmc_core_reg_read(pmcdev, offset); - offset += 4; - while (map->name) { - if (dev) - dev_dbg(dev, "SLP_S0_DBG: %-32s\tState: %s\n", - map->name, - data & map->bit_mask ? "Yes" : "No"); - if (s) - seq_printf(s, "SLP_S0_DBG: %-32s\tState: %s\n", - map->name, - data & map->bit_mask ? "Yes" : "No"); - ++map; - } - ++maps; - } -} - static int pmc_core_slps0_dbg_show(struct seq_file *s, void *unused) { struct pmc_dev *pmcdev = s->private; @@ -974,40 +1008,6 @@ static int pmc_core_substate_res_show(struct seq_file *s, void *unused) } DEFINE_SHOW_ATTRIBUTE(pmc_core_substate_res); -static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, - struct seq_file *s, u32 offset, - const char *str, - const struct pmc_bit_map **maps) -{ - u32 lpm_regs[ARRAY_SIZE(tgl_lpm_maps)-1]; - int index, idx, len = 32, bit_mask; - - for (index = 0; tgl_lpm_maps[index]; index++) { - lpm_regs[index] = pmc_core_reg_read(pmcdev, offset); - offset += 4; - } - - for (idx = 0; maps[idx]; idx++) { - if (dev) - dev_dbg(dev, "\nLPM_%s_%d:\t0x%x\n", str, idx, - lpm_regs[idx]); - if (s) - seq_printf(s, "\nLPM_%s_%d:\t0x%x\n", str, idx, - lpm_regs[idx]); - for (index = 0; maps[idx][index].name && index < len; index++) { - bit_mask = maps[idx][index].bit_mask; - if (dev) - dev_dbg(dev, "%-30s %-30d\n", - maps[idx][index].name, - lpm_regs[idx] & bit_mask ? 1 : 0); - if (s) - seq_printf(s, "%-30s %-30d\n", - maps[idx][index].name, - lpm_regs[idx] & bit_mask ? 1 : 0); - } - } -} - static int pmc_core_substate_sts_regs_show(struct seq_file *s, void *unused) { struct pmc_dev *pmcdev = s->private; From patchwork Fri Oct 30 06:02:04 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390816 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=e4CHKWsk; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDq22nyz9sSn; Fri, 30 Oct 2020 17:03:23 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVM-0007yi-L5; Fri, 30 Oct 2020 06:03:16 +0000 Received: from mail-pf1-f193.google.com ([209.85.210.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVG-0007qK-K5 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:10 +0000 Received: by mail-pf1-f193.google.com with SMTP id x13so4330845pfa.9 for ; Thu, 29 Oct 2020 23:03:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=sx8s68xsPqXJbtSlmhmcw8xaar99vqVyW1UMnZIYVTM=; b=e4CHKWskwECGWrU9e6xgJZaKxcpfCaulp6AnzpMTU37RrczmsUCz7qSZu+9lu9vTCQ 1u8dw/nYGxj0H6ZvwFd2agmg7HykUGGEHHjMcM+6ga4VDeedlJ0SJPIYZUEWxOkU7QOU sxW+9Q6SZFxLEpYS2lGU5rpzww7cxmewMEIpwUwgUa5UrIO8FqaCK7PGGj5ZECVJuEZw mkB5jC8zb+XM4ZEwDAY8UiESUdHjCvFPahcUDDwB0MoLrAXNNX09hd4db9tgpTysj2Qd 8OtHuMTVS+KMkp8PJDBpDPh4rk8pOrlkwsAl48U7rdwTCalmBRLMJI0KE1az0spp6g28 RK2Q== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=sx8s68xsPqXJbtSlmhmcw8xaar99vqVyW1UMnZIYVTM=; b=hcHOEANOf9BOqDCjbfzJw04+yfbcNsqGXxZ9tvGmwjP+HqfsJkizmA6GhtolqQyHlX atxFk8eYHpDdtPK/xvcCmGfbm+h8bPoqo9ovKSs1rq/PlbBT+6Y20UZyQPqcFHFEhwZz v/nKn+LjMTBzW+QCd/M4Dsl3aqOcTsx8NyqbYoMnpHKOK18tfx3mlCIJSjpxspvyhf8E GcfpYzI8TPBy58Ihe2X5oPPEfZ6BZuka9o+JQmHiIaGAidJDIbLV+8vwaM0ig4TYTwl6 7BTJtcVhZZ/dnAY/ISMsGC8oDatVbSL89J44eXt8iTBdKUL6LaG08vC8DQ8krT3LJ6MJ esEA== X-Gm-Message-State: AOAM533wJFml0XT/z7cFX29ecwzz7p9zW9+eCMUBNsxh9RuyaTlPm0K5 l0C29titinfVr9JF8Bi/9/clB/wi/pDxhQ== X-Google-Smtp-Source: ABdhPJzsPTkTm+tQRBi7aZyb+SqBP0v5QdF3mIG+RqISArIxwLmaK86XVn1tm5lQSo6qLK4VwK5UHg== X-Received: by 2002:a17:90a:ae16:: with SMTP id t22mr905077pjq.55.1604037784110; Thu, 29 Oct 2020 23:03:04 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id w66sm4583867pgb.63.2020.10.29.23.03.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:03 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 13/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Remove duplicate 'if' to create debugfs entry Date: Fri, 30 Oct 2020 14:02:04 +0800 Message-Id: <20201030060214.780883-19-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.193; envelope-from=acelan@gmail.com; helo=mail-pf1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 A debugfs entry for substate_live_status_registers is created only if the platform has sub-states, which requires the same condition to create substate_status_registers debugfs entry. Hence remove the redundant condition and re-use the existing one. Cc: Chen Zhou Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 08ec5020bd6cf0102ec92c00ed149d8b76ace5ee) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 0bb730a47c67..648db31fa1b9 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -1108,9 +1108,6 @@ static void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) debugfs_create_file("substate_status_registers", 0444, pmcdev->dbgfs_dir, pmcdev, &pmc_core_substate_sts_regs_fops); - } - - if (pmcdev->map->lpm_status_offset) { debugfs_create_file("substate_live_status_registers", 0444, pmcdev->dbgfs_dir, pmcdev, &pmc_core_substate_l_sts_regs_fops); From patchwork Fri Oct 30 06:02:05 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390818 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=gehriSeI; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDr5Cb5z9sTD; Fri, 30 Oct 2020 17:03:24 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVP-00081d-N0; Fri, 30 Oct 2020 06:03:19 +0000 Received: from mail-pg1-f196.google.com ([209.85.215.196]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVH-0007sG-16 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:11 +0000 Received: by mail-pg1-f196.google.com with SMTP id f38so4324118pgm.2 for ; Thu, 29 Oct 2020 23:03:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ELvQfVH6lqrPUxGqUk59mGo2kcm+Js9LJt17IR4+CTw=; b=gehriSeIRu/waHzVWxX9izoGeCIvfCSeSKSKN+zyLsvGsC7kzgdbY17d9OT+X5TgKC W2wgmUg1vsO1IT1tIkBMXp31JZOZODnB03FYtsl61BWyBFbk7WbTj7Bh+TmW2ze/5CT4 xyjYspnDS1DRnGYaYIlf0HpCE7WKkWd4wO+vHj9TBJlNJ7fWyzjgt7YWTHqUhYHTFCnZ myfvbtbj0WCYk0qupG8H4dMwCU/RWcoPTe0Yb/QRXimJR/cCU1A4QErDQLM6eZ4hCLsY uNcH1Ptv5TJ3uyjGsbeArJhE64rRdkfzvCRl1zuxzS+gPtabK4oWdS/eBnfAmaWJn+RT S91g== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ELvQfVH6lqrPUxGqUk59mGo2kcm+Js9LJt17IR4+CTw=; b=VzpOhd35tsNgI65mQXEdORRvce291qhaqkIxJtg8pvWHeMzqf4wl0ClPsdVKyTms/3 hzcN/n5V2WThA1zo5JrGJwxtygLIdTqvCd+5nnMVLPF3cxHiPF2VMbUzKqTlfs3kE1ZO WiM1MbbCMZFWlNzgrPMq4ZZXexT7N7vg9Yn8oy+gIFbstWc+Oen97n+D9j8KpIX9Sw7+ +tZWkGeQybrjIGOWS6//4ah+HJTA3FS8uC7FogDGxke9kOsjemoHZcEXi7WHU4eyD8xS eIoQ6ER7zV6gJb5xDl4HCrxJzfE+npt7DBDDS3GQAlo2/KpGwuWuGOC7yQwx7YgTZU9x hJbQ== X-Gm-Message-State: AOAM5321LrjE0Af5uVFxqd9kutdLKWcdpDQL6yEvS3269dN3BTCYbLRI wwUMiYR6oyK64FvUyz10olDVZTLnqO088w== X-Google-Smtp-Source: ABdhPJzVnDlYjSbUZT+OBU5XrbUp3UP4aFptJ1HylblMKHEZnfyuIo7C4U+BFYlZ1k+mNhY8sOv/Ug== X-Received: by 2002:a63:3604:: with SMTP id d4mr841111pga.121.1604037786814; Thu, 29 Oct 2020 23:03:06 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id z27sm4632553pfr.206.2020.10.29.23.03.06 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:06 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 14/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Add slp_s0_offset attribute back to tgl_reg_map Date: Fri, 30 Oct 2020 14:02:05 +0800 Message-Id: <20201030060214.780883-20-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.196; envelope-from=acelan@gmail.com; helo=mail-pg1-f196.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 If platforms such as Tiger Lake has sub-states of S0ix, then attributes such as slps0_dbg_offset become invalid. But slp_s0_offset is still valid as it is used to get the pmcdev_base_addr. Hence, add back slp_s0_offset and remove slps0_dbg_offset attributes. Cc: Chen Zhou Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 0e9c026f1b86a855cb9ab7aa270ff8db3c72015d) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 648db31fa1b9..af051986f31d 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -556,9 +556,9 @@ static const struct pmc_bit_map *tgl_lpm_maps[] = { static const struct pmc_reg_map tgl_reg_map = { .pfear_sts = ext_tgl_pfear_map, + .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, - .slps0_dbg_offset = CNP_PMC_SLPS0_DBG_OFFSET, .ltr_ignore_offset = CNP_PMC_LTR_IGNORE_OFFSET, .regmap_length = CNP_PMC_MMIO_REG_LEN, .ppfear0_offset = CNP_PMC_HOST_PPFEAR0A, From patchwork Fri Oct 30 06:02:06 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390819 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=TEcBzZZS; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDw48Rcz9sSn; Fri, 30 Oct 2020 17:03:28 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVS-00084M-Op; Fri, 30 Oct 2020 06:03:22 +0000 Received: from mail-pl1-f196.google.com ([209.85.214.196]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVO-0007uL-Or for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:18 +0000 Received: by mail-pl1-f196.google.com with SMTP id t22so2444262plr.9 for ; Thu, 29 Oct 2020 23:03:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=W+YfQCJhwymFe7KdFhbhD0v/iv8XLrYLFUsiFGZdAdE=; b=TEcBzZZSqx+GKqeh3D3fYiu1qd7C0Vs600A5boek0u2+zbXMSzwQqGYLtchVFvl5PD y1MYK36RL4eSs4jjnYrVnnyXOGuTdBpJHNzaMApPPZq92ib9OPG7DcXbhUj951pqAKZS IbUXpUXmKP5fb5fTvdtr2m03CSTU0AE3o3RClqrGVG8EHbyZmvFKoKyOcDVNMuINbcbx guCWwxeWlBr9YvdD5G9G4nHPPEtRLwCykrEgV1MFKIm+Un7gvDfdLrQNdeWjz0V//Vqh GyjXFAgP7sPt+b4e65McSswYmu9M7aHo/6wqY3/3CVGFPOlWLwis9Wlo+RcZOusVb78l mGZQ== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=W+YfQCJhwymFe7KdFhbhD0v/iv8XLrYLFUsiFGZdAdE=; b=cDJNNjnvCDdn4XkHHKdClPrwJ/JbkY7b1lOKBD5V7V+bkkEVrMdpF4qzrmy4jRO7ET 8Z2O1O9U2PCjHafqBaONIfMD1vn29PFQM++0eGFagXhxhA+x6MqfF8R8AtB+rLZL2w9+ dbDtWYjILiaBYVNUyqB/Lsw36cRHGTkyELS3xIv/n5QN1lGe+D3rRCmdwpelqKPVODCg QB2bE78D6hP9FM4mBKWIsQPqsETGmcsdP7KxYhjY38dcfKA1Z6fWqi2JZhLzJGjYDFWY f5IU+a9SO+ENRx97sFGsVWM9go6WAUZ2MDJORDprRJFP19Bq0rYhcp7lVAouvbqTf7pb UQYQ== X-Gm-Message-State: AOAM530tGjXZyUpgvzRQ65TZ7ENk0TuGk2vgq19P1ezCj5tLR/rOfpaB rgx8DOTBl1h7nRaeAzLskNzGmmWsDEWq5w== X-Google-Smtp-Source: ABdhPJyRp1Wgiw52YxkBzPa35he44Pf8fnIWrmn0dXSfN8I5ies0PM5Z9QaMM5M7s0mz+piUaMz7rA== X-Received: by 2002:a17:902:b696:b029:d2:1ebe:d80c with SMTP id c22-20020a170902b696b02900d21ebed80cmr7357627pls.18.1604037789209; Thu, 29 Oct 2020 23:03:09 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id bo16sm1835164pjb.41.2020.10.29.23.03.08 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:08 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 15/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Make pmc_core_lpm_display() generic for platforms that support sub-states Date: Fri, 30 Oct 2020 14:02:06 +0800 Message-Id: <20201030060214.780883-21-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.214.196; envelope-from=acelan@gmail.com; helo=mail-pl1-f196.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Currently pmc_core_lpm_display() uses an array of the struct pointers, i.e. tgl_lpm_maps for Tiger Lake directly to iterate through and to get the number of (live) status registers which is hard coded and can not be re-used for the future platforms that support sub-states. To maintain readability, make pmc_core_lpm_display() generic, so that it can be re-used for future platforms. Cc: Chen Zhou Cc: Andy Shevchenko Cc: David E. Box Suggested-by: Andy Shevchenko Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit 267fc714cab797574a3a9df2074f05c3cdeb2511) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index af051986f31d..9a031f4e36f2 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include @@ -639,20 +640,35 @@ static void pmc_core_slps0_display(struct pmc_dev *pmcdev, struct device *dev, } } +static int pmc_core_lpm_get_arr_size(const struct pmc_bit_map **maps) +{ + int idx; + + for (idx = 0; maps[idx]; idx++) + ;/* Nothing */ + + return idx; +} + static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, struct seq_file *s, u32 offset, const char *str, const struct pmc_bit_map **maps) { - u32 lpm_regs[ARRAY_SIZE(tgl_lpm_maps)-1]; - int index, idx, len = 32, bit_mask; + int index, idx, len = 32, bit_mask, arr_size; + u32 *lpm_regs; + + arr_size = pmc_core_lpm_get_arr_size(maps); + lpm_regs = kmalloc_array(arr_size, sizeof(*lpm_regs), GFP_KERNEL); + if (!lpm_regs) + return; - for (index = 0; tgl_lpm_maps[index]; index++) { + for (index = 0; index < arr_size; index++) { lpm_regs[index] = pmc_core_reg_read(pmcdev, offset); offset += 4; } - for (idx = 0; maps[idx]; idx++) { + for (idx = 0; idx < arr_size; idx++) { if (dev) dev_dbg(dev, "\nLPM_%s_%d:\t0x%x\n", str, idx, lpm_regs[idx]); @@ -671,6 +687,8 @@ static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, lpm_regs[idx] & bit_mask ? 1 : 0); } } + + kfree(lpm_regs); } #if IS_ENABLED(CONFIG_DEBUG_FS) From patchwork Fri Oct 30 06:02:07 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390820 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=DGB0CNBQ; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsDz43N1z9sRk; Fri, 30 Oct 2020 17:03:31 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVV-00086k-F9; Fri, 30 Oct 2020 06:03:25 +0000 Received: from mail-pg1-f193.google.com ([209.85.215.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVR-0007wW-12 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:21 +0000 Received: by mail-pg1-f193.google.com with SMTP id r10so4298152pgb.10 for ; Thu, 29 Oct 2020 23:03:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Nn0pSsJa21Db2DCt2P8rOTkEy21L6U3mEUQpHiAfsO0=; b=DGB0CNBQLdEiXkCaJllFHVw/qmkPPmqaremRU6dE62yWvQ9IEQMl8sOhjTj+etabEj 7yvwzP5nWT4Mad0ociHDcXNUzgk9XrkJJG2DHANeDjTc+DwbbhYRPcK+y2bROhInA2xn PkzMu9ucdL1MvnlVZlM058aAuLYHGJlKzc+bDGCKEQwTt1KGqyocgi10oe4NhbeNdXQE TWfjkLJ77AxbhGAtg1rrxak1C6dqOBHzKj2NDosG4R6Tc96QU1wIuWtf5cUQHugY4ijy +NiqwaoTb8DjFMS5nm/TZbx+jY7PBrUoN97vT0vEllekqNvwDiiv6zgc8BJMjcUtFBTa f59A== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=Nn0pSsJa21Db2DCt2P8rOTkEy21L6U3mEUQpHiAfsO0=; b=C7W4V4r6Khnb7mFozhG2DknNJWOkXc/exgQ21ZqWqJp7tziaDRYOlbG1vS+vi6pDdk BdXJRZUSbsijT4LKpM8GpcECVp90R5bxq/YTDhb1pWpD2SVZCFfBYlWCIwOWz02B4ynB Upr0/W1motdaITKpLBtwrMbXTeIYCofhcbXWIeARj/1sI1uDGMA5tnQLhUof4MsfaxEd ErxCrttLaabZSvMHXqVQvYt4t4uuqFzY1+DvipWSRdLmgqsx0rhQrBBiafNAUXnvNqL/ rw765Rgh+2lXskFAj/9rtbVyMl3v8y3F9Res92Y5koZKyz8wM2FwqAhcZvphTNIOC6OM cm7g== X-Gm-Message-State: AOAM532h7PBgippw6i55GkxZyJnCCyuBUdzcwpOwC415U51+8Bd+ShVj QFrlu8GA5luTXW58WPSGpY5zFAENOlGMGg== X-Google-Smtp-Source: ABdhPJz11mll5JgNbOKx83dyXu2imn/T0/LKhliJ/uwoREmQRGB7LlKnu3qjQCH9a+rfVG4zgAhvpg== X-Received: by 2002:a63:e241:: with SMTP id y1mr867268pgj.264.1604037791910; Thu, 29 Oct 2020 23:03:11 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id v16sm4200412pgk.26.2020.10.29.23.03.11 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:11 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 16/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Make pmc_core_substate_res_show() generic Date: Fri, 30 Oct 2020 14:02:07 +0800 Message-Id: <20201030060214.780883-22-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.193; envelope-from=acelan@gmail.com; helo=mail-pg1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 Currently pmc_core_substate_res_show() uses array of char pointers i.e., lpm_modes for Tiger Lake directly to iterate through and to get the number of low power modes which is hardcoded and cannot be re-used for future platforms that support sub-states. To maintain readability, make pmc_core_substate_res_show() generic, so that it can re-used for future platforms. Cc: Chen Zhou Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: Andy Shevchenko (cherry picked from commit c61b693c9a032991f34cc4034b466d7807fd61ab) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 ++ drivers/platform/x86/intel_pmc_core.h | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 9a031f4e36f2..d2a5d4c36715 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -567,6 +567,7 @@ static const struct pmc_reg_map tgl_reg_map = { .pm_cfg_offset = CNP_PMC_PM_CFG_OFFSET, .pm_read_disable_bit = CNP_PMC_READ_DISABLE_BIT, .ltr_ignore_max = TGL_NUM_IP_IGN_ALLOWED, + .lpm_modes = tgl_lpm_modes, .lpm_en_offset = TGL_LPM_EN_OFFSET, .lpm_residency_offset = TGL_LPM_RESIDENCY_OFFSET, .lpm_sts = tgl_lpm_maps, @@ -1009,6 +1010,7 @@ DEFINE_SHOW_ATTRIBUTE(pmc_core_ltr); static int pmc_core_substate_res_show(struct seq_file *s, void *unused) { struct pmc_dev *pmcdev = s->private; + const char **lpm_modes = pmcdev->map->lpm_modes; u32 offset = pmcdev->map->lpm_residency_offset; u32 lpm_en; int index; diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel_pmc_core.h index 1bbdffe80bde..0d50b2402abe 100644 --- a/drivers/platform/x86/intel_pmc_core.h +++ b/drivers/platform/x86/intel_pmc_core.h @@ -198,7 +198,7 @@ enum ppfear_regs { #define TGL_LPM_STATUS_OFFSET 0x1C3C #define TGL_LPM_LIVE_STATUS_OFFSET 0x1C5C -const char *lpm_modes[] = { +const char *tgl_lpm_modes[] = { "S0i2.0", "S0i2.1", "S0i2.2", @@ -255,6 +255,7 @@ struct pmc_reg_map { const u32 ltr_ignore_max; const u32 pm_vric1_offset; /* Low Power Mode registers */ + const char **lpm_modes; const u32 lpm_en_offset; const u32 lpm_residency_offset; const u32 lpm_status_offset; From patchwork Fri Oct 30 06:02:08 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390821 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=mcMzWoaN; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsF3633yz9sRk; Fri, 30 Oct 2020 17:03:35 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVa-0008Ap-0L; Fri, 30 Oct 2020 06:03:30 +0000 Received: from mail-pl1-f193.google.com ([209.85.214.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVT-0007yP-Fk for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:23 +0000 Received: by mail-pl1-f193.google.com with SMTP id 1so2463299ple.2 for ; Thu, 29 Oct 2020 23:03:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SRm1gO2COgNgPHp2+xSmlaFoDqyFF8LkFjaERcZDfbI=; b=mcMzWoaNJ7iZoT5mnFReAXqJIVQdpxbbZ83flXwIJuT6MosMaF/4ya8NgzNvfPmcVl HKHgKpOmC7ie+hXxnH1gWshvE2pFSrsZm2RFrKSTGpU/wS7xDJOmf9GQlY//BSU2VNIc WXyDCUpRpA6YGWCLV4fxx/acZepyScLfUYcUDisvahNveE+nJNMPx9sFuYb21Xf+owh0 zuptPXcBAeMmL+pipsEIDNHkwYpZsAbsAgU5gyS7SG7acyt7GL4+5kGkFVlUp1L5sade +4+U9dbgn4kpYzp3bmx5TNxjyXTCHMvV3fV9u9fp1EPalbd/2XvxJWig0XrjjZNeclt3 LOQQ== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=SRm1gO2COgNgPHp2+xSmlaFoDqyFF8LkFjaERcZDfbI=; b=O4uTKGrT7GOXPTjUr0fMHyOtmBHSgiK1/23/C6JUFlcA+ec+lq/CVx356SN16iFys/ LNiCiv1Uq7KeqViNj+cmCELggNfJ/X3vXGUnFHtwlWJOsAdJKSulW+MS9wfGVX0IT6RL kTKy2EZcsZafgCYTJmepnga2FMEPNHvPNy5JL5KUWTcxVOrZ5Sz4jUbCuIp623p06wzx tWLrFKbMMrtDPqC/wCnl2B2cvkgRiNi7n9WHQDV3zMqSixrMZkbRj7nS93n0z/itaMSY PG0WgELLu/9PG/Vv1+MCSOcWp4JqfEfEuUg3oO8KtkXFBxAw0L/9Ot8g/MdTaNb9M8v5 wN2Q== X-Gm-Message-State: AOAM533gGsFkz0H76mn2IFLi1v3nZ9HvGz5fsG9i61B8LyP+1Y1RXRYn rh5PahkynZN+rG1FYz8oKohh82Vte8cygw== X-Google-Smtp-Source: ABdhPJwQRj4Ks5C8Kj0P5xvihPMS08UiiFgU9UzJaFaJfmjUPEOrTkaAwHmXeJ9CgZ3XorgLQnN4Bg== X-Received: by 2002:a17:902:b70a:b029:d2:6391:a80f with SMTP id d10-20020a170902b70ab02900d26391a80fmr7453002pls.0.1604037794753; Thu, 29 Oct 2020 23:03:14 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id e2sm1813583pjw.13.2020.10.29.23.03.13 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:14 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 17/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Change Jasper Lake S0ix debug reg map back to ICL Date: Fri, 30 Oct 2020 14:02:08 +0800 Message-Id: <20201030060214.780883-23-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.214.193; envelope-from=acelan@gmail.com; helo=mail-pl1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Archana Patni BugLink: https://bugs.launchpad.net/bugs/1899883 Jasper Lake uses Icelake PCH IPs and the S0ix debug interfaces are same as Icelake. It uses SLP_S0_DBG register latch/read interface from Icelake generation. It doesn't use Tiger Lake LPM debug registers. Change the Jasper Lake S0ix debug interface to use the ICL reg map. Fixes: 16292bed9c56 ("platform/x86: intel_pmc_core: Add Atom based Jasper Lake (JSL) platform support") Signed-off-by: Archana Patni Acked-by: David E. Box Tested-by: Divagar Mohandass Signed-off-by: Andy Shevchenko (cherry picked from commit e87fa339d413c540c065c280ba9e7cc9a8dbcfd1) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index d2a5d4c36715..a130859ec49e 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -255,7 +255,7 @@ static const struct pmc_bit_map *ext_cnp_pfear_map[] = { }; static const struct pmc_bit_map icl_pfear_map[] = { - /* Ice Lake generation onwards only */ + /* Ice Lake and Jasper Lake generation onwards only */ {"RES_65", BIT(0)}, {"RES_66", BIT(1)}, {"RES_67", BIT(2)}, @@ -274,7 +274,7 @@ static const struct pmc_bit_map *ext_icl_pfear_map[] = { }; static const struct pmc_bit_map tgl_pfear_map[] = { - /* Tiger Lake, Elkhart Lake and Jasper Lake generation onwards only */ + /* Tiger Lake and Elkhart Lake generation onwards only */ {"PSF9", BIT(0)}, {"RES_66", BIT(1)}, {"RES_67", BIT(2)}, @@ -1156,7 +1156,7 @@ static const struct x86_cpu_id intel_pmc_core_ids[] = { X86_MATCH_INTEL_FAM6_MODEL(TIGERLAKE_L, &tgl_reg_map), X86_MATCH_INTEL_FAM6_MODEL(TIGERLAKE, &tgl_reg_map), X86_MATCH_INTEL_FAM6_MODEL(ATOM_TREMONT, &tgl_reg_map), - X86_MATCH_INTEL_FAM6_MODEL(ATOM_TREMONT_L, &tgl_reg_map), + X86_MATCH_INTEL_FAM6_MODEL(ATOM_TREMONT_L, &icl_reg_map), {} }; From patchwork Fri Oct 30 06:02:09 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390822 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=MLVaAITD; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsF73v5Jz9sRk; Fri, 30 Oct 2020 17:03:39 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVd-0008Df-0S; Fri, 30 Oct 2020 06:03:33 +0000 Received: from mail-pg1-f194.google.com ([209.85.215.194]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVZ-0007zv-1K for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:29 +0000 Received: by mail-pg1-f194.google.com with SMTP id h6so4314631pgk.4 for ; Thu, 29 Oct 2020 23:03:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=OcvoL+r4C9gYcV3RVRav4CEkkIv6dPI5UY84uZo0fjE=; b=MLVaAITDbqn31ADzMkC098cy4qr3bUTFealO+9uuJBZm0lgCus4FODv2hFFCcSfwqG L7mM0J34y3QgMinOqDvF9KWb5Rs9ZHLVKq2pptyKRGllVNSyM2r29YOFyUCmj5W6cqNl GUt8E/ebyVklV+W03c/OFLp64dZcGD3S501J/qccSSTr8oihk6cxwKTCezdeGZH8UxB1 49XSbKrD09tzBvHJemVzbqwEtdvUY108PuSo5yGeOlaUHbxHChfJS8/IWQOdDjxWX0C4 lrCdYVkejuNzN1IhDSmoSWN2uxvbSTyhV3H5ejx45K0uGzhO5uA74JgRij4N8oUdK+BT 8lbw== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=OcvoL+r4C9gYcV3RVRav4CEkkIv6dPI5UY84uZo0fjE=; b=F7ZKa9jbj4+ttkdItTHDWP4ry6YM0AEm7a3FTjMOcYdUdxrfL4WaH9SwwbNw8CoFnC 3km5GwK+gyqkawFpW0hUjswcvNKaCPu09GT7PjVq/6AqCEVzOxds8OPiLGM0pTdMXFdc bvHkgWOGJS/kSQOiVQ1aoli5PkeQ19At8BnLwZ/AuOp9j67Qng812YdSDmif2EnmvYcT B3aCrFA/QHZ5rb3TkAWArvgRZffgUTIQEC0BcJUSnoeDYWMBy/+kS/mlEfx5KpFTeTCV jh1EdGw74SIvxxGxGxfDAQ3WSHZ2V+NxZaUiz2V3rc4mFaZ0xACzgZB4fNOEz8caJ5M4 aSgQ== X-Gm-Message-State: AOAM533duavf1HeZIEXxlTI0uvffDIm5+22wXgrfjq9I5xF+fwi8KXTi 8BrXSO8b1lwzbtoG7YIOw+iXyf4igfth2A== X-Google-Smtp-Source: ABdhPJzh1zwEKBFpJABiKKEgbk8h1op7uGQMZtR8wieZuCtPIGGNCEDmIPA1KHFOGU/BQkVoEAq2bA== X-Received: by 2002:a17:90b:3113:: with SMTP id gc19mr915543pjb.91.1604037797371; Thu, 29 Oct 2020 23:03:17 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id s23sm4169545pgl.47.2020.10.29.23.03.16 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:16 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 18/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: avoid unused-function warnings Date: Fri, 30 Oct 2020 14:02:09 +0800 Message-Id: <20201030060214.780883-24-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.194; envelope-from=acelan@gmail.com; helo=mail-pg1-f194.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Arnd Bergmann BugLink: https://bugs.launchpad.net/bugs/1899883 When both CONFIG_DEBUG_FS and CONFIG_PM_SLEEP are disabled, the functions that got moved out of the #ifdef section now cause a warning: drivers/platform/x86/intel_pmc_core.c:654:13: error: 'pmc_core_lpm_display' defined but not used [-Werror=unused-function] 654 | static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, | ^~~~~~~~~~~~~~~~~~~~ drivers/platform/x86/intel_pmc_core.c:617:13: error: 'pmc_core_slps0_display' defined but not used [-Werror=unused-function] 617 | static void pmc_core_slps0_display(struct pmc_dev *pmcdev, struct device *dev, | ^~~~~~~~~~~~~~~~~~~~~~ Rather than add even more #ifdefs here, remove them entirely and let the compiler work it out, it can actually get rid of all the debugfs calls without problems as long as the struct member is there. The two PM functions just need a __maybe_unused annotations to avoid another warning instead of the #ifdef. Fixes: aae43c2bcdc1 ("platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of CONFIG_DEBUG_FS") Signed-off-by: Arnd Bergmann Signed-off-by: Andy Shevchenko (cherry picked from commit 01f259f3720c3965443109d82a0f12611ea8bb58) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 18 ++---------------- drivers/platform/x86/intel_pmc_core.h | 2 -- 2 files changed, 2 insertions(+), 18 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index a130859ec49e..7c8bdab078cf 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -692,7 +692,6 @@ static void pmc_core_lpm_display(struct pmc_dev *pmcdev, struct device *dev, kfree(lpm_regs); } -#if IS_ENABLED(CONFIG_DEBUG_FS) static bool slps0_dbg_latch; static inline u8 pmc_core_reg_read_byte(struct pmc_dev *pmcdev, int offset) @@ -1133,15 +1132,6 @@ static void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) &pmc_core_substate_l_sts_regs_fops); } } -#else -static inline void pmc_core_dbgfs_register(struct pmc_dev *pmcdev) -{ -} - -static inline void pmc_core_dbgfs_unregister(struct pmc_dev *pmcdev) -{ -} -#endif /* CONFIG_DEBUG_FS */ static const struct x86_cpu_id intel_pmc_core_ids[] = { X86_MATCH_INTEL_FAM6_MODEL(SKYLAKE_L, &spt_reg_map), @@ -1260,13 +1250,11 @@ static int pmc_core_remove(struct platform_device *pdev) return 0; } -#ifdef CONFIG_PM_SLEEP - static bool warn_on_s0ix_failures; module_param(warn_on_s0ix_failures, bool, 0644); MODULE_PARM_DESC(warn_on_s0ix_failures, "Check and warn for S0ix failures"); -static int pmc_core_suspend(struct device *dev) +static __maybe_unused int pmc_core_suspend(struct device *dev) { struct pmc_dev *pmcdev = dev_get_drvdata(dev); @@ -1318,7 +1306,7 @@ static inline bool pmc_core_is_s0ix_failed(struct pmc_dev *pmcdev) return false; } -static int pmc_core_resume(struct device *dev) +static __maybe_unused int pmc_core_resume(struct device *dev) { struct pmc_dev *pmcdev = dev_get_drvdata(dev); const struct pmc_bit_map **maps = pmcdev->map->lpm_sts; @@ -1348,8 +1336,6 @@ static int pmc_core_resume(struct device *dev) return 0; } -#endif - static const struct dev_pm_ops pmc_core_pm_ops = { SET_LATE_SYSTEM_SLEEP_PM_OPS(pmc_core_suspend, pmc_core_resume) }; diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel_pmc_core.h index 0d50b2402abe..5eae55d80226 100644 --- a/drivers/platform/x86/intel_pmc_core.h +++ b/drivers/platform/x86/intel_pmc_core.h @@ -282,9 +282,7 @@ struct pmc_dev { u32 base_addr; void __iomem *regbase; const struct pmc_reg_map *map; -#if IS_ENABLED(CONFIG_DEBUG_FS) struct dentry *dbgfs_dir; -#endif /* CONFIG_DEBUG_FS */ int pmc_xram_read_bit; struct mutex lock; /* generic mutex lock for PMC Core */ From patchwork Fri Oct 30 06:02:10 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390824 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=d5JmoOWg; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsFH0ByKz9sRk; Fri, 30 Oct 2020 17:03:47 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVm-0008MK-0P; Fri, 30 Oct 2020 06:03:42 +0000 Received: from mail-pg1-f193.google.com ([209.85.215.193]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVe-00082t-OR for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:34 +0000 Received: by mail-pg1-f193.google.com with SMTP id z24so4323107pgk.3 for ; Thu, 29 Oct 2020 23:03:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=NBW/fQCAMbRI6Fe+AlsMEsyB/g9joiQsFlUpKUheysg=; b=d5JmoOWgpZZKlB22S83slVYws1zU7ttb6lYcPWBAwzIkh7YkuMDxa+FHefAAiLbmt4 vI+CENfaSHwNUb3Xgkd4RAXKAQSUZgj2fFRwjQMSsJxHogUmjXzZU0neVDYyC9WDrjMr uvJvDBildv+L0zSfiNigkPMhCcV9uJ4c3Sr60ZfLGD/Bxm1fEEmWxYkdsL2HXK535Lps fDbLMZJ5b9xd49wJhT5Szu1HQbk68/EnvPLGJpvYCIPb6BDukrhCgc5h9vz0V0vOQ7W4 gbyaDeolfng2as/CkNek4S0JsejIlUJNFOMI8LrLed4nnjxXZfcUwy9/X2TtW/aWrs1Q PH6Q== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=NBW/fQCAMbRI6Fe+AlsMEsyB/g9joiQsFlUpKUheysg=; b=eIwRc00780+UFzzylLow1yp5lnQqMV9ymgas09PrJc5NOpmq8WfspTl8PH+AxR630+ 5eIus5gspRSKd0rO+dh3ssQcZAMb8lf5VvqC+cYP604RMBy1p1ubUXnjlReu4Z1mxi+r 3dNmXkPeIOdAopGrH+l/sEpd9UDDqGGoPhpnTLvUDv49UC5Nx719kBV7EFqmWpuYDHVA Xg0f8UxJ5pjl94X5J/iPYeFX6D9ZMeEpOmgatqj6rlAvVm69ivzn1BVUc4FdDBGElnpt 2+a2RrgCzPKZxrG2H+xqRIASXtCcOQ5w7IlEH4a0arX5paxo7Ss6mPx46iSXn1Yl2oWP 3wkA== X-Gm-Message-State: AOAM531oILo1/hxTC+ee4fK1BR6fB+v2ZaTXOKomIqQuj4nv5A8xZMfg tEsblj0GW+IyZhFRmcpnBM7Kj+IEyjPnRg== X-Google-Smtp-Source: ABdhPJw0P2eJhCGvXt68oHw7wobZlkhOfk9m3hP/BPtY2eejl1oSdxTWr2pJ+2DTsn1pbzrx7HFIYg== X-Received: by 2002:a65:6a46:: with SMTP id o6mr212153pgu.36.1604037800041; Thu, 29 Oct 2020 23:03:20 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id w74sm4785013pff.200.2020.10.29.23.03.19 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:19 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 19/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name Date: Fri, 30 Oct 2020 14:02:10 +0800 Message-Id: <20201030060214.780883-25-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.193; envelope-from=acelan@gmail.com; helo=mail-pg1-f193.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Sathyanarayana Nujella BugLink: https://bugs.launchpad.net/bugs/1899883 PMC debug tools use lpm0's 23rd bit to reflect Main PLL, not just Audio PLL. So, update tgl_lpm0 debug reg bit map name. Signed-off-by: Sathyanarayana Nujella Signed-off-by: Arava Jairaj Acked-by: David E. Box Signed-off-by: Andy Shevchenko (cherry picked from commit cd85b55cfceff62a95a81eea99859df6336b7d1f) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 7c8bdab078cf..5a0a25e9ccc9 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -415,7 +415,7 @@ static const struct pmc_bit_map tgl_lpm0_map[] = { {"PCIe_Gen3PLL_OFF_STS", BIT(20)}, {"OPIOPLL_OFF_STS", BIT(21)}, {"OCPLL_OFF_STS", BIT(22)}, - {"AudioPLL_OFF_STS", BIT(23)}, + {"MainPLL_OFF_STS", BIT(23)}, {"MIPIPLL_OFF_STS", BIT(24)}, {"Fast_XTAL_Osc_OFF_STS", BIT(25)}, {"AC_Ring_Osc_OFF_STS", BIT(26)}, From patchwork Fri Oct 30 06:02:11 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390823 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=sOMRrw7W; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsFD5Mlqz9sRk; Fri, 30 Oct 2020 17:03:44 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVj-0008K0-KR; Fri, 30 Oct 2020 06:03:39 +0000 Received: from mail-pg1-f194.google.com ([209.85.215.194]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVe-00085Q-U7 for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:35 +0000 Received: by mail-pg1-f194.google.com with SMTP id t14so4328120pgg.1 for ; Thu, 29 Oct 2020 23:03:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=39TOTdTUWJ/LgGL/JNd/sqwP/NyoCorqNjG53R959BI=; b=sOMRrw7Wk5oJYxeMuGyl+aB83hmyOvkICLmGnVbnnToNnQ0ll75cIFUWsypGDAGrv8 Q5g47hsmayP4iB7rDKXsVxDO5vH0Ov8RYwqA7Yl4vXutu0poReeU75h3hxKrWBttnzZb 7oydElhoBQRHXafFGguIOq8Y1qpbI8hGBawtRiGPCLlZHVtrlL/082mC7waHb7JCKRRo d0jETvTu8uFY1AmH/LTC46T0UnMiXvYLsrrE2S6vWJDNf7WlgVhoZitqlBaoPpa7hStV 5R2bByljs6bsipmjIsVH/0l0NT79PHkBo48aASr2FCa3ZjdAheGdNVm7Af3iHEoQ++kS mnUA== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=39TOTdTUWJ/LgGL/JNd/sqwP/NyoCorqNjG53R959BI=; b=Lq438AeuP205CwoPIhgipWUgj8DUcqQfUkOXgSfXVIjNtNMq5PZAveHyMA9uk+djT8 ekUswSOGqMnds4A9p5OmKQWgm3bysor30AR74ttDsTlKX9PzMkNQ2lnwlMhSGB86Vh1q DskGNATW+KKkRPpNKjL2wMQoNgKXk97sV+heXcEMa9Ls+H1QbAmG1JB6VNgFzP/MIsno r1vQs2UBYQJ8U3mk2ccdZtpKBXX+jhiRgFoauQoYtmkBpWQZvmJQCi5b4rxtMeXV7oEm X5PBs8AfVk0nGBZOw1iH+3g6vg/Mxz5wJ9A9rfWdIqdyKMviDOwu8U3JlWqenemqZaf+ eliw== X-Gm-Message-State: AOAM532dakW47vITuACMWt0tDIo32lHbvd4PpjHUQw1oDYFNTcgOAtN4 hH5IhTKUxQUbXxTN4wqBrRUsljtB2oW1yQ== X-Google-Smtp-Source: ABdhPJxJNKYAVVOW3yWmu4QGSs4WTKDu7ln/oVbvouCiEokFjVSys77utv2U+3gX4r+zVwpl7ZTSFQ== X-Received: by 2002:a63:5b63:: with SMTP id l35mr896114pgm.70.1604037802952; Thu, 29 Oct 2020 23:03:22 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id t13sm4836557pfc.1.2020.10.29.23.03.22 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:22 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 20/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() Date: Fri, 30 Oct 2020 14:02:11 +0800 Message-Id: <20201030060214.780883-26-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.194; envelope-from=acelan@gmail.com; helo=mail-pg1-f194.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gaurav Singh BugLink: https://bugs.launchpad.net/bugs/1899883 Check bounds before accessing map[] array. Signed-off-by: Gaurav Singh Signed-off-by: Andy Shevchenko (cherry picked from commit aff374dfe7330be10a20c97bd0b3196c153e9f9e) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 5a0a25e9ccc9..338ea5222555 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -795,7 +795,7 @@ static int pmc_core_mphy_pg_show(struct seq_file *s, void *unused) msleep(10); val_high = pmc_core_reg_read(pmcdev, SPT_PMC_MFPMC_OFFSET); - for (index = 0; map[index].name && index < 8; index++) { + for (index = 0; index < 8 && map[index].name; index++) { seq_printf(s, "%-32s\tState: %s\n", map[index].name, map[index].bit_mask & val_low ? "Not power gated" : From patchwork Fri Oct 30 06:02:12 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390825 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=fajX+D9x; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsFK43qRz9sRk; Fri, 30 Oct 2020 17:03:49 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVo-0008OI-JR; Fri, 30 Oct 2020 06:03:44 +0000 Received: from mail-pf1-f194.google.com ([209.85.210.194]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVh-000873-2o for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:37 +0000 Received: by mail-pf1-f194.google.com with SMTP id e15so4346382pfh.6 for ; Thu, 29 Oct 2020 23:03:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SvD6JxlMAKP7r/zqlbZx18E/nIvSlTG0Keasyno72dU=; b=fajX+D9x7ubSh3BwdyVODigyfc4aqXVSblZOHO8/WL6H0X4TpERvc0WpDk8JoU3Fgo 6P5aUVHOoGEa9C8J9ND9IQxruF3F8o4Z6Y9k4c89CDQt/o6/PSBNpWfSLKUMrY0QNRUC GCC7A63rOT7d7snf7SQlEcvk8GWyt8DVk0kpo1n4e6NFmUV6LvTG8KQp/NzGc7gb4pMY OFu8VOYxPnQHL8cxmt7oUtZagg7fF6+bsSpv5R1ayqUH8lkrJFSrIJdiTV87gKOihAiK T/BAjqbmaopXCPsI41FoUY4Qh3/gYDY04f19D3a2edcbKGeg9DSMFM6rw5mwq1nApYAn 184g== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=SvD6JxlMAKP7r/zqlbZx18E/nIvSlTG0Keasyno72dU=; b=TzlbozLHeXgXdfg2exOnr5U4DivXdABaepJN2Ly1J1MS3lhdlrhz5FVDbnZbHqkPZl Z0QG25bHeTUOPBIUcMvLbksr8dAy0Kd5kwV7n3A7j+ysaJH9Ivl0bS/G/5GdQUUFquGB 6GUVw4ZQvDvCZNTPydIuUs399OKpmdC08a80UxlrZj+4rVmlTicg0mA1INDluAsGAWbZ HjkE9/NVU0g8f7hkIcY7jhJlH2DpBsaXSgknSpy6oSRnLLJ/M0NNYnFtcIErnhNhE9xg RmhOix16K4mIfyF7e99WY/TMpYUaRRaVczyyo7+FHNA3zmu78kgXgtPlDhE3mcEkt3ei PptA== X-Gm-Message-State: AOAM532v4doupz/u2ZbaWfE7S/g1LZuDaxU+cYXHqb9KveKUrbmHEdkH RLwSuIq7cLUpvJGcMMKx9E0/QG/WZj9rmg== X-Google-Smtp-Source: ABdhPJxPziGpTKAlyR+AQkFFUvajjH826Fynp84WyXjk5+admcSfZ5O7n6EtgdxyA/boDJu243udmw== X-Received: by 2002:a17:90a:d490:: with SMTP id s16mr857302pju.185.1604037804810; Thu, 29 Oct 2020 23:03:24 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id o15sm4897975pfd.16.2020.10.29.23.03.24 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:24 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 21/23][SRU][OEM-5.6] platform/x86: pmc_core: Use descriptive names for LPM registers Date: Fri, 30 Oct 2020 14:02:12 +0800 Message-Id: <20201030060214.780883-27-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.210.194; envelope-from=acelan@gmail.com; helo=mail-pf1-f194.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: "David E. Box" BugLink: https://bugs.launchpad.net/bugs/1899883 TigerLake Lower Power Mode (LPM) registers are grouped by functionality but were given simple enumerated names in the code (lpm0, lpm1, ...). Instead, give the register blocks names that describe their usage. Suggested-by: Andy Shevchenko Signed-off-by: David E. Box Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20201006224702.12697-2-david.e.box@linux.intel.com Signed-off-by: Hans de Goede (cherry picked from commit e973f1d372dca5ac1d107ec6134f72e566fdf968) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index 338ea5222555..ed9fdf7c8928 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -409,7 +409,7 @@ static const struct pmc_reg_map icl_reg_map = { .ltr_ignore_max = ICL_NUM_IP_IGN_ALLOWED, }; -static const struct pmc_bit_map tgl_lpm0_map[] = { +static const struct pmc_bit_map tgl_clocksource_status_map[] = { {"USB2PLL_OFF_STS", BIT(18)}, {"PCIe/USB3.1_Gen2PLL_OFF_STS", BIT(19)}, {"PCIe_Gen3PLL_OFF_STS", BIT(20)}, @@ -425,7 +425,7 @@ static const struct pmc_bit_map tgl_lpm0_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm1_map[] = { +static const struct pmc_bit_map tgl_power_gating_status_map[] = { {"SPI_PG_STS", BIT(2)}, {"xHCI_PG_STS", BIT(3)}, {"PCIe_Ctrller_A_PG_STS", BIT(4)}, @@ -453,7 +453,7 @@ static const struct pmc_bit_map tgl_lpm1_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm2_map[] = { +static const struct pmc_bit_map tgl_d3_status_map[] = { {"ADSP_D3_STS", BIT(0)}, {"SATA_D3_STS", BIT(1)}, {"xHCI0_D3_STS", BIT(2)}, @@ -468,7 +468,7 @@ static const struct pmc_bit_map tgl_lpm2_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm3_map[] = { +static const struct pmc_bit_map tgl_vnn_req_status_map[] = { {"GPIO_COM0_VNN_REQ_STS", BIT(1)}, {"GPIO_COM1_VNN_REQ_STS", BIT(2)}, {"GPIO_COM2_VNN_REQ_STS", BIT(3)}, @@ -493,7 +493,7 @@ static const struct pmc_bit_map tgl_lpm3_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm4_map[] = { +static const struct pmc_bit_map tgl_vnn_misc_status_map[] = { {"CPU_C10_REQ_STS_0", BIT(0)}, {"PCIe_LPM_En_REQ_STS_3", BIT(3)}, {"ITH_REQ_STS_5", BIT(5)}, @@ -509,7 +509,7 @@ static const struct pmc_bit_map tgl_lpm4_map[] = { {} }; -static const struct pmc_bit_map tgl_lpm5_map[] = { +static const struct pmc_bit_map tgl_signal_status_map[] = { {"LSX_Wake0_En_STS", BIT(0)}, {"LSX_Wake0_Pol_STS", BIT(1)}, {"LSX_Wake1_En_STS", BIT(2)}, @@ -546,12 +546,12 @@ static const struct pmc_bit_map tgl_lpm5_map[] = { }; static const struct pmc_bit_map *tgl_lpm_maps[] = { - tgl_lpm0_map, - tgl_lpm1_map, - tgl_lpm2_map, - tgl_lpm3_map, - tgl_lpm4_map, - tgl_lpm5_map, + tgl_clocksource_status_map, + tgl_power_gating_status_map, + tgl_d3_status_map, + tgl_vnn_req_status_map, + tgl_vnn_misc_status_map, + tgl_signal_status_map, NULL }; From patchwork Fri Oct 30 06:02:13 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390826 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=iDxtsIme; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsFL3lTmz9sTf; Fri, 30 Oct 2020 17:03:50 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVq-0008Pn-D6; Fri, 30 Oct 2020 06:03:46 +0000 Received: from mail-pg1-f196.google.com ([209.85.215.196]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVh-00089X-KD for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:37 +0000 Received: by mail-pg1-f196.google.com with SMTP id 15so4288925pgd.12 for ; Thu, 29 Oct 2020 23:03:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=O45UHmU0Thm+KMevYQDfunDcvRLhpdcggEouR84Fcf4=; b=iDxtsImeDORjNXlkNXTIz5lydJmZjJASlppuLj9fj2mTwz5pFVkUmUBqZ7b6EbIzgG UenGzs35u1s4uTw3I9oAa5KGUn8SnZeHpr8n78g41bKV1bsJGvpHMcD+UkIIkEgvpBvT Y8q3j9wzAYF6G/UjNrukTbCTzLAnDhNqvOp/Kg023OPpLZ3VfCjiPZlEJGTfPJPJbmRP 1xAgUE7+NF+HoiAYKLmgfKIxzfDqX5ynS81ASxs+nsGyEQU1rmEnQGl1JkdPG4Eie2eo 1zY7ZUbonpUlE+JmNwDEfGNf4y6TAcPQ/nxQtsS+O1mS8gnve0chVwcb/cIgnRchNYn0 hqKA== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=O45UHmU0Thm+KMevYQDfunDcvRLhpdcggEouR84Fcf4=; b=Z4tgEbL2s6cek++LBE8PpN6UdCIcAHkRTIPu1yLZZvUBkhk0hySaahANY/ZyexJ3hq Ip9D8ID4WTZQxz4JlpzTN7RIB1AOvUDMGaToXszUn7WDDHzoVQ90FHGdrm7WO1uirJSJ NXCd/LNqDy0uOzlfdbQCDkv755eUClYK+rK0qTLSgjPr9o3N6NEqsnFsdCN5iGp8DMKn fVcWUyk55SghNwatkq0gLVLQYeOXnbgRCXXYfTR/1zlBKU0v6hXiTqJ8OIWvL2yfCjbI DyatJIRb7Mzit4MFDK5CiItBDnG45t/VhVVoPIBK1k1itLBZar2oI6gVYI5oESfSQ1GQ 7+KQ== X-Gm-Message-State: AOAM532cVu5PBWdwsufLL49FNh8HxMVOE/2aseFQiORXOPq8czn3ikYj o1Rn/tkw5dJMePlMy0ppdswypxQg1uOFMA== X-Google-Smtp-Source: ABdhPJwqNM0zFEzBv4911VXkNTjtFrfjYososcAeiRvd17oTTCFOokhwSITsh0agaYJnop3bNMTgyA== X-Received: by 2002:a05:6a00:44:b029:155:18ee:a71e with SMTP id i4-20020a056a000044b029015518eea71emr8192373pfk.1.1604037807373; Thu, 29 Oct 2020 23:03:27 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id i2sm1870638pjk.12.2020.10.29.23.03.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:26 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 22/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Fix TigerLake power gating status map Date: Fri, 30 Oct 2020 14:02:13 +0800 Message-Id: <20201030060214.780883-28-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.196; envelope-from=acelan@gmail.com; helo=mail-pg1-f196.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 TigerLake's LPM power gating status register has errors in the bit-to-name mapping as well as with the marked reserved bits according to the actual implementation. Hence, update the right bit-to-name mapping and the reserved bits in accordance with actual implementation. Cc: Srinivas Pandruvada Cc: Andy Shevchenko Cc: David E. Box Signed-off-by: Gayatri Kammela Signed-off-by: David E. Box Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20201006224702.12697-3-david.e.box@linux.intel.com Signed-off-by: Hans de Goede (cherry picked from commit 652036bd5be0ac94fd1db851d72ece8ee133c74d) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 48 +++++++++++++-------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index ed9fdf7c8928..cf4006e08c69 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -426,30 +426,30 @@ static const struct pmc_bit_map tgl_clocksource_status_map[] = { }; static const struct pmc_bit_map tgl_power_gating_status_map[] = { - {"SPI_PG_STS", BIT(2)}, - {"xHCI_PG_STS", BIT(3)}, - {"PCIe_Ctrller_A_PG_STS", BIT(4)}, - {"PCIe_Ctrller_B_PG_STS", BIT(5)}, - {"PCIe_Ctrller_C_PG_STS", BIT(6)}, - {"GBE_PG_STS", BIT(7)}, - {"SATA_PG_STS", BIT(8)}, - {"HDA0_PG_STS", BIT(9)}, - {"HDA1_PG_STS", BIT(10)}, - {"HDA2_PG_STS", BIT(11)}, - {"HDA3_PG_STS", BIT(12)}, - {"PCIe_Ctrller_D_PG_STS", BIT(13)}, - {"ISIO_PG_STS", BIT(14)}, - {"SMB_PG_STS", BIT(16)}, - {"ISH_PG_STS", BIT(17)}, - {"ITH_PG_STS", BIT(19)}, - {"SDX_PG_STS", BIT(20)}, - {"xDCI_PG_STS", BIT(25)}, - {"DCI_PG_STS", BIT(26)}, - {"CSME0_PG_STS", BIT(27)}, - {"CSME_KVM_PG_STS", BIT(28)}, - {"CSME1_PG_STS", BIT(29)}, - {"CSME_CLINK_PG_STS", BIT(30)}, - {"CSME2_PG_STS", BIT(31)}, + {"CSME_PG_STS", BIT(0)}, + {"SATA_PG_STS", BIT(1)}, + {"xHCI_PG_STS", BIT(2)}, + {"UFSX2_PG_STS", BIT(3)}, + {"OTG_PG_STS", BIT(5)}, + {"SPA_PG_STS", BIT(6)}, + {"SPB_PG_STS", BIT(7)}, + {"SPC_PG_STS", BIT(8)}, + {"SPD_PG_STS", BIT(9)}, + {"SPE_PG_STS", BIT(10)}, + {"SPF_PG_STS", BIT(11)}, + {"LSX_PG_STS", BIT(13)}, + {"P2SB_PG_STS", BIT(14)}, + {"PSF_PG_STS", BIT(15)}, + {"SBR_PG_STS", BIT(16)}, + {"OPIDMI_PG_STS", BIT(17)}, + {"THC0_PG_STS", BIT(18)}, + {"THC1_PG_STS", BIT(19)}, + {"GBETSN_PG_STS", BIT(20)}, + {"GBE_PG_STS", BIT(21)}, + {"LPSS_PG_STS", BIT(22)}, + {"MMP_UFSX2_PG_STS", BIT(23)}, + {"MMP_UFSX2B_PG_STS", BIT(24)}, + {"FIA_PG_STS", BIT(25)}, {} }; From patchwork Fri Oct 30 06:02:14 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AceLan Kao X-Patchwork-Id: 1390827 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=S4WUtHGB; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4CMsFQ3QYgz9sRk; Fri, 30 Oct 2020 17:03:54 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1kYNVt-0008Sp-Oy; Fri, 30 Oct 2020 06:03:49 +0000 Received: from mail-pg1-f194.google.com ([209.85.215.194]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kYNVk-0008Bo-UH for kernel-team@lists.ubuntu.com; Fri, 30 Oct 2020 06:03:41 +0000 Received: by mail-pg1-f194.google.com with SMTP id k9so2615968pgt.9 for ; Thu, 29 Oct 2020 23:03:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ih7+Eeifq5K/N+GH/i9RRWnXMAp8yR9UjAQ3r73Rr24=; b=S4WUtHGB1kIvvEMhiTw/iv6pl0aPQMqWfJah4uoX6hFOg8kByX9428D9bk7WsgwYNr epAZWVIyMC7Yszse2oFzTet2OvGWpVZXaRbzmjU9jSyvi7Ltbr6yWyWIgF0iw68yi03X 8nuKucF+8YiYcvyDT0sfNEOl/mZpopcawTYGhY41eBpQ2F/AR7rbbxZ4oj6e7GceqPqP 5sl7/8ktz/3QEsbK5LvLXc4pHFFlWNBi+gp8wqlcVPDdfGVhUKaneBAGv4O3p2kh1qj6 +FtIf9/EuH0k6l8NjllVkty8G82C5HqMOzVQ8eB0trQo8PFAL6R1r8ua63Bett8eptRT GTsA== 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:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ih7+Eeifq5K/N+GH/i9RRWnXMAp8yR9UjAQ3r73Rr24=; b=r3BD8l9ec6UBgUL8T0lEvlgpewU28d4lQKYw6luyV+DypiZronQyV3wJgRg9KekjvN Kl558rJNHG88atn8nD6oSjGJ4ejHzWU4bUzWcn7gRP+mvmA+whO3xUccItEKn69yqm+2 X2C7qFjErFyJmCJ6e9ecrgh3o4bYmRxgDKJefaA3HbkgovIM6G4VKIu7xxxmAjf65lo4 dQLHuZVkdQ3j2wQUSs3WAakOo6RyEyj4msw3XuiLm3SvGxMx+wsS2Q0+OvLNpNDVY1zr JqqZttBQfeF525AueT1TxVfzB/eFcZBFvR0nmlsChuHndS9UxFsLQgx1caPfwRejdvgV EEbQ== X-Gm-Message-State: AOAM531vroFHP+dZrgUgkoKSTw53j5lWC/eaYERXBmtebk7GAWWQAMir vSQYLdgxhabArdG+OjEkMi5ELG8XP3rcZQ== X-Google-Smtp-Source: ABdhPJxZc5dYvS/AM73SVvyxqTbBFTQ+Yo17OTbIZdK6N6JXbl1j1RZDIWjXz6+DDdQMufXbRe3I/Q== X-Received: by 2002:a62:14c6:0:b029:163:c9b6:5bfb with SMTP id 189-20020a6214c60000b0290163c9b65bfbmr7706540pfu.37.1604037809776; Thu, 29 Oct 2020 23:03:29 -0700 (PDT) Received: from localhost (61-220-137-37.HINET-IP.hinet.net. [61.220.137.37]) by smtp.gmail.com with ESMTPSA id gq24sm768162pjb.30.2020.10.29.23.03.28 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2020 23:03:29 -0700 (PDT) From: AceLan Kao To: kernel-team@lists.ubuntu.com Subject: [PATCH 23/23][SRU][OEM-5.6] platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value Date: Fri, 30 Oct 2020 14:02:14 +0800 Message-Id: <20201030060214.780883-29-acelan.kao@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201030060214.780883-1-acelan.kao@canonical.com> References: <20201030060214.780883-1-acelan.kao@canonical.com> MIME-Version: 1.0 Received-SPF: pass client-ip=209.85.215.194; envelope-from=acelan@gmail.com; helo=mail-pg1-f194.google.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Gayatri Kammela BugLink: https://bugs.launchpad.net/bugs/1899883 slp_s0 counter value displayed via debugfs interface is calculated by multiplying the granularity for crystal oscillator tick as 100us with the value read from using slp_s0 offset. But the granularity of the tick varies from platform to platform and it needs to be fixed. Hence, specify granularity of the tick for each platform, so that the value of the slp_s0 counter is accurate. Signed-off-by: Gayatri Kammela Signed-off-by: David E. Box Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20201006224702.12697-4-david.e.box@linux.intel.com Signed-off-by: Hans de Goede (cherry picked from commit 025f26de7fa0fc40c8baf6c19fb273500f3321f0) Signed-off-by: AceLan Kao --- drivers/platform/x86/intel_pmc_core.c | 10 +++++++--- drivers/platform/x86/intel_pmc_core.h | 5 ++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel_pmc_core.c index cf4006e08c69..122eb53eb595 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel_pmc_core.c @@ -154,6 +154,7 @@ static const struct pmc_reg_map spt_reg_map = { .ltr_show_sts = spt_ltr_show_map, .msr_sts = msr_map, .slp_s0_offset = SPT_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = SPT_PMC_SLP_S0_RES_COUNTER_STEP, .ltr_ignore_offset = SPT_PMC_LTR_IGNORE_OFFSET, .regmap_length = SPT_PMC_MMIO_REG_LEN, .ppfear0_offset = SPT_PMC_XRAM_PPFEAR0A, @@ -380,6 +381,7 @@ static const struct pmc_bit_map cnp_ltr_show_map[] = { static const struct pmc_reg_map cnp_reg_map = { .pfear_sts = ext_cnp_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = SPT_PMC_SLP_S0_RES_COUNTER_STEP, .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, @@ -396,6 +398,7 @@ static const struct pmc_reg_map cnp_reg_map = { static const struct pmc_reg_map icl_reg_map = { .pfear_sts = ext_icl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = ICL_PMC_SLP_S0_RES_COUNTER_STEP, .slps0_dbg_maps = cnp_slps0_dbg_maps, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, @@ -558,6 +561,7 @@ static const struct pmc_bit_map *tgl_lpm_maps[] = { static const struct pmc_reg_map tgl_reg_map = { .pfear_sts = ext_tgl_pfear_map, .slp_s0_offset = CNP_PMC_SLP_S0_RES_COUNTER_OFFSET, + .slp_s0_res_counter_step = TGL_PMC_SLP_S0_RES_COUNTER_STEP, .ltr_show_sts = cnp_ltr_show_map, .msr_sts = msr_map, .ltr_ignore_offset = CNP_PMC_LTR_IGNORE_OFFSET, @@ -586,9 +590,9 @@ static inline void pmc_core_reg_write(struct pmc_dev *pmcdev, int reg_offset, writel(val, pmcdev->regbase + reg_offset); } -static inline u64 pmc_core_adjust_slp_s0_step(u32 value) +static inline u64 pmc_core_adjust_slp_s0_step(struct pmc_dev *pmcdev, u32 value) { - return (u64)value * SPT_PMC_SLP_S0_RES_COUNTER_STEP; + return (u64)value * pmcdev->map->slp_s0_res_counter_step; } static int pmc_core_dev_state_get(void *data, u64 *val) @@ -598,7 +602,7 @@ static int pmc_core_dev_state_get(void *data, u64 *val) u32 value; value = pmc_core_reg_read(pmcdev, map->slp_s0_offset); - *val = pmc_core_adjust_slp_s0_step(value); + *val = pmc_core_adjust_slp_s0_step(pmcdev, value); return 0; } diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel_pmc_core.h index 5eae55d80226..f33cd2c34835 100644 --- a/drivers/platform/x86/intel_pmc_core.h +++ b/drivers/platform/x86/intel_pmc_core.h @@ -30,7 +30,7 @@ #define SPT_PMC_MPHY_CORE_STS_1 0x1142 #define SPT_PMC_MPHY_COM_STS_0 0x1155 #define SPT_PMC_MMIO_REG_LEN 0x1000 -#define SPT_PMC_SLP_S0_RES_COUNTER_STEP 0x64 +#define SPT_PMC_SLP_S0_RES_COUNTER_STEP 0x68 #define PMC_BASE_ADDR_MASK ~(SPT_PMC_MMIO_REG_LEN - 1) #define MTPMC_MASK 0xffff0000 #define PPFEAR_MAX_NUM_ENTRIES 12 @@ -185,8 +185,10 @@ enum ppfear_regs { #define ICL_PPFEAR_NUM_ENTRIES 9 #define ICL_NUM_IP_IGN_ALLOWED 20 #define ICL_PMC_LTR_WIGIG 0x1BFC +#define ICL_PMC_SLP_S0_RES_COUNTER_STEP 0x64 #define TGL_NUM_IP_IGN_ALLOWED 22 +#define TGL_PMC_SLP_S0_RES_COUNTER_STEP 0x7A /* * Tigerlake Power Management Controller register offsets @@ -245,6 +247,7 @@ struct pmc_reg_map { const struct pmc_bit_map *msr_sts; const struct pmc_bit_map **lpm_sts; const u32 slp_s0_offset; + const int slp_s0_res_counter_step; const u32 ltr_ignore_offset; const int regmap_length; const u32 ppfear0_offset;