cdx: don't select CONFIG_GENERIC_MSI_IRQ
x86 does not use CONFIG_GENERIC_MSI_IRQ, and trying to enable it anyway
results in a build failure:
In file included from include/linux/ssb/ssb.h:10,
from drivers/ssb/pcihost_wrapper.c:18:
include/linux/gpio/driver.h:41:33: error: field 'msiinfo' has incomplete type
41 | msi_alloc_info_t msiinfo;
| ^~~~~~~
In file included from include/linux/kvm_host.h:19,
from arch/x86/events/intel/core.c:17:
include/linux/msi.h:528:33: error: field 'alloc_info' has incomplete type
528 | msi_alloc_info_t alloc_info;
Change the driver to actually build without this symbol and remove the
incorrect 'select' statements.
Fixes: e8b18c1173 ("cdx: Fix missing GENERIC_MSI_IRQ on compile test")
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Nikhil Agarwal <nikhil.agarwal@amd.com>
Signed-off-by: Arnd Bergmann <arnd@kernel.org>
Signed-off-by: Nipun Gupta <nipun.gupta@amd.com>
Link: https://lore.kernel.org/r/20250826043852.2206008-1-nipun.gupta@amd.com
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
pull/1354/merge
parent
fcf9ae9ec9
commit
ab1d8dda32
|
|
@ -8,7 +8,6 @@
|
||||||
config CDX_BUS
|
config CDX_BUS
|
||||||
bool "CDX Bus driver"
|
bool "CDX Bus driver"
|
||||||
depends on OF && ARM64 || COMPILE_TEST
|
depends on OF && ARM64 || COMPILE_TEST
|
||||||
select GENERIC_MSI_IRQ
|
|
||||||
help
|
help
|
||||||
Driver to enable Composable DMA Transfer(CDX) Bus. CDX bus
|
Driver to enable Composable DMA Transfer(CDX) Bus. CDX bus
|
||||||
exposes Fabric devices which uses composable DMA IP to the
|
exposes Fabric devices which uses composable DMA IP to the
|
||||||
|
|
|
||||||
|
|
@ -310,7 +310,7 @@ static int cdx_probe(struct device *dev)
|
||||||
* Setup MSI device data so that generic MSI alloc/free can
|
* Setup MSI device data so that generic MSI alloc/free can
|
||||||
* be used by the device driver.
|
* be used by the device driver.
|
||||||
*/
|
*/
|
||||||
if (cdx->msi_domain) {
|
if (IS_ENABLED(CONFIG_GENERIC_MSI_IRQ) && cdx->msi_domain) {
|
||||||
error = msi_setup_device_data(&cdx_dev->dev);
|
error = msi_setup_device_data(&cdx_dev->dev);
|
||||||
if (error)
|
if (error)
|
||||||
return error;
|
return error;
|
||||||
|
|
@ -833,7 +833,7 @@ int cdx_device_add(struct cdx_dev_params *dev_params)
|
||||||
((cdx->id << CDX_CONTROLLER_ID_SHIFT) | (cdx_dev->bus_num & CDX_BUS_NUM_MASK)),
|
((cdx->id << CDX_CONTROLLER_ID_SHIFT) | (cdx_dev->bus_num & CDX_BUS_NUM_MASK)),
|
||||||
cdx_dev->dev_num);
|
cdx_dev->dev_num);
|
||||||
|
|
||||||
if (cdx->msi_domain) {
|
if (IS_ENABLED(CONFIG_GENERIC_MSI_IRQ) && cdx->msi_domain) {
|
||||||
cdx_dev->num_msi = dev_params->num_msi;
|
cdx_dev->num_msi = dev_params->num_msi;
|
||||||
dev_set_msi_domain(&cdx_dev->dev, cdx->msi_domain);
|
dev_set_msi_domain(&cdx_dev->dev, cdx->msi_domain);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,6 @@ if CDX_BUS
|
||||||
config CDX_CONTROLLER
|
config CDX_CONTROLLER
|
||||||
tristate "CDX bus controller"
|
tristate "CDX bus controller"
|
||||||
depends on HAS_DMA
|
depends on HAS_DMA
|
||||||
select GENERIC_MSI_IRQ
|
|
||||||
select REMOTEPROC
|
select REMOTEPROC
|
||||||
select RPMSG
|
select RPMSG
|
||||||
help
|
help
|
||||||
|
|
|
||||||
|
|
@ -193,7 +193,8 @@ static int xlnx_cdx_probe(struct platform_device *pdev)
|
||||||
cdx->ops = &cdx_ops;
|
cdx->ops = &cdx_ops;
|
||||||
|
|
||||||
/* Create MSI domain */
|
/* Create MSI domain */
|
||||||
cdx->msi_domain = cdx_msi_domain_init(&pdev->dev);
|
if (IS_ENABLED(CONFIG_GENERIC_MSI_IRQ))
|
||||||
|
cdx->msi_domain = cdx_msi_domain_init(&pdev->dev);
|
||||||
if (!cdx->msi_domain) {
|
if (!cdx->msi_domain) {
|
||||||
ret = dev_err_probe(&pdev->dev, -ENODEV, "cdx_msi_domain_init() failed");
|
ret = dev_err_probe(&pdev->dev, -ENODEV, "cdx_msi_domain_init() failed");
|
||||||
goto cdx_msi_fail;
|
goto cdx_msi_fail;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue