From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1D8F7C3DA49 for ; Thu, 25 Jul 2024 12:24:03 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id E4AD110E7E3; Thu, 25 Jul 2024 12:24:02 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="hIt1906n"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) by gabe.freedesktop.org (Postfix) with ESMTPS id E011E10E7E3 for ; Thu, 25 Jul 2024 12:24:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1721910241; x=1753446241; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=neOhFOn+xG1toDh0HK+a7uIG1wSFkpvcedJKJXcuBEg=; b=hIt1906n0RBncOCej4cXeWor7quCH0U8grGUsZSuegD2auh8aReQf6+d jxOPm+yGfO8GjK6efIMwVWCMxoAQDc2F8KHSId1AKtTvYGN1AphanGSkk uocHHKjHm3eC6nMpAys8cjn5DskWZi562cC8Xyy27LmCN/IID/STPXbB7 Or0ZBV1LeT2an3xrv+vlrR+TiZeQ5Awe87pQr/KIhsSZ3Tli1Egt0J2ui 9xo3RtJePYquWS8UkSJHkESUtRW8fmhQ51usXk7cKG2d64cB+4lccj5+R fyhmqxt8rg69ZK09NK4Lw2UsEJBPg4gPTdQ6HXN3XBp/1BrKT02LHJ6MH g==; X-CSE-ConnectionGUID: HmrRwdIgRIq6WyGkyn5ThA== X-CSE-MsgGUID: OD330fJQT/uHOBBr1B6UHA== X-IronPort-AV: E=McAfee;i="6700,10204,11143"; a="19493155" X-IronPort-AV: E=Sophos;i="6.09,235,1716274800"; d="scan'208";a="19493155" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jul 2024 05:24:01 -0700 X-CSE-ConnectionGUID: M8RXydNxQC+VkbMoGdzFow== X-CSE-MsgGUID: 7meGmohaRUKPgfg7Bcs9aw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.09,235,1716274800"; d="scan'208";a="53153587" Received: from awvttdev-05.aw.intel.com ([10.228.212.156]) by orviesa006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jul 2024 05:24:01 -0700 From: "Michael J. Ruhl" To: intel-xe@lists.freedesktop.org, platform-driver-x86@vger.kernel.org, david.e.box@linux.intel.com, ilpo.jarvinen@linux.intel.com, matthew.brost@intel.com, andriy.shevchenko@linux.intel.com Cc: michael.j.ruhl@intel.com Subject: [PATCH v9 0/6] Support PMT features in Xe Date: Thu, 25 Jul 2024 08:23:39 -0400 Message-ID: <20240725122346.4063913-1-michael.j.ruhl@intel.com> X-Mailer: git-send-email 2.44.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: intel-xe@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel Xe graphics driver List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-xe-bounces@lists.freedesktop.org Sender: "Intel-xe" DG2 and Battlemage have the Intel Platform Monitoring Technology (PMT) feature available, but not in the "standard" (pci endpoint) way. Add support to the vsec and Xe drivers to allow access to the PMT space for the DG2 and BMG devices. The intel_vsec_register() function allows drivers to provide telemetry header information (usually found at probe time), to allow the PMT driver to probe the telemetry features. Battlemage has a shared memory area (selected by index), so a callback function is required to access the appropriate PMT data. V2: Re-worked DG2 support patches using a base_adjust rather than a quirk. Updated GUID decode, for correct decode. v3: Fixed a documentation issue for the pmt struct. v4: Fixed a documentation issue in the xe_vsec.c module v5: Addressed review comments for patch 4 (Xe driver) Add r/b for the first three patches v6: Added kernel doc to moved data structure Added required include files Correct usage for FIELD_PREP()/FIELD_GET() Whitespace clean up Removed unnecessary type cast v7: Commit message updates v8: Added some r/b (patch 2 and 3). Updated kernel doc patch 2 (priv_data) patch 5 (base_adjust) v9: Add r/b for the Xe driver patches David E. Box (3): platform/x86/intel/vsec.h: Move to include/linux platform/x86/intel/vsec: Add PMT read callbacks platform/x86/intel/pmt: Use PMT callbacks Michael J. Ruhl (3): drm/xe/vsec: Support BMG devices platform/x86/intel/pmt: Add support for PMT base adjust drm/xe/vsec: Add support for DG2 MAINTAINERS | 3 +- drivers/gpu/drm/xe/Makefile | 1 + drivers/gpu/drm/xe/xe_device.c | 5 + drivers/gpu/drm/xe/xe_device_types.h | 6 + drivers/gpu/drm/xe/xe_vsec.c | 300 ++++++++++++++++++ drivers/gpu/drm/xe/xe_vsec.h | 13 + drivers/platform/x86/intel/pmc/core_ssram.c | 2 +- drivers/platform/x86/intel/pmt/class.c | 28 +- drivers/platform/x86/intel/pmt/class.h | 11 +- drivers/platform/x86/intel/pmt/crashlog.c | 2 +- drivers/platform/x86/intel/pmt/telemetry.c | 21 +- drivers/platform/x86/intel/sdsi.c | 3 +- drivers/platform/x86/intel/tpmi.c | 3 +- drivers/platform/x86/intel/vsec.c | 9 +- .../vsec.h => include/linux/intel_vsec.h | 50 ++- 15 files changed, 428 insertions(+), 29 deletions(-) create mode 100644 drivers/gpu/drm/xe/xe_vsec.c create mode 100644 drivers/gpu/drm/xe/xe_vsec.h rename drivers/platform/x86/intel/vsec.h => include/linux/intel_vsec.h (61%) -- 2.44.0