#include <linux/of_device.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/irqdomain.h>
#include "fsl-mc-private.h"
#ifdef GENERIC_MSI_DOMAIN_OPS
static irq_hw_number_t fsl_mc_domain_calc_hwirq(struct fsl_mc_device *dev,
return (irq_hw_number_t)(desc->fsl_mc.msi_index + (dev->icid * 10000));
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),
#define fsl_mc_msi_set_desc NULL
static void fsl_mc_msi_update_dom_ops(struct msi_domain_info *info)
struct msi_domain_ops *ops = info->ops;
ops->set_desc = fsl_mc_msi_set_desc;
static void __fsl_mc_msi_write_msg(struct fsl_mc_device *mc_bus_dev,
struct fsl_mc_device_irq *mc_dev_irq)
struct fsl_mc_device *owner_mc_dev = mc_dev_irq->mc_dev;