• Home
  • Raw
  • Download

Lines Matching refs:addr

53 static int ioremap_pte_range(pmd_t *pmd, unsigned long addr,  in ioremap_pte_range()  argument
60 pte = pte_alloc_kernel(pmd, addr); in ioremap_pte_range()
65 set_pte_at(&init_mm, addr, pte, pfn_pte(pfn, prot)); in ioremap_pte_range()
67 } while (pte++, addr += PAGE_SIZE, addr != end); in ioremap_pte_range()
71 static inline int ioremap_pmd_range(pud_t *pud, unsigned long addr, in ioremap_pmd_range() argument
77 phys_addr -= addr; in ioremap_pmd_range()
78 pmd = pmd_alloc(&init_mm, pud, addr); in ioremap_pmd_range()
82 next = pmd_addr_end(addr, end); in ioremap_pmd_range()
85 ((next - addr) == PMD_SIZE) && in ioremap_pmd_range()
86 IS_ALIGNED(phys_addr + addr, PMD_SIZE) && in ioremap_pmd_range()
88 if (pmd_set_huge(pmd, phys_addr + addr, prot)) in ioremap_pmd_range()
92 if (ioremap_pte_range(pmd, addr, next, phys_addr + addr, prot)) in ioremap_pmd_range()
94 } while (pmd++, addr = next, addr != end); in ioremap_pmd_range()
98 static inline int ioremap_pud_range(pgd_t *pgd, unsigned long addr, in ioremap_pud_range() argument
104 phys_addr -= addr; in ioremap_pud_range()
105 pud = pud_alloc(&init_mm, pgd, addr); in ioremap_pud_range()
109 next = pud_addr_end(addr, end); in ioremap_pud_range()
112 ((next - addr) == PUD_SIZE) && in ioremap_pud_range()
113 IS_ALIGNED(phys_addr + addr, PUD_SIZE) && in ioremap_pud_range()
115 if (pud_set_huge(pud, phys_addr + addr, prot)) in ioremap_pud_range()
119 if (ioremap_pmd_range(pud, addr, next, phys_addr + addr, prot)) in ioremap_pud_range()
121 } while (pud++, addr = next, addr != end); in ioremap_pud_range()
125 int ioremap_page_range(unsigned long addr, in ioremap_page_range() argument
133 BUG_ON(addr >= end); in ioremap_page_range()
135 start = addr; in ioremap_page_range()
136 phys_addr -= addr; in ioremap_page_range()
137 pgd = pgd_offset_k(addr); in ioremap_page_range()
139 next = pgd_addr_end(addr, end); in ioremap_page_range()
140 err = ioremap_pud_range(pgd, addr, next, phys_addr+addr, prot); in ioremap_page_range()
143 } while (pgd++, addr = next, addr != end); in ioremap_page_range()