From patchwork Mon Oct 9 19:05:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: srinivas pandruvada X-Patchwork-Id: 15114 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a888:0:b0:403:3b70:6f57 with SMTP id x8csp2068870vqo; Mon, 9 Oct 2023 12:06:58 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEczxbnrR9M1yUl6lMNJn1E6HmPF7KIZYKvczFsLXAGUc1XKtT6BL6+7hao601SMICMk1BR X-Received: by 2002:a05:6e02:1bc7:b0:351:5d8f:d299 with SMTP id x7-20020a056e021bc700b003515d8fd299mr21486074ilv.7.1696878418097; Mon, 09 Oct 2023 12:06:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696878418; cv=none; d=google.com; s=arc-20160816; b=wH1rvtiuTvLOMxWoUoHd/R1XPL5PBOwk/fvcNIVf/eCOzZwtfVAb1OTE4yfe1CDrSx n8MICqL6pKU4r4Kl9B6c2JukbCjbGwd3vstAumzr61wybQMT+ILhS+ZMsNXqwzgVLmUV t2OAP88bpu+MXIRRR3AajMUIVJ+bYOWxZs+uhi7lucLNrRsVhgvXf1sk6ykdtwHtzb+e BxuSf+9yKk8ZzlsMTQqh8V3505RssWUhjQuel7IjJ5uhKA5GrvVNP0z7BJHJN8y7OPJ4 bq8uVGXfOortyN1ip+T4T4fv8sHGIr0eQw2SRdn6yI/uwxkgAbAbjKW22YXqJ/mvgsW2 lL/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=sVnHVTjwL9GPJCCeBvfKoFdt9/O6MmjjYoD6XwlSCkU=; fh=HlKkiquNc46jVE3LHXufgrfsbaUPEXN8C6VLDpazkiQ=; b=VIrIk9iLqn69SeiUfaxikfVWU/xsEK17DT+yJPTm19lifyvgap1USLNpVD0JoWljDN IJUXbGJbiHpKzCKWxSvD2Iwj4feB6TZaJ46YQOlRIXkAolxO3z45QgN4YjE+bPtJKuCQ eb+hHl/NXT+nHXEtVD/qG4J76TJvGteTUx3UwNzRGfeyJ3WRq6UpQQiGGDwK8ZgKIDkA hI0+0miuhSLMw3aNUdiuWCKWH92INHCeyLV63gZ+zudErT7SsIBiXbGSSo+birhGeGS1 /Ee4/wYfKjFFpjEf8EHiq/QobpfkQN7fqgwBD8aJ5n2b7zsi8i0iELkJyvSxvhHfDcKJ 3mbw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=oA6GdJjg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id m20-20020a637114000000b00577448019cbsi10633038pgc.841.2023.10.09.12.06.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 12:06:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=oA6GdJjg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id D526080FC170; Mon, 9 Oct 2023 12:06:18 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346663AbjJITGD (ORCPT + 18 others); Mon, 9 Oct 2023 15:06:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59842 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346660AbjJITGB (ORCPT ); Mon, 9 Oct 2023 15:06:01 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 860D0A4; Mon, 9 Oct 2023 12:06:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1696878360; x=1728414360; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=f7etTLNPVQPXqURaYmQQ/fnq6PNGB6oZHTXtNFJ1FHk=; b=oA6GdJjgsECHBdnS94qtkIBQJ+xKAWR8OqEWteQQQFaXkBTHin0jJLfm FTNbupG7fmWM6ZzXFuuWMCAYse0bg5mqAK7ypAI/3PVhqubikmaxUN2Nb aUZG+uOOp239+msiOXOx51b03yn+qH925WP3JMdmc8C1aY1t7fAcaPpv8 qlw82KufHdVOYKs26IlcnULDoHtFTCiqUjrbO0ap7HtDsyL63OIumLRVy rBT60nBdWO0R65NBrd7vDjcsfG5OuUacraB+FrQTlts0TNWZ72XAOGlB3 NBg99beVc9fckcbiyIrfcv2Ga3g8WTHYaAfYuaL1CT+7qwdfXrf7sImnW A==; X-IronPort-AV: E=McAfee;i="6600,9927,10858"; a="415213765" X-IronPort-AV: E=Sophos;i="6.03,210,1694761200"; d="scan'208";a="415213765" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2023 12:06:00 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10858"; a="823445833" X-IronPort-AV: E=Sophos;i="6.03,210,1694761200"; d="scan'208";a="823445833" Received: from spandruv-desk.jf.intel.com ([10.54.75.14]) by fmsmga004.fm.intel.com with ESMTP; 09 Oct 2023 12:05:59 -0700 From: Srinivas Pandruvada To: daniel.lezcano@linaro.org, rafael@kernel.org, rui.zhang@intel.com Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Srinivas Pandruvada Subject: [PATCH v2 0/7] thermal: processor_thermal: Power floor status Date: Mon, 9 Oct 2023 12:05:31 -0700 Message-Id: <20231009190538.2488792-1-srinivas.pandruvada@linux.intel.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 X-Spam-Status: No, score=2.8 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Mon, 09 Oct 2023 12:06:19 -0700 (PDT) X-Spam-Level: ** X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779305984117213341 X-GMAIL-MSGID: 1779305984117213341 Support power floor notifications for Meteor Lake processors. The first three changes is to prepare for power floor status and others add support for power floor. v2 - Use common define for offset - Fix potential race during clearing of interrupt with workload hint - Address comment for v1 for thermal: int340x: processor_thermal: Support power floor notifications Srinivas Pandruvada (7): thermal: int340x: processor_thermal: Move interrupt status MMIO offset to common header thermal: int340x: processor_thermal: Common function to clear SOC interrupt thermal: int340x: processor_thermal: Set feature mask before proc_thermal_add thermal: int340x: processor_thermal: Support power floor notifications thermal: int340x: processor_thermal: Handle power floor interrupts thermal: int340x: processor_thermal: Enable power floor support selftests/thermel/intel: Add test to read power floor status .../driver-api/thermal/intel_dptf.rst | 8 ++ .../thermal/intel/int340x_thermal/Makefile | 1 + .../processor_thermal_device.c | 68 +++++++++- .../processor_thermal_device.h | 11 ++ .../processor_thermal_device_pci.c | 43 ++++-- .../processor_thermal_power_floor.c | 126 ++++++++++++++++++ .../processor_thermal_wt_hint.c | 3 - tools/testing/selftests/Makefile | 1 + .../thermal/intel/power_floor/Makefile | 12 ++ .../intel/power_floor/power_floor_test.c | 108 +++++++++++++++ 10 files changed, 365 insertions(+), 16 deletions(-) create mode 100644 drivers/thermal/intel/int340x_thermal/processor_thermal_power_floor.c create mode 100644 tools/testing/selftests/thermal/intel/power_floor/Makefile create mode 100644 tools/testing/selftests/thermal/intel/power_floor/power_floor_test.c