Symbol: vtdmap
usr/src/uts/intel/io/vmm/intel/vtd.c
137
static struct vtdmap *vtdmaps[DRHD_MAX_UNITS];
usr/src/uts/intel/io/vmm/intel/vtd.c
146
vtd_max_domains(struct vtdmap *vtdmap)
usr/src/uts/intel/io/vmm/intel/vtd.c
150
nd = VTD_CAP_ND(vtdmap->cap);
usr/src/uts/intel/io/vmm/intel/vtd.c
194
static struct vtdmap *
usr/src/uts/intel/io/vmm/intel/vtd.c
199
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
214
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
215
return (vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
251
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
252
return (vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
262
vtd_wbflush(struct vtdmap *vtdmap)
usr/src/uts/intel/io/vmm/intel/vtd.c
265
if (VTD_ECAP_COHERENCY(vtdmap->ext_cap) == 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
268
if (VTD_CAP_RWBF(vtdmap->cap)) {
usr/src/uts/intel/io/vmm/intel/vtd.c
269
vtdmap->gcr = VTD_GCR_WBF;
usr/src/uts/intel/io/vmm/intel/vtd.c
270
while ((vtdmap->gsr & VTD_GSR_WBFS) != 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
276
vtd_ctx_global_invalidate(struct vtdmap *vtdmap)
usr/src/uts/intel/io/vmm/intel/vtd.c
279
vtdmap->ccr = VTD_CCR_ICC | VTD_CCR_CIRG_GLOBAL;
usr/src/uts/intel/io/vmm/intel/vtd.c
280
while ((vtdmap->ccr & VTD_CCR_ICC) != 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
285
vtd_iotlb_global_invalidate(struct vtdmap *vtdmap)
usr/src/uts/intel/io/vmm/intel/vtd.c
290
vtd_wbflush(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
292
offset = VTD_ECAP_IRO(vtdmap->ext_cap) * 16;
usr/src/uts/intel/io/vmm/intel/vtd.c
293
iotlb_reg = (volatile uint64_t *)((caddr_t)vtdmap + offset + 8);
usr/src/uts/intel/io/vmm/intel/vtd.c
306
vtd_translation_enable(struct vtdmap *vtdmap)
usr/src/uts/intel/io/vmm/intel/vtd.c
309
vtdmap->gcr = VTD_GCR_TE;
usr/src/uts/intel/io/vmm/intel/vtd.c
310
while ((vtdmap->gsr & VTD_GSR_TES) == 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
315
vtd_translation_disable(struct vtdmap *vtdmap)
usr/src/uts/intel/io/vmm/intel/vtd.c
318
vtdmap->gcr = 0;
usr/src/uts/intel/io/vmm/intel/vtd.c
319
while ((vtdmap->gsr & VTD_GSR_TES) != 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
425
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
452
vtdmaps[units] = (struct vtdmap *)PHYS_TO_DMAP(mapaddr);
usr/src/uts/intel/io/vmm/intel/vtd.c
484
vtdmaps[units] = (struct vtdmap *)PHYS_TO_DMAP(drhd->Address);
usr/src/uts/intel/io/vmm/intel/vtd.c
487
vtdmaps[units] = (struct vtdmap *)vtd_map(vtddips[units]);
usr/src/uts/intel/io/vmm/intel/vtd.c
506
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
508
if (VTD_CAP_CM(vtdmap->cap) != 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
512
if ((tmp = vtd_max_domains(vtdmap)) < max_domains)
usr/src/uts/intel/io/vmm/intel/vtd.c
564
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
567
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
568
vtd_wbflush(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
571
vtdmap->rta = vtophys(root_table);
usr/src/uts/intel/io/vmm/intel/vtd.c
572
vtdmap->gcr = VTD_GCR_SRTP;
usr/src/uts/intel/io/vmm/intel/vtd.c
573
while ((vtdmap->gsr & VTD_GSR_RTPS) == 0)
usr/src/uts/intel/io/vmm/intel/vtd.c
576
vtd_ctx_global_invalidate(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
577
vtd_iotlb_global_invalidate(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
579
vtd_translation_enable(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
587
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
590
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
591
vtd_translation_disable(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
602
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
615
if ((vtdmap = vtd_device_scope(rid)) == NULL)
usr/src/uts/intel/io/vmm/intel/vtd.c
625
if (VTD_ECAP_DI(vtdmap->ext_cap))
usr/src/uts/intel/io/vmm/intel/vtd.c
643
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
663
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
664
vtd_ctx_global_invalidate(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
665
vtd_iotlb_global_invalidate(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
779
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
786
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
787
vtd_iotlb_global_invalidate(vtdmap);
usr/src/uts/intel/io/vmm/intel/vtd.c
797
struct vtdmap *vtdmap;
usr/src/uts/intel/io/vmm/intel/vtd.c
829
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
831
tmp &= VTD_CAP_SAGAW(vtdmap->cap);
usr/src/uts/intel/io/vmm/intel/vtd.c
876
vtdmap = vtdmaps[i];
usr/src/uts/intel/io/vmm/intel/vtd.c
878
dom->spsmask &= VTD_CAP_SPS(vtdmap->cap);
usr/src/uts/intel/io/vmm/intel/vtd.c
891
dom->spsmask = VTD_CAP_SPS(vtdmap->cap);