Messages in this thread Patch in this message | | | From | Joerg Roedel <> | Subject | [PATCH 22/27] iommu/amd: Add call-back routine for HPET MSI | Date | Wed, 11 Jul 2012 15:39:07 +0200 |
| |
Add a routine to setup a HPET MSI interrupt for remapping.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com> --- drivers/iommu/amd_iommu.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+)
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c index 9a24a1b..ac6e731 100644 --- a/drivers/iommu/amd_iommu.c +++ b/drivers/iommu/amd_iommu.c @@ -4128,4 +4128,30 @@ static int msi_setup_irq(struct pci_dev *pdev, unsigned int irq, return 0; } +static int setup_hpet_msi(unsigned int irq, unsigned int id) +{ + struct irq_2_irte *irte_info; + struct irq_cfg *cfg; + int index, devid; + + cfg = irq_get_chip_data(irq); + if (!cfg) + return -EINVAL; + + irte_info = &cfg->irq_remap_info.irq_2_irte; + devid = get_hpet_devid(id); + if (devid < 0) + return devid; + + index = alloc_irq_index(cfg, devid, 1); + if (index < 0) + return index; + + irte_info->devid = devid; + irte_info->index = index; + cfg->remapped = true; + + return 0; +} + #endif -- 1.7.9.5
| |