Searched refs:agaw (Results 1 - 3 of 3) sorted by relevance
/linux-4.4.14/drivers/iommu/ |
H A D | intel-iommu.c | 109 static inline int agaw_to_level(int agaw) agaw_to_level() argument 111 return agaw + 2; agaw_to_level() 114 static inline int agaw_to_width(int agaw) agaw_to_width() argument 116 return min_t(int, 30 + agaw * LEVEL_STRIDE, MAX_AGAW_WIDTH); agaw_to_width() 400 int agaw; member in struct:dmar_domain 700 int addr_width = agaw_to_width(domain->agaw) - VTD_PAGE_SHIFT; domain_pfn_supported() 708 int agaw = -1; __iommu_calculate_agaw() local 711 for (agaw = width_to_agaw(max_gaw); __iommu_calculate_agaw() 712 agaw >= 0; agaw--) { __iommu_calculate_agaw() 713 if (test_bit(agaw, &sagaw)) __iommu_calculate_agaw() 717 return agaw; __iommu_calculate_agaw() 729 * calculate agaw for each iommu. 730 * "SAGAW" may be different across iommus, use a default agaw, and 731 * get a supported less agaw for iommus that don't support the default agaw. 998 int level = agaw_to_level(domain->agaw); pfn_to_dma_pte() 1055 int total = agaw_to_level(domain->agaw); dma_pfn_level_pte() 1158 dma_pte_free_level(domain, agaw_to_level(domain->agaw), dma_pte_free_pagetable() 1261 freelist = dma_pte_clear_level(domain, agaw_to_level(domain->agaw), domain_unmap() 1849 int agaw; guestwidth_to_adjustwidth() local 1853 agaw = gaw; guestwidth_to_adjustwidth() 1855 agaw = gaw + 9 - r; guestwidth_to_adjustwidth() 1856 if (agaw > 64) guestwidth_to_adjustwidth() 1857 agaw = 64; guestwidth_to_adjustwidth() 1858 return agaw; guestwidth_to_adjustwidth() 1864 int adjust_width, agaw; domain_init() local 1876 agaw = width_to_agaw(adjust_width); domain_init() 1878 if (!test_bit(agaw, &sagaw)) { domain_init() 1880 pr_debug("Hardware doesn't support agaw %d\n", agaw); domain_init() 1881 agaw = find_next_bit(&sagaw, 5, agaw); domain_init() 1882 if (agaw >= 5) domain_init() 1885 domain->agaw = agaw; domain_init() 1949 int ret, agaw; domain_context_mapping_one() local 1979 * Skip top levels of page tables for iommu which has less agaw domain_context_mapping_one() 1983 for (agaw = domain->agaw; agaw != iommu->agaw; agaw--) { domain_context_mapping_one() 1997 context_set_address_width(context, iommu->agaw); domain_context_mapping_one() 2537 if (end >> agaw_to_width(domain->agaw)) { domain_prepare_identity_map() 2540 agaw_to_width(domain->agaw), domain_prepare_identity_map() 4736 domain->agaw = width_to_agaw(adjust_width); md_domain_init() 4817 /* check if this iommu agaw is sufficient for max mapped address */ intel_iommu_attach_device() 4818 addr_width = agaw_to_width(iommu->agaw); intel_iommu_attach_device() 4833 while (iommu->agaw < dmar_domain->agaw) { intel_iommu_attach_device() 4842 dmar_domain->agaw--; intel_iommu_attach_device() 4874 /* check if minimum agaw is sufficient for mapped address */ intel_iommu_map()
|
H A D | dmar.c | 1004 int agaw = 0; alloc_iommu() local 1030 agaw = iommu_calculate_agaw(iommu); alloc_iommu() 1031 if (agaw < 0) { alloc_iommu() 1032 pr_err("Cannot get a valid agaw for iommu (seq_id = %d)\n", alloc_iommu() 1038 pr_err("Cannot get a valid max agaw for iommu (seq_id = %d)\n", alloc_iommu() 1042 iommu->agaw = agaw; alloc_iommu()
|
/linux-4.4.14/include/linux/ |
H A D | intel-iommu.h | 407 int agaw; /* agaw of this iommu */ member in struct:intel_iommu
|
Completed in 191 milliseconds