All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@kernel.org>
To: Davidlohr Bueso <dave@stgolabs.net>,
	Jonathan Cameron <jonathan.cameron@huawei.com>,
	Dave Jiang <dave.jiang@intel.com>,
	Alison Schofield <alison.schofield@intel.com>,
	Vishal Verma <vishal.l.verma@intel.com>,
	Ira Weiny <ira.weiny@intel.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Li Ming <ming.li@zohomail.com>, Jason Gunthorpe <jgg@ziepe.ca>
Cc: Arnd Bergmann <arnd@arndb.de>, Robert Richter <rrichter@amd.com>,
	"Mike Rapoport (Microsoft)" <rppt@kernel.org>,
	Masahiro Yamada <masahiroy@kernel.org>,
	linux-cxl@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH] cxl: fix FWCTL dependency
Date: Mon, 10 Mar 2025 14:51:15 +0100	[thread overview]
Message-ID: <20250310135119.4168933-1-arnd@kernel.org> (raw)

From: Arnd Bergmann <arnd@arndb.de>

The 'FWCTL' subsystem is selected by CXL_FEATURES, which is a 'bool' symbol
with a dependency on CXL_PCI, but referenced by the cxl_core.ko.
When cxl_core is built-in, but the cxl_pci.ko driver is a loadable mdoule,
this results in a link failure:

ld.lld-21: error: undefined symbol: _fwctl_alloc_device
>>> referenced by features.c:695 (/home/arnd/arm-soc/drivers/cxl/core/features.c:695)
ld.lld-21: error: undefined symbol: fwctl_register
>>> referenced by features.c:699 (/home/arnd/arm-soc/drivers/cxl/core/features.c:699)
ld.lld-21: error: undefined symbol: fwctl_unregister
>>> referenced by features.c:676 (/home/arnd/arm-soc/drivers/cxl/core/features.c:676)

Move the 'select' into the symbol that controls the core module instead.

Fixes: a53a6004e7a5 ("cxl: Add FWCTL support to CXL")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/cxl/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/cxl/Kconfig b/drivers/cxl/Kconfig
index ed49e7e7e5bc..cf1ba673b8c2 100644
--- a/drivers/cxl/Kconfig
+++ b/drivers/cxl/Kconfig
@@ -7,6 +7,7 @@ menuconfig CXL_BUS
 	select PCI_DOE
 	select FIRMWARE_TABLE
 	select NUMA_KEEP_MEMINFO if NUMA_MEMBLKS
+	select FWCTL if CXL_FEATURES
 	help
 	  CXL is a bus that is electrically compatible with PCI Express, but
 	  layers three protocols on that signalling (CXL.io, CXL.cache, and
@@ -105,7 +106,6 @@ config CXL_MEM
 config CXL_FEATURES
 	bool "CXL: Features"
 	depends on CXL_PCI
-	select FWCTL
 	help
 	  Enable support for CXL Features. A CXL device that includes a mailbox
 	  supports commands that allows listing, getting, and setting of
-- 
2.39.5


             reply	other threads:[~2025-03-10 13:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-10 13:51 Arnd Bergmann [this message]
2025-03-10 15:24 ` [PATCH] cxl: fix FWCTL dependency Dave Jiang
2025-03-17 17:42   ` Jason Gunthorpe
2025-03-10 18:27 ` Dan Williams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250310135119.4168933-1-arnd@kernel.org \
    --to=arnd@kernel.org \
    --cc=alison.schofield@intel.com \
    --cc=arnd@arndb.de \
    --cc=dan.j.williams@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=dave@stgolabs.net \
    --cc=ira.weiny@intel.com \
    --cc=jgg@ziepe.ca \
    --cc=jonathan.cameron@huawei.com \
    --cc=linux-cxl@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=ming.li@zohomail.com \
    --cc=rppt@kernel.org \
    --cc=rrichter@amd.com \
    --cc=vishal.l.verma@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.