tag | line | file | source code |
iommu | 1288 | arch/sparc/mm/srmmu.c | static inline void srmmu_map_dvma_pages_for_iommu(struct iommu_struct *iommu) |
iommu | 1294 | arch/sparc/mm/srmmu.c | iopte = iommu->page_table; |
iommu | 1295 | arch/sparc/mm/srmmu.c | iopte += ((DVMA_VADDR - iommu->start) >> PAGE_SHIFT); |
iommu | 1323 | arch/sparc/mm/srmmu.c | struct iommu_struct *iommu; |
iommu | 1327 | arch/sparc/mm/srmmu.c | iommu = (struct iommu_struct *) memory_start; |
iommu | 1330 | arch/sparc/mm/srmmu.c | iommu->regs = (struct iommu_regs *) |
iommu | 1333 | arch/sparc/mm/srmmu.c | if(!iommu->regs) |
iommu | 1335 | arch/sparc/mm/srmmu.c | impl = (iommu->regs->control & IOMMU_CTRL_IMPL) >> 28; |
iommu | 1336 | arch/sparc/mm/srmmu.c | vers = (iommu->regs->control & IOMMU_CTRL_VERS) >> 24; |
iommu | 1337 | arch/sparc/mm/srmmu.c | tmp = iommu->regs->control; |
iommu | 1340 | arch/sparc/mm/srmmu.c | iommu->regs->control = tmp; |
iommu | 1341 | arch/sparc/mm/srmmu.c | iommu_invalidate(iommu->regs); |
iommu | 1342 | arch/sparc/mm/srmmu.c | iommu->plow = iommu->start = 0xfc000000; |
iommu | 1343 | arch/sparc/mm/srmmu.c | iommu->end = 0xffffffff; |
iommu | 1346 | arch/sparc/mm/srmmu.c | ptsize = iommu->end - iommu->start + 1; |
iommu | 1352 | arch/sparc/mm/srmmu.c | iommu->lowest = iommu->page_table = (iopte_t *) memory_start; |
iommu | 1357 | arch/sparc/mm/srmmu.c | srmmu_uncache_iommu_page_table((unsigned long) iommu->page_table, ptsize); |
iommu | 1359 | arch/sparc/mm/srmmu.c | memset(iommu->page_table, 0, ptsize); |
iommu | 1360 | arch/sparc/mm/srmmu.c | srmmu_map_dvma_pages_for_iommu(iommu); |
iommu | 1361 | arch/sparc/mm/srmmu.c | iommu->regs->base = srmmu_v2p((unsigned long) iommu->page_table) >> 4; |
iommu | 1362 | arch/sparc/mm/srmmu.c | iommu_invalidate(iommu->regs); |
iommu | 1364 | arch/sparc/mm/srmmu.c | sbus->iommu = iommu; |
iommu | 1366 | arch/sparc/mm/srmmu.c | impl, vers, iommu->page_table, ptsize); |
iommu | 1372 | arch/sparc/mm/srmmu.c | struct iommu_struct *iommu = sbus->iommu; |
iommu | 1380 | arch/sparc/mm/srmmu.c | start = iommu->plow; |
iommu | 1382 | arch/sparc/mm/srmmu.c | iopte = iommu->lowest; |
iommu | 1393 | arch/sparc/mm/srmmu.c | iommu_invalidate_page(iommu->regs, start); |
iommu | 1394 | arch/sparc/mm/srmmu.c | iommu->lowest = iopte + 1; |
iommu | 1395 | arch/sparc/mm/srmmu.c | iommu->plow = start + PAGE_SIZE; |
iommu | 1402 | arch/sparc/mm/srmmu.c | struct iommu_struct *iommu = sbus->iommu; |
iommu | 1404 | arch/sparc/mm/srmmu.c | iopte_t *iopte = iommu->lowest; |
iommu | 1406 | arch/sparc/mm/srmmu.c | start = iommu->plow; |
iommu | 1422 | arch/sparc/mm/srmmu.c | iommu_invalidate_page(iommu->regs, start); |
iommu | 1427 | arch/sparc/mm/srmmu.c | iommu->lowest = iopte; |
iommu | 1428 | arch/sparc/mm/srmmu.c | iommu->plow = start; |
iommu | 1433 | arch/sparc/mm/srmmu.c | struct iommu_struct *iommu = sbus->iommu; |
iommu | 1440 | arch/sparc/mm/srmmu.c | iopte = iommu->page_table + ((page - iommu->start) >> PAGE_SHIFT); |
iommu | 1442 | arch/sparc/mm/srmmu.c | iommu_invalidate_page(iommu->regs, page); |
iommu | 1443 | arch/sparc/mm/srmmu.c | if(iopte < iommu->lowest) { |
iommu | 1444 | arch/sparc/mm/srmmu.c | iommu->lowest = iopte; |
iommu | 1445 | arch/sparc/mm/srmmu.c | iommu->plow = page; |
iommu | 1451 | arch/sparc/mm/srmmu.c | struct iommu_struct *iommu = sbus->iommu; |
iommu | 1457 | arch/sparc/mm/srmmu.c | iopte = iommu->page_table + ((page - iommu->start) >> PAGE_SHIFT); |
iommu | 1459 | arch/sparc/mm/srmmu.c | iommu_invalidate_page(iommu->regs, page); |
iommu | 1460 | arch/sparc/mm/srmmu.c | if(iopte < iommu->lowest) { |
iommu | 1461 | arch/sparc/mm/srmmu.c | iommu->lowest = iopte; |
iommu | 1462 | arch/sparc/mm/srmmu.c | iommu->plow = page; |
iommu | 70 | include/asm-sparc/sbus.h | struct iommu_struct *iommu; /* IOMMU for this sbus if applicable */ |