Lines Matching refs:irte
54 struct irte irte_entry;
155 struct irte *irte_modified) in modify_irte()
159 struct irte *irte; in modify_irte() local
170 irte = &iommu->ir_table->base[index]; in modify_irte()
173 if ((irte->pst == 1) || (irte_modified->pst == 1)) { in modify_irte()
176 ret = cmpxchg_double(&irte->low, &irte->high, in modify_irte()
177 irte->low, irte->high, in modify_irte()
189 set_64bit(&irte->low, irte_modified->low); in modify_irte()
190 set_64bit(&irte->high, irte_modified->high); in modify_irte()
192 __iommu_flush_cache(iommu, irte, sizeof(*irte)); in modify_irte()
197 irq_iommu->mode = irte->pst ? IRQ_POSTING : IRQ_REMAPPING; in modify_irte()
236 struct irte *start, *entry, *end; in clear_entries()
284 static void set_irte_sid(struct irte *irte, unsigned int svt, in set_irte_sid() argument
289 irte->svt = svt; in set_irte_sid()
290 irte->sq = sq; in set_irte_sid()
291 irte->sid = sid; in set_irte_sid()
294 static int set_ioapic_sid(struct irte *irte, int apic) in set_ioapic_sid() argument
299 if (!irte) in set_ioapic_sid()
316 set_irte_sid(irte, SVT_VERIFY_SID_SQ, SQ_ALL_16, sid); in set_ioapic_sid()
321 static int set_hpet_sid(struct irte *irte, u8 id) in set_hpet_sid() argument
326 if (!irte) in set_hpet_sid()
348 set_irte_sid(irte, SVT_VERIFY_SID_SQ, SQ_13_IGNORE_3, sid); in set_hpet_sid()
368 static int set_msi_sid(struct irte *irte, struct pci_dev *dev) in set_msi_sid() argument
372 if (!irte || !dev) in set_msi_sid()
391 set_irte_sid(irte, SVT_VERIFY_BUS, SQ_ALL_16, in set_msi_sid()
395 set_irte_sid(irte, SVT_VERIFY_SID_SQ, SQ_ALL_16, data.alias); in set_msi_sid()
397 set_irte_sid(irte, SVT_VERIFY_SID_SQ, SQ_ALL_16, in set_msi_sid()
405 struct irte *old_ir_table; in iommu_load_old_irte()
426 size = INTR_REMAP_TABLE_ENTRIES*sizeof(struct irte); in iommu_load_old_irte()
1040 static void prepare_irte(struct irte *irte, int vector, unsigned int dest) in prepare_irte() argument
1042 memset(irte, 0, sizeof(*irte)); in prepare_irte()
1044 irte->present = 1; in prepare_irte()
1045 irte->dst_mode = apic->irq_dest_mode; in prepare_irte()
1053 irte->trigger_mode = 0; in prepare_irte()
1054 irte->dlvry_mode = apic->irq_delivery_mode; in prepare_irte()
1055 irte->vector = vector; in prepare_irte()
1056 irte->dest_id = IRTE_DEST(dest); in prepare_irte()
1057 irte->redir_hint = 1; in prepare_irte()
1136 struct irte *irte = &ir_data->irte_entry; in intel_ir_set_affinity() local
1149 irte->vector = cfg->vector; in intel_ir_set_affinity()
1150 irte->dest_id = IRTE_DEST(cfg->dest_apicid); in intel_ir_set_affinity()
1154 modify_irte(&ir_data->irq_2_iommu, irte); in intel_ir_set_affinity()
1183 struct irte irte_pi; in intel_ir_set_vcpu_affinity()
1223 struct irte *irte = &data->irte_entry; in intel_irq_remapping_prepare_irte() local
1226 prepare_irte(irte, irq_cfg->vector, irq_cfg->dest_apicid); in intel_irq_remapping_prepare_irte()
1230 set_ioapic_sid(irte, info->ioapic_id); in intel_irq_remapping_prepare_irte()
1232 info->ioapic_id, irte->present, irte->fpd, in intel_irq_remapping_prepare_irte()
1233 irte->dst_mode, irte->redir_hint, in intel_irq_remapping_prepare_irte()
1234 irte->trigger_mode, irte->dlvry_mode, in intel_irq_remapping_prepare_irte()
1235 irte->avail, irte->vector, irte->dest_id, in intel_irq_remapping_prepare_irte()
1236 irte->sid, irte->sq, irte->svt); in intel_irq_remapping_prepare_irte()
1261 set_hpet_sid(irte, info->hpet_id); in intel_irq_remapping_prepare_irte()
1263 set_msi_sid(irte, info->msi_dev); in intel_irq_remapping_prepare_irte()
1396 struct irte entry; in intel_irq_remapping_deactivate()