/illumos-gate/usr/src/psm/promif/ieee1275/sun4u/ |
H A D | prom_tlb.c | 42 ihandle_t immu = prom_mmu_ihandle(); local 44 if ((immu == (ihandle_t)-1)) 51 ci[4] = p1275_ihandle2cell(immu); /* Arg2: mmu ihandle */ 72 ihandle_t immu = prom_mmu_ihandle(); local 74 if ((immu == (ihandle_t)-1)) 81 ci[4] = p1275_ihandle2cell(immu); /* Arg2: mmu ihandle */
|
/illumos-gate/usr/src/psm/promif/ieee1275/sun4/ |
H A D | prom_mmu.c | 41 static ihandle_t immu; local 43 if (immu != (ihandle_t)0) 44 return (immu); 47 return (immu = (ihandle_t)-1); 49 (void) prom_getprop(prom_chosennode(), "mmu", (caddr_t)(&immu)); 50 return (immu); 68 ihandle_t immu = prom_mmu_ihandle(); local 70 if ((immu == (ihandle_t)-1)) 77 ci[4] = p1275_ihandle2cell(immu); /* Arg2: mmu ihandle */ 109 ihandle_t immu local 144 ihandle_t immu = prom_mmu_ihandle(); local 176 ihandle_t immu = prom_mmu_ihandle(); local 201 ihandle_t immu = prom_mmu_ihandle(); local 258 ihandle_t immu = prom_mmu_ihandle(); local [all...] |
/illumos-gate/usr/src/uts/sun4v/promif/ |
H A D | promif_emul.c | 199 ihandle_t immu; local 207 if ((immu = prom_mmu_ihandle()) == (ihandle_t)-1) { 211 node = (pnode_t)prom_getphandle(immu);
|
/illumos-gate/usr/src/psm/stand/cpr/sparcv9/sun4u/ |
H A D | util.c | 244 ihandle_t immu; local 248 immu = prom_mmu_ihandle(); 249 if (immu == (ihandle_t)-1) 256 ci[4] = p1275_ihandle2cell(immu); /* Arg2: memory ihandle */
|
/illumos-gate/usr/src/uts/i86pc/io/ |
H A D | immu_dmar.c | 49 #include <sys/immu.h> 840 * Called by immu.c to parse and convert "raw" ACPI DMAR table 1233 immu_dmar_set_immu(void *dmar_unit, immu_t *immu) argument 1238 ASSERT(immu); 1240 drhd->dr_immu = immu; 1250 /* for a given ioapicid, find the source id and immu */ 1266 /* for a given ioapicid, find the source id and immu */
|
H A D | immu_qinv.c | 37 #include <sys/immu.h> 161 static void qinv_submit_inv_dsc(immu_t *immu, qinv_dsc_t *dsc); 162 static void qinv_context_common(immu_t *immu, uint8_t function_mask, 164 static void qinv_iotlb_common(immu_t *immu, uint_t domain_id, 166 static void qinv_iec_common(immu_t *immu, uint_t iidx, 169 static void qinv_wait_sync(immu_t *immu, immu_inv_wait_t *iwp); 171 static void qinv_dev_iotlb_common(immu_t *immu, uint16_t sid, 177 qinv_submit_inv_dsc(immu_t *immu, qinv_dsc_t *dsc) argument 186 qinv = (qinv_t *)immu->immu_qinv; 205 immu_regs_get64(immu, IMMU_REG_INVAL_Q 222 qinv_context_common(immu_t *immu, uint8_t function_mask, uint16_t source_id, uint_t domain_id, ctt_inv_g_t type) argument 235 qinv_iotlb_common(immu_t *immu, uint_t domain_id, uint64_t addr, uint_t am, uint_t hint, tlb_inv_g_t type) argument 279 qinv_dev_iotlb_common(immu_t *immu, uint16_t sid, uint64_t addr, uint_t size, uint_t max_invs_pd) argument 292 qinv_iec_common(immu_t *immu, uint_t iidx, uint_t im, uint_t g) argument 307 qinv_wait_sync(immu_t *immu, immu_inv_wait_t *iwp) argument 375 qinv_setup(immu_t *immu) argument 526 immu_t *immu; local 548 immu_qinv_startup(immu_t *immu) argument 569 immu_qinv_context_fsi(immu_t *immu, uint8_t function_mask, uint16_t source_id, uint_t domain_id, immu_inv_wait_t *iwp) argument 582 immu_qinv_context_dsi(immu_t *immu, uint_t domain_id, immu_inv_wait_t *iwp) argument 593 immu_qinv_context_gbl(immu_t *immu, immu_inv_wait_t *iwp) argument 604 immu_qinv_iotlb_psi(immu_t *immu, uint_t domain_id, uint64_t dvma, uint_t count, uint_t hint, immu_inv_wait_t *iwp) argument 642 immu_qinv_iotlb_dsi(immu_t *immu, uint_t domain_id, immu_inv_wait_t *iwp) argument 653 immu_qinv_iotlb_gbl(immu_t *immu, immu_inv_wait_t *iwp) argument 661 immu_qinv_intr_global(immu_t *immu, immu_inv_wait_t *iwp) argument 669 immu_qinv_intr_one_cache(immu_t *immu, uint_t iidx, immu_inv_wait_t *iwp) argument 677 immu_qinv_intr_caches(immu_t *immu, uint_t iidx, uint_t cnt, immu_inv_wait_t *iwp) argument 711 immu_qinv_report_fault(immu_t *immu) argument [all...] |
H A D | immu_regs.c | 35 #include <sys/immu.h> 38 #define get_reg32(immu, offset) ddi_get32((immu)->immu_regs_handle, \ 39 (uint32_t *)(immu->immu_regs_addr + (offset))) 40 #define get_reg64(immu, offset) ddi_get64((immu)->immu_regs_handle, \ 41 (uint64_t *)(immu->immu_regs_addr + (offset))) 42 #define put_reg32(immu, offset, val) ddi_put32\ 43 ((immu)->immu_regs_handle, \ 44 (uint32_t *)(immu 97 iotlb_flush(immu_t *immu, uint_t domain_id, uint64_t addr, uint_t am, uint_t hint, immu_iotlb_inv_t type) argument 155 immu_regs_iotlb_psi(immu_t *immu, uint_t did, uint64_t dvma, uint_t snpages, uint_t hint, immu_inv_wait_t *iwp) argument 215 immu_regs_iotlb_dsi(immu_t *immu, uint_t domain_id, immu_inv_wait_t *iwp) argument 228 immu_regs_iotlb_gbl(immu_t *immu, immu_inv_wait_t *iwp) argument 259 set_agaw(immu_t *immu) argument 346 setup_regs(immu_t *immu) argument 445 immu_t *immu; local 464 immu_regs_resume(immu_t *immu) argument 498 immu_regs_suspend(immu_t *immu) argument 512 immu_regs_startup(immu_t *immu) argument 537 immu_regs_shutdown(immu_t *immu) argument 563 immu_regs_intr_enable(immu_t *immu, uint32_t msi_addr, uint32_t msi_data, uint32_t uaddr) argument 582 immu_regs_passthru_supported(immu_t *immu) argument 597 immu_regs_is_TM_reserved(immu_t *immu) argument 611 immu_regs_is_SNP_reserved(immu_t *immu) argument 623 immu_regs_wbf_flush(immu_t *immu) argument 645 immu_regs_cpu_flush(immu_t *immu, caddr_t addr, uint_t size) argument 668 context_flush(immu_t *immu, uint8_t function_mask, uint16_t sid, uint_t did, immu_context_inv_t type) argument 706 immu_regs_context_fsi(immu_t *immu, uint8_t function_mask, uint16_t source_id, uint_t domain_id, immu_inv_wait_t *iwp) argument 714 immu_regs_context_dsi(immu_t *immu, uint_t domain_id, immu_inv_wait_t *iwp) argument 721 immu_regs_context_gbl(immu_t *immu, immu_inv_wait_t *iwp) argument 736 immu_regs_set_root_table(immu_t *immu) argument 753 immu_regs_qinv_enable(immu_t *immu, uint64_t qinv_reg_value) argument 782 immu_regs_intrmap_enable(immu_t *immu, uint64_t irta_reg) argument 824 immu_regs_get64(immu_t *immu, uint_t reg) argument 830 immu_regs_get32(immu_t *immu, uint_t reg) argument 836 immu_regs_put64(immu_t *immu, uint_t reg, uint64_t val) argument 842 immu_regs_put32(immu_t *immu, uint_t reg, uint32_t val) argument [all...] |
H A D | immu.c | 60 #include <sys/immu.h> 515 "immu-flush-gran"); 523 "immu-flush-gran"); 537 get_conf_opt("immu-enable", &immu_enable); 538 get_conf_opt("immu-dvma-enable", &immu_dvma_enable); 539 get_conf_opt("immu-gfxdvma-enable", &immu_gfxdvma_enable); 540 get_conf_opt("immu-intrmap-enable", &immu_intrmap_enable); 541 get_conf_opt("immu-qinv-enable", &immu_qinv_enable); 544 get_conf_opt("immu-quirk-usbpage0", &immu_quirk_usbpage0); 545 get_conf_opt("immu 796 immu_t *immu; local 925 immu_t *immu; local 1213 immu_t *immu; local 1271 immu_t *immu; local [all...] |
H A D | immu_intrmap.c | 36 #include <sys/immu.h> 302 init_unit(immu_t *immu) argument 334 ASSERT(IMMU_ECAP_GET_QI(immu->immu_regs_excap)); 337 if (!IMMU_ECAP_GET_EIM(immu->immu_regs_excap)) { 348 if (ddi_dma_alloc_handle(immu->immu_dip, 383 immu->immu_intrmap = intrmap; 391 immu_t *immu = NULL; local 394 immu = immu_dmar_ioapic_immu(ioapic_index); 397 immu = immu_dmar_get_immu(dip); 400 return (immu); 479 intrmap_enable(immu_t *immu) argument 501 immu_intr_handler(immu_t *immu) argument 619 immu_t *immu; local 651 immu_t *immu; local 669 immu_t *immu; local 749 immu_t *immu; local 828 immu_t *immu; local 916 immu_t *immu; local 948 immu_intrmap_startup(immu_t *immu) argument 963 immu_intr_register(immu_t *immu) argument [all...] |
H A D | immu_dvma.c | 47 #include <sys/immu.h> 74 static domain_t *domain_create(immu_t *immu, dev_info_t *ddip, 248 immu_devi_set_spclist(dev_info_t *dip, immu_t *immu) argument 255 spclist = &(immu->immu_dvma_gfx_list); 257 spclist = &(immu->immu_dvma_lpc_list); 261 mutex_enter(&(immu->immu_lock)); 263 mutex_exit(&(immu->immu_lock)); 321 get_lpc_devinfo(immu_t *immu, dev_info_t *rdip, immu_flags_t immu_flags) argument 324 dvarg.dva_list = &(immu->immu_dvma_lpc_list); 347 immu_t *immu; local 426 immu_t *immu = arg; local 505 pgtable_alloc(immu_t *immu, immu_flags_t immu_flags) argument 527 pgtable_free(immu_t *immu, pgtable_t *pgtable) argument 614 immu_t *immu; local 805 did_alloc(immu_t *immu, dev_info_t *rdip, dev_info_t *ddip, immu_flags_t immu_flags) argument 831 immu_t *immu; local 1019 create_xlate_arena(immu_t *immu, domain_t *domain, dev_info_t *rdip, immu_flags_t immu_flags) argument 1174 immu_t *immu; local 1266 create_unity_domain(immu_t *immu) argument 1312 domain_create(immu_t *immu, dev_info_t *ddip, dev_info_t *rdip, immu_flags_t immu_flags) argument 1418 did_init(immu_t *immu) argument 1449 context_set(immu_t *immu, domain_t *domain, pgtable_t *root_table, int bus, int devfunc) argument 1537 context_create(immu_t *immu) argument 1591 context_init(immu_t *immu) argument 1629 immu_context_update(immu_t *immu, domain_t *domain, dev_info_t *ddip, dev_info_t *rdip, immu_flags_t immu_flags) argument 1743 PDTE_check(immu_t *immu, hw_pdte_t pdte, pgtable_t *next, paddr_t paddr, dev_info_t *rdip, immu_flags_t immu_flags) argument 1846 PTE_clear_all(immu_t *immu, domain_t *domain, xlate_t *xlate, uint64_t *dvma_ptr, uint64_t *npages_ptr, dev_info_t *rdip) argument 1971 immu_t *immu; local 2011 PTE_set_one(immu_t *immu, hw_pdte_t *hwp, paddr_t paddr, dev_info_t *rdip, immu_flags_t immu_flags) argument 2094 PTE_set_all(immu_t *immu, domain_t *domain, xlate_t *xlate, uint64_t *dvma_ptr, uint64_t *nvpages_ptr, immu_dcookie_t *dcookies, int dcount, dev_info_t *rdip, immu_flags_t immu_flags) argument 2171 PDE_set_one(immu_t *immu, hw_pdte_t *hwp, pgtable_t *next, dev_info_t *rdip, immu_flags_t immu_flags) argument 2241 PDE_set_all(immu_t *immu, domain_t *domain, xlate_t *xlate, int nlevels, dev_info_t *rdip, immu_flags_t immu_flags) argument 2356 immu_t *immu = domain->dom_immu; local 2396 immu_t *immu = domain->dom_immu; local 2460 immu_t *immu; local 2555 immu_t *immu; local 2776 immu_t *immu; local 2811 immu_dvma_startup(immu_t *immu) argument 2876 immu_t *immu; local 2961 immu_t *immu; local 3060 immu_t *immu; local [all...] |
/illumos-gate/usr/src/uts/i86pc/sys/ |
H A D | immu.h | 101 struct immu; 131 struct immu *dr_immu; 554 typedef struct immu { struct 644 #define DDI_DVMA_MAPTYPE_ROOTNEX_PROP "immu-dvma-mapping" 677 /* list node for list of domains off immu */ 865 void immu_dmar_set_immu(void *dmar_unit, immu_t *immu); 872 /* immu.c interfaces */ 880 void immu_regs_startup(immu_t *immu); 881 int immu_regs_resume(immu_t *immu); 882 void immu_regs_suspend(immu_t *immu); [all...] |