Lines Matching refs:amd_iommu
83 static void set_dte_entry(struct amd_iommu *iommu,
86 static void iommu_flush_dte_sync(struct amd_iommu *iommu, u16 devid);
88 static struct iommu_dev_data *find_dev_data(struct amd_iommu *iommu, u16 devid);
141 static void update_dte256(struct amd_iommu *iommu, struct iommu_dev_data *dev_data, in update_dte256()
207 static void get_dte256(struct amd_iommu *iommu, struct iommu_dev_data *dev_data, in get_dte256()
274 struct dev_table_entry *get_dev_table(struct amd_iommu *iommu) in get_dev_table()
304 void amd_iommu_set_rlookup_table(struct amd_iommu *iommu, u16 devid) in amd_iommu_set_rlookup_table()
311 static struct amd_iommu *__rlookup_amd_iommu(u16 seg, u16 devid) in __rlookup_amd_iommu()
322 static struct amd_iommu *rlookup_amd_iommu(struct device *dev) in rlookup_amd_iommu()
332 static struct iommu_dev_data *alloc_dev_data(struct amd_iommu *iommu, u16 devid) in alloc_dev_data()
350 struct iommu_dev_data *search_dev_data(struct amd_iommu *iommu, u16 devid) in search_dev_data()
371 struct amd_iommu *iommu; in clone_alias()
406 static void clone_aliases(struct amd_iommu *iommu, struct device *dev) in clone_aliases()
424 static void setup_aliases(struct amd_iommu *iommu, struct device *dev) in setup_aliases()
446 static struct iommu_dev_data *find_dev_data(struct amd_iommu *iommu, u16 devid) in find_dev_data()
635 struct amd_iommu *iommu; in check_device()
658 static int iommu_init_device(struct amd_iommu *iommu, struct device *dev) in iommu_init_device()
698 static void iommu_ignore_device(struct amd_iommu *iommu, struct device *dev) in iommu_ignore_device()
722 static void dump_dte_entry(struct amd_iommu *iommu, u16 devid) in dump_dte_entry()
743 static void amd_iommu_report_rmp_hw_error(struct amd_iommu *iommu, volatile u32 *event) in amd_iommu_report_rmp_hw_error()
775 static void amd_iommu_report_rmp_fault(struct amd_iommu *iommu, volatile u32 *event) in amd_iommu_report_rmp_fault()
814 static void amd_iommu_report_page_fault(struct amd_iommu *iommu, in amd_iommu_report_page_fault()
865 static void iommu_print_event(struct amd_iommu *iommu, void *__evt) in iommu_print_event()
961 static void iommu_poll_events(struct amd_iommu *iommu) in iommu_poll_events()
989 static void iommu_poll_ga_log(struct amd_iommu *iommu) in iommu_poll_ga_log()
1032 amd_iommu_set_pci_msi_domain(struct device *dev, struct amd_iommu *iommu) in amd_iommu_set_pci_msi_domain()
1043 amd_iommu_set_pci_msi_domain(struct device *dev, struct amd_iommu *iommu) { } in amd_iommu_set_pci_msi_domain()
1048 void (*int_handler)(struct amd_iommu *), in amd_iommu_handle_irq() argument
1049 void (*overflow_handler)(struct amd_iommu *)) in amd_iommu_handle_irq() argument
1051 struct amd_iommu *iommu = (struct amd_iommu *) data; in amd_iommu_handle_irq()
1134 static int wait_on_sem(struct amd_iommu *iommu, u64 data) in wait_on_sem()
1151 static void copy_cmd_to_buffer(struct amd_iommu *iommu, in copy_cmd_to_buffer()
1170 struct amd_iommu *iommu, in build_completion_wait()
1307 static int __iommu_queue_command_sync(struct amd_iommu *iommu, in __iommu_queue_command_sync()
1344 static int iommu_queue_command_sync(struct amd_iommu *iommu, in iommu_queue_command_sync()
1358 static int iommu_queue_command(struct amd_iommu *iommu, struct iommu_cmd *cmd) in iommu_queue_command()
1367 static int iommu_completion_wait(struct amd_iommu *iommu) in iommu_completion_wait()
1409 static int iommu_flush_dte(struct amd_iommu *iommu, u16 devid) in iommu_flush_dte()
1418 static void iommu_flush_dte_sync(struct amd_iommu *iommu, u16 devid) in iommu_flush_dte_sync()
1427 static void amd_iommu_flush_dte_all(struct amd_iommu *iommu) in amd_iommu_flush_dte_all()
1442 static void amd_iommu_flush_tlb_all(struct amd_iommu *iommu) in amd_iommu_flush_tlb_all()
1457 static void amd_iommu_flush_tlb_domid(struct amd_iommu *iommu, u32 dom_id) in amd_iommu_flush_tlb_domid()
1468 static void amd_iommu_flush_all(struct amd_iommu *iommu) in amd_iommu_flush_all()
1478 static void iommu_flush_irt(struct amd_iommu *iommu, u16 devid) in iommu_flush_irt()
1487 static void amd_iommu_flush_irt_all(struct amd_iommu *iommu) in amd_iommu_flush_irt_all()
1501 void amd_iommu_flush_all_caches(struct amd_iommu *iommu) in amd_iommu_flush_all_caches()
1518 struct amd_iommu *iommu = get_amd_iommu_from_dev_data(dev_data); in device_flush_iotlb()
1530 struct amd_iommu *iommu = data; in device_flush_dte_alias()
1540 struct amd_iommu *iommu = get_amd_iommu_from_dev_data(dev_data); in device_flush_dte()
1583 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev_data->dev); in domain_flush_pages_v2()
1714 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev_data->dev); in amd_iommu_dev_flush_pasid_pages()
1757 struct amd_iommu *iommu = rlookup_amd_iommu(dev_data->dev); in amd_iommu_update_and_flush_device_table()
1772 struct amd_iommu *iommu; in amd_iommu_complete_ppr()
1869 struct amd_iommu *iommu, int pasids) in setup_gcr3_table()
1995 static void set_dte_gcr3_table(struct amd_iommu *iommu, in set_dte_gcr3_table()
2027 static void set_dte_entry(struct amd_iommu *iommu, in set_dte_entry()
2100 static void clear_dte_entry(struct amd_iommu *iommu, struct iommu_dev_data *dev_data) in clear_dte_entry()
2112 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev_data->dev); in dev_update_dte()
2131 struct amd_iommu *iommu = get_amd_iommu_from_dev_data(dev_data); in init_gcr3_table()
2176 static int pdom_attach_iommu(struct amd_iommu *iommu, in pdom_attach_iommu()
2213 static void pdom_detach_iommu(struct amd_iommu *iommu, in pdom_detach_iommu()
2244 struct amd_iommu *iommu = get_amd_iommu_from_dev_data(dev_data); in attach_device()
2306 struct amd_iommu *iommu = get_amd_iommu_from_dev_data(dev_data); in detach_device()
2356 struct amd_iommu *iommu; in amd_iommu_probe_device()
2505 static bool amd_iommu_hd_support(struct amd_iommu *iommu) in amd_iommu_hd_support()
2515 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev); in do_iommu_domain_alloc()
2550 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev); in amd_iommu_domain_alloc_paging_flags()
2648 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev); in amd_iommu_attach_device()
2785 struct amd_iommu *iommu = get_amd_iommu_from_dev(dev); in amd_iommu_capable()
2803 struct amd_iommu *iommu; in amd_iommu_set_dirty_tracking()
2864 struct amd_iommu *iommu; in amd_iommu_get_resv_regions()
3058 static void iommu_flush_irt_and_complete(struct amd_iommu *iommu, u16 devid) in iommu_flush_irt_and_complete()
3084 static void set_dte_irq_entry(struct amd_iommu *iommu, u16 devid, in set_dte_irq_entry()
3106 static struct irq_remap_table *get_irq_table(struct amd_iommu *iommu, u16 devid) in get_irq_table()
3148 static void set_remap_table_entry(struct amd_iommu *iommu, u16 devid, in set_remap_table_entry()
3163 struct amd_iommu *iommu = rlookup_amd_iommu(&pdev->dev); in set_remap_table_entry_alias()
3176 static struct irq_remap_table *alloc_irq_table(struct amd_iommu *iommu, in alloc_irq_table()
3242 static int alloc_irq_index(struct amd_iommu *iommu, u16 devid, int count, in alloc_irq_index()
3288 static int __modify_irte_ga(struct amd_iommu *iommu, u16 devid, int index, in __modify_irte_ga()
3319 static int modify_irte_ga(struct amd_iommu *iommu, u16 devid, int index, in modify_irte_ga()
3333 static int modify_irte(struct amd_iommu *iommu, in modify_irte()
3352 static void free_irte(struct amd_iommu *iommu, u16 devid, int index) in free_irte()
3398 static void irte_activate(struct amd_iommu *iommu, void *entry, u16 devid, u16 index) in irte_activate()
3406 static void irte_ga_activate(struct amd_iommu *iommu, void *entry, u16 devid, u16 index) in irte_ga_activate()
3414 static void irte_deactivate(struct amd_iommu *iommu, void *entry, u16 devid, u16 index) in irte_deactivate()
3422 static void irte_ga_deactivate(struct amd_iommu *iommu, void *entry, u16 devid, u16 index) in irte_ga_deactivate()
3430 static void irte_set_affinity(struct amd_iommu *iommu, void *entry, u16 devid, u16 index, in irte_set_affinity()
3440 static void irte_ga_set_affinity(struct amd_iommu *iommu, void *entry, u16 devid, u16 index, in irte_ga_set_affinity()
3539 struct amd_iommu *iommu = data->iommu; in irq_remapping_prepare_irte()
3590 struct amd_iommu *iommu; in irq_remapping_alloc()
3715 static void amd_ir_update_irte(struct irq_data *irqd, struct amd_iommu *iommu,
3725 struct amd_iommu *iommu = data->iommu; in irq_remapping_activate()
3742 struct amd_iommu *iommu = data->iommu; in irq_remapping_deactivate()
3752 struct amd_iommu *iommu; in irq_remapping_select()
3891 static void amd_ir_update_irte(struct irq_data *irqd, struct amd_iommu *iommu, in amd_ir_update_irte()
3913 struct amd_iommu *iommu = ir_data->iommu; in amd_ir_set_affinity()
3955 int amd_iommu_create_irq_domain(struct amd_iommu *iommu) in amd_iommu_create_irq_domain()