Lines Matching refs:va
73 static int vmlfb_alloc_vram_area(struct vram_area *va, unsigned max_order, in vmlfb_alloc_vram_area() argument
89 va->logical = in vmlfb_alloc_vram_area()
91 } while (va->logical == 0 && max_order > min_order); in vmlfb_alloc_vram_area()
93 if (!va->logical) in vmlfb_alloc_vram_area()
96 va->phys = virt_to_phys((void *)va->logical); in vmlfb_alloc_vram_area()
97 va->size = PAGE_SIZE << max_order; in vmlfb_alloc_vram_area()
98 va->order = max_order; in vmlfb_alloc_vram_area()
107 memset((void *)va->logical, 0x00, va->size); in vmlfb_alloc_vram_area()
108 for (i = va->logical; i < va->logical + va->size; i += PAGE_SIZE) { in vmlfb_alloc_vram_area()
116 set_pages_uc(virt_to_page(va->logical), va->size >> PAGE_SHIFT); in vmlfb_alloc_vram_area()
120 va->size, va->phys); in vmlfb_alloc_vram_area()
130 static void vmlfb_free_vram_area(struct vram_area *va) in vmlfb_free_vram_area() argument
134 if (va->logical) { in vmlfb_free_vram_area()
140 set_pages_wb(virt_to_page(va->logical), in vmlfb_free_vram_area()
141 va->size >> PAGE_SHIFT); in vmlfb_free_vram_area()
148 for (j = va->logical; j < va->logical + va->size; in vmlfb_free_vram_area()
155 va->size, va->phys); in vmlfb_free_vram_area()
156 free_pages(va->logical, va->order); in vmlfb_free_vram_area()
158 va->logical = 0; in vmlfb_free_vram_area()
191 struct vram_area *va; in vmlfb_alloc_vram() local
196 va = &vinfo->vram[i]; in vmlfb_alloc_vram()
202 err = vmlfb_alloc_vram_area(va, order, 0); in vmlfb_alloc_vram()
208 vinfo->vram_start = va->phys; in vmlfb_alloc_vram()
209 vinfo->vram_logical = (void __iomem *) va->logical; in vmlfb_alloc_vram()
210 vinfo->vram_contig_size = va->size; in vmlfb_alloc_vram()
217 if (va->phys + va->size == va2->phys || in vmlfb_alloc_vram()
218 va2->phys + va2->size == va->phys) { in vmlfb_alloc_vram()
226 if (va->phys < vinfo->vram_start) { in vmlfb_alloc_vram()
227 vinfo->vram_start = va->phys; in vmlfb_alloc_vram()
229 (void __iomem *)va->logical; in vmlfb_alloc_vram()
231 vinfo->vram_contig_size += va->size; in vmlfb_alloc_vram()
233 vmlfb_free_vram_area(va); in vmlfb_alloc_vram()
238 if (requested < va->size) in vmlfb_alloc_vram()
241 requested -= va->size; in vmlfb_alloc_vram()