staging: fsl-mc: fix compilation with non-generic msi domain ops
authorLaurentiu Tudor <laurentiu.tudor@nxp.com>
Wed, 19 Jul 2017 11:42:28 +0000 (14:42 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 30 Jul 2017 15:23:27 +0000 (08:23 -0700)
The bus driver relies on generic msi domain ops.
Fix compilation for architectures that don't provide it (e.g. x86_64).

Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/fsl-mc/bus/fsl-mc-msi.c
drivers/staging/fsl-mc/bus/irq-gic-v3-its-fsl-mc-msi.c

index 6293294443168eef3f7e77350a19d8ba13ea1809..038da4d1ebd08100c85b7a5f2675a2f8e9eaa839 100644 (file)
@@ -17,6 +17,7 @@
 #include <linux/msi.h>
 #include "fsl-mc-private.h"
 
+#ifdef GENERIC_MSI_DOMAIN_OPS
 /*
  * Generate a unique ID identifying the interrupt (only used within the MSI
  * irqdomain.  Combine the icid with the interrupt index.
@@ -38,6 +39,9 @@ static void fsl_mc_msi_set_desc(msi_alloc_info_t *arg,
        arg->hwirq = fsl_mc_domain_calc_hwirq(to_fsl_mc_device(desc->dev),
                                              desc);
 }
+#else
+#define fsl_mc_msi_set_desc NULL
+#endif
 
 static void fsl_mc_msi_update_dom_ops(struct msi_domain_info *info)
 {
index 9cd2183239f548c4ad2138fcb7595ea58b6f4bf6..123e4af584081115bec627e49c57c3e315cb4e43 100644 (file)
@@ -45,7 +45,9 @@ static int its_fsl_mc_msi_prepare(struct irq_domain *msi_domain,
         * NOTE: This device id corresponds to the IOMMU stream ID
         * associated with the DPRC object (ICID).
         */
+#ifdef GENERIC_MSI_DOMAIN_OPS
        info->scratchpad[0].ul = mc_bus_dev->icid;
+#endif
        msi_info = msi_get_domain_info(msi_domain->parent);
        return msi_info->ops->msi_prepare(msi_domain->parent, dev, nvec, info);
 }