{"id":2197407,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2197407/?format=json","project":{"id":28,"url":"http://patchwork.ozlabs.org/api/1.0/projects/28/?format=json","name":"Linux PCI development","link_name":"linux-pci","list_id":"linux-pci.vger.kernel.org","list_email":"linux-pci@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<20260217212707.2450423-18-cassel@kernel.org>","date":"2026-02-17T21:27:13","name":"[7/9] PCI: endpoint: pci-epf-test: Advertise reserved BARs","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"c904ac8c6f1a4093522e4aecb138d45ab6ab6607","submitter":{"id":87751,"url":"http://patchwork.ozlabs.org/api/1.0/people/87751/?format=json","name":"Niklas Cassel","email":"cassel@kernel.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-pci/patch/20260217212707.2450423-18-cassel@kernel.org/mbox/","series":[{"id":492482,"url":"http://patchwork.ozlabs.org/api/1.0/series/492482/?format=json","date":"2026-02-17T21:27:06","name":"PCI: endpoint differentiate between disabled and reserved BARs","version":1,"mbox":"http://patchwork.ozlabs.org/series/492482/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2197407/checks/","tags":{},"headers":{"Return-Path":"\n <linux-pci+bounces-47514-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pci@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=EyZxnW1N;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-pci+bounces-47514-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"EyZxnW1N\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fFt765yZ6z1xpl\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 18 Feb 2026 08:28:50 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 99DDB30416F5\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 17 Feb 2026 21:28:14 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 4D88C28C006;\n\tTue, 17 Feb 2026 21:28:14 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 2ACC6271450\n\tfor <linux-pci@vger.kernel.org>; Tue, 17 Feb 2026 21:28:13 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id CBEB6C4CEF7;\n\tTue, 17 Feb 2026 21:28:11 +0000 (UTC)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1771363694; cv=none;\n b=D93AKvu/9uhlVFaeGYsUL+y81CAhluatKVOykWPmCrpkPaXpuu9DkuB52Kc8UQUIv0bGtffXTKra7/KyE7QeFn0XsmYlWy5+IGqwYYcOGvZmEaKMAmNRWNQe8jznFCUuwUGU6A18tz5gF2XaZyNZtnELaTbufaE1AjM908xlqK8=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1771363694; c=relaxed/simple;\n\tbh=moOr43+8cgHi9wm8VK/VhU0rAqHCm9nUnhjiJ2bEXPU=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=XfyUU17RHjWnOWZVzO0T+l8hvJNBdn9rwexAHihv7weMrmcHrDrSeJvxXK5mKS/MU2k3CrQPuJIISWh/8/q477htLJPZtXuvkJBgMPKDXWyCfHH0znjQf8+hCoMUqVqZ6p2C2j8FKFytQzlHqtAuqOwsPWkKHmxTd/titeNE19E=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=EyZxnW1N; arc=none smtp.client-ip=10.30.226.201","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1771363693;\n\tbh=moOr43+8cgHi9wm8VK/VhU0rAqHCm9nUnhjiJ2bEXPU=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=EyZxnW1Navz3e4neb0omd0ETRXGAPGXCFRYo0Q8WRDqhigy19rTFVlq5fY5S2s1cP\n\t o6VMuJtSddSO5e1AbV7dWMUhoC48ZFEkbCABmqYUm/P3a1DfE7cQS6rCenhz7gCR9z\n\t Byp6rEip0JuBG9sMckr2UqgNb29qXEJOMq3Z1kcaqZyYbW7LHkwkPXTsLSZV0HjUQ3\n\t yaA8YE3D5Zs6lyN2S4DEDPhcTLun28A9fdY/DF1sy3TQAT4FdNFF9eyzRNDEzShp41\n\t sxADCC5CRzXD4fPnpCCNIb4se3y16mT2JqRqLAtUOhiCMSgenUURVtJIgtEYYxFgTT\n\t vnLQhiNlBUXrQ==","From":"Niklas Cassel <cassel@kernel.org>","To":"Manivannan Sadhasivam <mani@kernel.org>, =?utf-8?q?Krzysztof_Wilczy?=\n\t=?utf-8?q?=C5=84ski?= <kwilczynski@kernel.org>,\n Kishon Vijay Abraham I <kishon@kernel.org>,\n Bjorn Helgaas <bhelgaas@google.com>","Cc":"Manikanta Maddireddy <mmaddireddy@nvidia.com>,\n\tKoichiro Den <den@valinux.co.jp>,\n\tDamien Le Moal <dlemoal@kernel.org>,\n\tNiklas Cassel <cassel@kernel.org>,\n\tlinux-pci@vger.kernel.org","Subject":"[PATCH 7/9] PCI: endpoint: pci-epf-test: Advertise reserved BARs","Date":"Tue, 17 Feb 2026 22:27:13 +0100","Message-ID":"<20260217212707.2450423-18-cassel@kernel.org>","X-Mailer":"git-send-email 2.53.0","In-Reply-To":"<20260217212707.2450423-11-cassel@kernel.org>","References":"<20260217212707.2450423-11-cassel@kernel.org>","Precedence":"bulk","X-Mailing-List":"linux-pci@vger.kernel.org","List-Id":"<linux-pci.vger.kernel.org>","List-Subscribe":"<mailto:linux-pci+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-pci+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","X-Developer-Signature":"v=1; a=openpgp-sha256; l=1753; i=cassel@kernel.org;\n h=from:subject; bh=moOr43+8cgHi9wm8VK/VhU0rAqHCm9nUnhjiJ2bEXPU=;\n b=owGbwMvMwCV2MsVw8cxjvkWMp9WSGDKn3DVoDuK66WDs3jgt5etcO5WO2kSpoqy4SRJsD5Jf1\n 8y573S6o5SFQYyLQVZMkcX3h8v+4m73KccV79jAzGFlAhnCwMUpABMpOMzI8OHsnuKw7y2it1U0\n 5r2K1nDbFVpt55Qr8StslsGLTwdmbWVk2CP/xWebaZpWsUffn/8tsW3p9ZM/L2CdqBLLuGfN3bw\n 8PgA=","X-Developer-Key":"i=cassel@kernel.org; a=openpgp;\n fpr=5ADE635C0E631CBBD5BE065A352FE6582ED9B5DA","Content-Transfer-Encoding":"8bit"},"content":"Advertise reserved BARs as reserved in the Capabilities register,\nsuch that the host side driver will be able to skip reserved BARs.\n\nSigned-off-by: Niklas Cassel <cassel@kernel.org>\n---\n drivers/pci/endpoint/functions/pci-epf-test.c | 24 +++++++++++++++++++\n 1 file changed, 24 insertions(+)","diff":"diff --git a/drivers/pci/endpoint/functions/pci-epf-test.c b/drivers/pci/endpoint/functions/pci-epf-test.c\nindex 0cb7af0919dc..4c7e42fe5d8e 100644\n--- a/drivers/pci/endpoint/functions/pci-epf-test.c\n+++ b/drivers/pci/endpoint/functions/pci-epf-test.c\n@@ -64,6 +64,12 @@\n #define CAP_MSIX\t\t\tBIT(2)\n #define CAP_INTX\t\t\tBIT(3)\n #define CAP_SUBRANGE_MAPPING\t\tBIT(4)\n+#define CAP_BAR0_RESERVED\t\tBIT(5)\n+#define CAP_BAR1_RESERVED\t\tBIT(6)\n+#define CAP_BAR2_RESERVED\t\tBIT(7)\n+#define CAP_BAR3_RESERVED\t\tBIT(8)\n+#define CAP_BAR4_RESERVED\t\tBIT(9)\n+#define CAP_BAR5_RESERVED\t\tBIT(10)\n \n #define PCI_EPF_TEST_BAR_SUBRANGE_NSUB\t2\n \n@@ -1106,6 +1112,24 @@ static void pci_epf_test_set_capabilities(struct pci_epf *epf)\n \t    epf_test->epc_features->subrange_mapping)\n \t\tcaps |= CAP_SUBRANGE_MAPPING;\n \n+\tif (epf_test->epc_features->bar[BAR_0].type == BAR_RESERVED)\n+\t\tcaps |= CAP_BAR0_RESERVED;\n+\n+\tif (epf_test->epc_features->bar[BAR_1].type == BAR_RESERVED)\n+\t\tcaps |= CAP_BAR1_RESERVED;\n+\n+\tif (epf_test->epc_features->bar[BAR_2].type == BAR_RESERVED)\n+\t\tcaps |= CAP_BAR2_RESERVED;\n+\n+\tif (epf_test->epc_features->bar[BAR_3].type == BAR_RESERVED)\n+\t\tcaps |= CAP_BAR3_RESERVED;\n+\n+\tif (epf_test->epc_features->bar[BAR_4].type == BAR_RESERVED)\n+\t\tcaps |= CAP_BAR4_RESERVED;\n+\n+\tif (epf_test->epc_features->bar[BAR_5].type == BAR_RESERVED)\n+\t\tcaps |= CAP_BAR5_RESERVED;\n+\n \treg->caps = cpu_to_le32(caps);\n }\n \n","prefixes":["7/9"]}