From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C67FE208AD for ; Wed, 5 Nov 2025 04:00:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762315254; cv=none; b=N7xxyrgpd9qTPDfjPMdO6DW81vgBjUzhoNt34DXXUjxMBtHTlCwXw+jncKVG4UfM7lEs5CCgCleSNXzirSD8kR6CeFdncFHr+tTXgTjhBekmzPkPsFF0YeLHpLfgJwP0rP/tf1lHds1kz5TjNSi0PbU6C9FuwMWQI27yoHDEe6k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762315254; c=relaxed/simple; bh=GE97+HNjs6vBiVOzuLYmHcAdJfCOtJcy8yNlcLtmFpw=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=ErxOfnPX2DCqq0an9iGBjhPCUE0Fzi5+MK2bNFEu3uSUs+999jAgK81ivhUwqLdDkBoEs5CAuzr/2uYC8GAx5KUz1mGTzET9iH5rRDIdp0bsa2YsT8xQ18KYkmQhONDz6RFXvhojWV4nRqKnzdeu6H9dN6lZloVQDT05PkUSCKs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=NIkwmh+o; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="NIkwmh+o" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1762315253; x=1793851253; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=GE97+HNjs6vBiVOzuLYmHcAdJfCOtJcy8yNlcLtmFpw=; b=NIkwmh+oOff856uAG+8mPY1sjlg9r7U2A5On+vPEK9tdVjHlGLqGR9fL Swov+WZp7jR6H/uzjMojlcfXzr+Bk1EhFrwzjc7t8rY+T2eSWIjyfNzDT C0h52Axski9xUrlIEfvQVS2xomn7EKhZAQCQoCQiQWQ76BAyBTGFSj6hJ B34xnvGcP4G6Yc1vsgBi4viZ8iAQfUuJG+RUdV2j1oZXpXhPbSFLPwc/e bXO4ytPrc0CjuF+b9PK+U7tVzWwCFe2zl0BwV5f8ZutE2PT7nfec9QDEo 4Z2kiOYJNg13VdUReFBVWL3aDt/LJMdydXmEokoNksASG+vi6YYd28h4h w==; X-CSE-ConnectionGUID: gfEWJfS3QGm76+N3tv81og== X-CSE-MsgGUID: BIx/KhrKTFuEizAdJvCpaA== X-IronPort-AV: E=McAfee;i="6800,10657,11531"; a="68259479" X-IronPort-AV: E=Sophos;i="6.17,312,1747724400"; d="scan'208";a="68259479" Received: from orviesa001.jf.intel.com ([10.64.159.141]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Nov 2025 20:00:52 -0800 X-CSE-ConnectionGUID: z6ycfIbhSyyS1cx58tNXag== X-CSE-MsgGUID: GM6oir/ARCilPBsEbHttCw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.19,280,1754982000"; d="scan'208";a="224588514" Received: from dwillia2-desk.jf.intel.com ([10.88.27.145]) by orviesa001.jf.intel.com with ESMTP; 04 Nov 2025 20:00:52 -0800 From: Dan Williams To: linux-pci@vger.kernel.org Cc: linux-coco@lists.linux.dev, bhelgaas@google.com, aneesh.kumar@kernel.org, yilun.xu@linux.intel.com, aik@amd.com, Arto Merilainen , =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= , Lukas Wunner , Samuel Ortiz , Suzuki K Poulose Subject: [PATCH 0/6] PCI/TSM: Finalize "Link" TSM infrastructure Date: Tue, 4 Nov 2025 20:00:49 -0800 Message-ID: <20251105040055.2832866-1-dan.j.williams@intel.com> X-Mailer: git-send-email 2.51.0 Precedence: bulk X-Mailing-List: linux-coco@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that the base series has settled [1], here is a collection of topics to finish off the "Link" side of the PCI/TSM core. Recall that "Link" refers to all the physical device security aspects of TEE Device Interface Security Protocol (TDISP) managed by the host kernel / VMM. [1]: http://lore.kernel.org/20251031212902.2256310-1-dan.j.williams@intel.com Add support for Address Association registers that helps root port hardware pick the Selective IDE Stream to use for a downstream memory transaction. Add support for devices that expect to have all Stream IDs on the device configured to unique values even if the given stream is not in use. Add an operation for requesting a device enter the LOCKED TDISP state (pci_tsm_bind())). This has no user outside of test code in the staging tree [2] for now, but examples exist in the SEV-TIO and ARM CCA RFC branches. Add an operation for marshaling TDISP collateral and TDISP state change requests from confidential guests to the platform TSM (pci_tsm_guest_req()). This too has no consumer in the staging branch outside of the samples/devsec/ test module, but is used in the vendor RFC branches that will soon be incorporated into the staging branch. These patches have previously appeared in the tsm.git#staging branch [3] for integration testing. [2]: https://git.kernel.org/pub/scm/linux/kernel/git/devsec/tsm.git/tree/samples/devsec/link_tsm.c?h=staging#n306 [3]: https://git.kernel.org/pub/scm/linux/kernel/git/devsec/tsm.git/log/?h=staging Dan Williams (5): resource: Introduce resource_assigned() for discerning active resources PCI/IDE: Initialize an ID for all IDE streams PCI/TSM: Add pci_tsm_bind() helper for instantiating TDIs PCI/TSM: Add pci_tsm_guest_req() for managing TDIs PCI/TSM: Add 'dsm' and 'bound' attributes for dependent functions Xu Yilun (1): PCI/IDE: Add Address Association Register setup for downstream MMIO Documentation/ABI/testing/sysfs-bus-pci | 30 +++ drivers/pci/pci.h | 2 + include/linux/ioport.h | 9 + include/linux/pci-ide.h | 33 +++ include/linux/pci-tsm.h | 92 +++++++ include/linux/pci.h | 6 + drivers/pci/ide.c | 248 ++++++++++++++++++- drivers/pci/remove.c | 1 + drivers/pci/tsm.c | 303 ++++++++++++++++++++++-- 9 files changed, 694 insertions(+), 30 deletions(-) base-commit: 0fe2f67a913cedca2be48c5b7b0412cbbaf29108 -- 2.51.0