From patchwork Wed Nov 16 20:51:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bjorn Helgaas X-Patchwork-Id: 13045747 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 8F042C433FE for ; Wed, 16 Nov 2022 20:52:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=5ury6zqIVYcSSuJT20xUkvIN1JBF/zRi/6EdXkTS5lA=; b=uzCuX42+Bx9ji4 B5pN3O4BRwtroT6pCNDiqOIimLcEmlXd9YWiYqZrq4lRxaO1jEec55/aOJYUzbK3bmZc3Rj6FJyS3 VrXcd6JDSbIB53u2jBfQ/xJoMkr7Vw8SjBgdaN1pTiGWRP9/Feg7epeZo2g4pHByS6NVRcOjwvP7W AgqJdGV2AKaTawsq3O6bcKqgQciKMvzWoTnboE79G9SjIdwwnj3LhGODIKK3uNXQfcgPtyZUeYqo4 XiyzTdi2crPJsrA0iwmdEDCGZudh8KZ2kkKCYYfPLyBCGS9ZHpAcJkWmOeqjZe/6HgvUrR+lAseII baW8VuTwevjInjAm4LKg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1ovPNb-007tCV-7M; Wed, 16 Nov 2022 20:51:31 +0000 Received: from ams.source.kernel.org ([2604:1380:4601:e00::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1ovPNL-007t1Q-GU for linux-arm-kernel@lists.infradead.org; Wed, 16 Nov 2022 20:51:17 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 1D384B81EBF; Wed, 16 Nov 2022 20:51:11 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8DFEFC433C1; Wed, 16 Nov 2022 20:51:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1668631870; bh=qXGP3+HUll9sYGVoqW9SbxWwprBgMJaK9akTX5TqlWM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VEdMInGdltCHg3+XMzCTtLxc+3Pqsvayf/+HV+JoCSxtRlfvsdeHbbMEg44QcNmfK thhCbsC1c0Gn7tJTBxNH5vVAAh1DbJoVsNqk/QoxG7ZN7f7PrCBxrUl7IZyUh9slWp Z3WQicqGjJIBZpnsLhLNvlE9V0wl43lUrShkd+E4plPpRzws4E8r6KTZ/3CCG2uTHU ERpxeT+ruuPw+JHl1fkZhqBFYdGunERaVZklIlMVynaEEEA+rHyUNOoHrAph7HUFW3 TJ1G3W5RsthcY50UsbQ92jg0P0/Z5487o0znTwke/VjrxBsxhDbxiRHcqXf/johoLl /z8l/exoObz+A== From: Bjorn Helgaas To: linux-pci@vger.kernel.org Cc: Lorenzo Pieralisi , Geert Uytterhoeven , =?utf-8?q?Pali_Roh=C3=A1r?= , Rob Herring , =?utf-8?q?Krzysztof_Wilczy=C5=84ski?= , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Bjorn Helgaas Subject: [PATCH v2 2/2] PCI: Allow building CONFIG_OF drivers with COMPILE_TEST Date: Wed, 16 Nov 2022 14:51:00 -0600 Message-Id: <20221116205100.1136224-3-helgaas@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221116205100.1136224-1-helgaas@kernel.org> References: <20221116205100.1136224-1-helgaas@kernel.org> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221116_125115_915080_DCF97651 X-CRM114-Status: GOOD ( 14.99 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Bjorn Helgaas Many drivers depend on OF interfaces, so they won't be functional if CONFIG_OF is not set. But OF provides stub functions in that case, so make them buildable if CONFIG_COMPILE_TEST is set. Signed-off-by: Bjorn Helgaas Reviewed-by: Geert Uytterhoeven --- drivers/pci/controller/Kconfig | 34 +++++++++++---------- drivers/pci/controller/cadence/Kconfig | 12 ++++---- drivers/pci/controller/dwc/Kconfig | 40 ++++++++++++++++--------- drivers/pci/controller/mobiveil/Kconfig | 2 +- 4 files changed, 51 insertions(+), 37 deletions(-) diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig index bfd9bac37e24..a62e9fbb69ca 100644 --- a/drivers/pci/controller/Kconfig +++ b/drivers/pci/controller/Kconfig @@ -8,7 +8,7 @@ config PCI_MVEBU depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST depends on MVEBU_MBUS depends on ARM - depends on OF + depends on OF || COMPILE_TEST select PCI_BRIDGE_EMUL help Add support for Marvell EBU PCIe controller. This PCIe controller @@ -18,7 +18,7 @@ config PCI_MVEBU config PCI_AARDVARK tristate "Aardvark PCIe controller" depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCI_BRIDGE_EMUL help @@ -38,13 +38,14 @@ config PCIE_XILINX_NWL config PCI_FTPCI100 bool "Faraday Technology FTPCI100 PCI controller" - depends on OF + depends on OF || COMPILE_TEST default ARCH_GEMINI config PCI_IXP4XX bool "Intel IXP4xx PCI controller" - depends on ARM && OF + depends on ARM depends on ARCH_IXP4XX || COMPILE_TEST + depends on OF || COMPILE_TEST default ARCH_IXP4XX help Say Y here if you want support for the PCI host controller found @@ -89,7 +90,7 @@ config PCI_HOST_COMMON config PCI_HOST_GENERIC tristate "Generic PCI host controller" - depends on OF + depends on OF || COMPILE_TEST select PCI_HOST_COMMON select IRQ_DOMAIN help @@ -115,7 +116,7 @@ config PCIE_XILINX_CPM config PCI_XGENE bool "X-Gene PCIe controller" depends on ARM64 || COMPILE_TEST - depends on OF || (ACPI && PCI_QUIRKS) + depends on (OF || COMPILE_TEST) || (ACPI && PCI_QUIRKS) help Say Y here if you want internal PCI support on APM X-Gene SoC. There are 5 internal PCIe ports available. Each port is GEN3 capable @@ -132,7 +133,7 @@ config PCI_XGENE_MSI config PCI_V3_SEMI bool "V3 Semiconductor PCI controller" - depends on OF + depends on OF || COMPILE_TEST depends on ARM || COMPILE_TEST default ARCH_INTEGRATOR_AP @@ -150,7 +151,7 @@ config PCIE_IPROC config PCIE_IPROC_PLATFORM tristate "Broadcom iProc PCIe platform bus driver" depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST) - depends on OF + depends on OF || COMPILE_TEST select PCIE_IPROC default ARCH_BCM_IPROC help @@ -194,7 +195,7 @@ config PCIE_ALTERA_MSI config PCI_HOST_THUNDER_PEM bool "Cavium Thunder PCIe controller to off-chip devices" depends on ARM64 || COMPILE_TEST - depends on OF || (ACPI && PCI_QUIRKS) + depends on (OF || COMPILE_TEST) || (ACPI && PCI_QUIRKS) select PCI_HOST_COMMON help Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs. @@ -202,7 +203,7 @@ config PCI_HOST_THUNDER_PEM config PCI_HOST_THUNDER_ECAM bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon" depends on ARM64 || COMPILE_TEST - depends on OF || (ACPI && PCI_QUIRKS) + depends on (OF || COMPILE_TEST) || (ACPI && PCI_QUIRKS) select PCI_HOST_COMMON help Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs. @@ -214,7 +215,7 @@ config PCIE_ROCKCHIP config PCIE_ROCKCHIP_HOST tristate "Rockchip PCIe host controller" depends on ARCH_ROCKCHIP || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select MFD_SYSCON select PCIE_ROCKCHIP @@ -226,7 +227,7 @@ config PCIE_ROCKCHIP_HOST config PCIE_ROCKCHIP_EP bool "Rockchip PCIe endpoint controller" depends on ARCH_ROCKCHIP || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_ENDPOINT select MFD_SYSCON select PCIE_ROCKCHIP @@ -238,7 +239,7 @@ config PCIE_ROCKCHIP_EP config PCIE_MEDIATEK tristate "MediaTek PCIe controller" depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN help Say Y here if you want to enable PCIe controller support on @@ -276,7 +277,7 @@ config PCIE_BRCMSTB tristate "Broadcom Brcmstb PCIe host controller" depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCMBCA || \ BMIPS_GENERIC || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN default ARCH_BRCMSTB || BMIPS_GENERIC help @@ -302,7 +303,8 @@ config PCI_LOONGSON config PCIE_MICROCHIP_HOST bool "Microchip AXI PCIe host bridge support" - depends on PCI_MSI && OF + depends on OF || COMPILE_TEST + depends on PCI_MSI select PCI_MSI_IRQ_DOMAIN select GENERIC_MSI_IRQ_DOMAIN select PCI_HOST_COMMON @@ -325,7 +327,7 @@ config PCIE_APPLE_MSI_DOORBELL_ADDR config PCIE_APPLE tristate "Apple PCIe controller" depends on ARCH_APPLE || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCI_HOST_COMMON help diff --git a/drivers/pci/controller/cadence/Kconfig b/drivers/pci/controller/cadence/Kconfig index 5d30564190e1..44f18b88817f 100644 --- a/drivers/pci/controller/cadence/Kconfig +++ b/drivers/pci/controller/cadence/Kconfig @@ -8,13 +8,13 @@ config PCIE_CADENCE config PCIE_CADENCE_HOST bool - depends on OF + depends on OF || COMPILE_TEST select IRQ_DOMAIN select PCIE_CADENCE config PCIE_CADENCE_EP bool - depends on OF + depends on OF || COMPILE_TEST depends on PCI_ENDPOINT select PCIE_CADENCE @@ -23,7 +23,7 @@ config PCIE_CADENCE_PLAT config PCIE_CADENCE_PLAT_HOST bool "Cadence PCIe platform host controller" - depends on OF + depends on OF || COMPILE_TEST select PCIE_CADENCE_HOST select PCIE_CADENCE_PLAT help @@ -33,7 +33,7 @@ config PCIE_CADENCE_PLAT_HOST config PCIE_CADENCE_PLAT_EP bool "Cadence PCIe platform endpoint controller" - depends on OF + depends on OF || COMPILE_TEST depends on PCI_ENDPOINT select PCIE_CADENCE_EP select PCIE_CADENCE_PLAT @@ -47,7 +47,7 @@ config PCI_J721E config PCI_J721E_HOST bool "TI J721E PCIe platform host controller" - depends on OF + depends on OF || COMPILE_TEST select PCIE_CADENCE_HOST select PCI_J721E help @@ -57,7 +57,7 @@ config PCI_J721E_HOST config PCI_J721E_EP bool "TI J721E PCIe platform endpoint controller" - depends on OF + depends on OF || COMPILE_TEST depends on PCI_ENDPOINT select PCIE_CADENCE_EP select PCI_J721E diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig index 62ce3abf0f19..aa0a2fcd41f1 100644 --- a/drivers/pci/controller/dwc/Kconfig +++ b/drivers/pci/controller/dwc/Kconfig @@ -20,7 +20,8 @@ config PCI_DRA7XX config PCI_DRA7XX_HOST tristate "TI DRA7xx PCIe controller Host Mode" depends on SOC_DRA7XX || COMPILE_TEST - depends on OF && HAS_IOMEM && TI_PIPE3 + depends on OF || COMPILE_TEST + depends on HAS_IOMEM && TI_PIPE3 depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST select PCI_DRA7XX @@ -36,7 +37,8 @@ config PCI_DRA7XX_HOST config PCI_DRA7XX_EP tristate "TI DRA7xx PCIe controller Endpoint Mode" depends on SOC_DRA7XX || COMPILE_TEST - depends on OF && HAS_IOMEM && TI_PIPE3 + depends on OF || COMPILE_TEST + depends on HAS_IOMEM && TI_PIPE3 depends on PCI_ENDPOINT select PCIE_DW_EP select PCI_DRA7XX @@ -134,7 +136,8 @@ config PCI_KEYSTONE_EP config PCI_LAYERSCAPE bool "Freescale Layerscape PCIe controller - Host mode" - depends on OF && (ARM || ARCH_LAYERSCAPE || COMPILE_TEST) + depends on ARM || ARCH_LAYERSCAPE || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST select MFD_SYSCON @@ -147,7 +150,8 @@ config PCI_LAYERSCAPE config PCI_LAYERSCAPE_EP bool "Freescale Layerscape PCIe controller - Endpoint mode" - depends on OF && (ARM || ARCH_LAYERSCAPE || COMPILE_TEST) + depends on ARM || ARCH_LAYERSCAPE || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_ENDPOINT select PCIE_DW_EP help @@ -158,8 +162,9 @@ config PCI_LAYERSCAPE_EP controller works in RC mode. config PCI_HISI - depends on OF && (ARM64 || COMPILE_TEST) bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers" + depends on ARM64 || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST select PCI_HOST_COMMON @@ -169,7 +174,8 @@ config PCI_HISI config PCIE_QCOM bool "Qualcomm PCIe controller" - depends on OF && (ARCH_QCOM || COMPILE_TEST) + depends on ARCH_QCOM || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST select CRC8 @@ -180,7 +186,8 @@ config PCIE_QCOM config PCIE_QCOM_EP tristate "Qualcomm PCIe controller - Endpoint mode" - depends on OF && (ARCH_QCOM || COMPILE_TEST) + depends on ARCH_QCOM || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_ENDPOINT select PCIE_DW_EP help @@ -226,16 +233,17 @@ config PCIE_ROCKCHIP_DW_HOST bool "Rockchip DesignWare PCIe controller" select PCIE_DW select PCIE_DW_HOST - depends on PCI_MSI_IRQ_DOMAIN depends on ARCH_ROCKCHIP || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST + depends on PCI_MSI_IRQ_DOMAIN help Enables support for the DesignWare PCIe controller in the Rockchip SoC except RK3399. config PCIE_INTEL_GW bool "Intel Gateway PCIe host controller support" - depends on OF && (X86 || COMPILE_TEST) + depends on X86 || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST help @@ -273,8 +281,9 @@ config PCIE_KEEMBAY_EP DesignWare core functions. config PCIE_KIRIN - depends on OF && (ARM64 || COMPILE_TEST) tristate "HiSilicon Kirin series SoCs PCIe controllers" + depends on ARM64 || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST help @@ -345,7 +354,8 @@ config PCIE_VISCONTI_HOST config PCIE_UNIPHIER bool "Socionext UniPhier PCIe host controllers" depends on ARCH_UNIPHIER || COMPILE_TEST - depends on OF && HAS_IOMEM + depends on OF || COMPILE_TEST + depends on HAS_IOMEM depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST help @@ -355,7 +365,8 @@ config PCIE_UNIPHIER config PCIE_UNIPHIER_EP bool "Socionext UniPhier PCIe endpoint controllers" depends on ARCH_UNIPHIER || COMPILE_TEST - depends on OF && HAS_IOMEM + depends on OF || COMPILE_TEST + depends on HAS_IOMEM depends on PCI_ENDPOINT select PCIE_DW_EP help @@ -364,7 +375,8 @@ config PCIE_UNIPHIER_EP config PCIE_AL bool "Amazon Annapurna Labs PCIe controller" - depends on OF && (ARM64 || COMPILE_TEST) + depends on ARM64 || COMPILE_TEST + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_DW_HOST select PCI_ECAM diff --git a/drivers/pci/controller/mobiveil/Kconfig b/drivers/pci/controller/mobiveil/Kconfig index e4643fb94e78..24ea35927185 100644 --- a/drivers/pci/controller/mobiveil/Kconfig +++ b/drivers/pci/controller/mobiveil/Kconfig @@ -14,7 +14,7 @@ config PCIE_MOBIVEIL_HOST config PCIE_MOBIVEIL_PLAT bool "Mobiveil AXI PCIe controller" depends on ARCH_ZYNQMP || COMPILE_TEST - depends on OF + depends on OF || COMPILE_TEST depends on PCI_MSI_IRQ_DOMAIN select PCIE_MOBIVEIL_HOST help