Lines Matching refs:md

254 is_memory_available (efi_memory_desc_t *md)  in is_memory_available()  argument
256 if (!(md->attribute & EFI_MEMORY_WB)) in is_memory_available()
259 switch (md->type) { in is_memory_available()
278 #define efi_md_size(md) (md->num_pages << EFI_PAGE_SHIFT) argument
287 efi_md_end(efi_memory_desc_t *md) in efi_md_end() argument
289 return (md->phys_addr + efi_md_size(md)); in efi_md_end()
293 efi_wb(efi_memory_desc_t *md) in efi_wb() argument
295 return (md->attribute & EFI_MEMORY_WB); in efi_wb()
299 efi_uc(efi_memory_desc_t *md) in efi_uc() argument
301 return (md->attribute & EFI_MEMORY_UC); in efi_uc()
351 efi_memory_desc_t *md; in efi_get_pal_addr() local
361 md = p; in efi_get_pal_addr()
362 if (md->type != EFI_PAL_CODE) in efi_get_pal_addr()
367 "dropped @ %llx\n", md->phys_addr); in efi_get_pal_addr()
375 vaddr = PAGE_OFFSET + md->phys_addr; in efi_get_pal_addr()
396 if (efi_md_size(md) > IA64_GRANULE_SIZE) in efi_get_pal_addr()
404 smp_processor_id(), md->phys_addr, in efi_get_pal_addr()
405 md->phys_addr + efi_md_size(md), in efi_get_pal_addr()
408 return __va(md->phys_addr); in efi_get_pal_addr()
563 efi_memory_desc_t *md; in efi_init() local
573 md = p; in efi_init()
574 size = md->num_pages << EFI_PAGE_SHIFT; in efi_init()
592 i, efi_md_typeattr_format(buf, sizeof(buf), md), in efi_init()
593 md->phys_addr, in efi_init()
594 md->phys_addr + efi_md_size(md), size, unit); in efi_init()
607 efi_memory_desc_t *md; in efi_enter_virtual_mode() local
616 md = p; in efi_enter_virtual_mode()
617 if (md->attribute & EFI_MEMORY_RUNTIME) { in efi_enter_virtual_mode()
622 if (md->attribute & EFI_MEMORY_WB) { in efi_enter_virtual_mode()
623 md->virt_addr = (u64) __va(md->phys_addr); in efi_enter_virtual_mode()
624 } else if (md->attribute & EFI_MEMORY_UC) { in efi_enter_virtual_mode()
625 md->virt_addr = (u64) ioremap(md->phys_addr, 0); in efi_enter_virtual_mode()
626 } else if (md->attribute & EFI_MEMORY_WC) { in efi_enter_virtual_mode()
628 md->virt_addr = ia64_remap(md->phys_addr, in efi_enter_virtual_mode()
637 md->virt_addr = (u64) ioremap(md->phys_addr, 0); in efi_enter_virtual_mode()
639 } else if (md->attribute & EFI_MEMORY_WT) { in efi_enter_virtual_mode()
641 md->virt_addr = ia64_remap(md->phys_addr, in efi_enter_virtual_mode()
650 md->virt_addr = (u64) ioremap(md->phys_addr, 0); in efi_enter_virtual_mode()
692 efi_memory_desc_t *md; in efi_get_iobase() local
700 md = p; in efi_get_iobase()
701 if (md->type == EFI_MEMORY_MAPPED_IO_PORT_SPACE) { in efi_get_iobase()
702 if (md->attribute & EFI_MEMORY_UC) in efi_get_iobase()
703 return md->phys_addr; in efi_get_iobase()
712 struct kern_memdesc *md; in kern_memory_descriptor() local
714 for (md = kern_memmap; md->start != ~0UL; md++) { in kern_memory_descriptor()
715 if (phys_addr - md->start < (md->num_pages << EFI_PAGE_SHIFT)) in kern_memory_descriptor()
716 return md; in kern_memory_descriptor()
725 efi_memory_desc_t *md; in efi_memory_descriptor() local
733 md = p; in efi_memory_descriptor()
735 if (phys_addr - md->phys_addr < efi_md_size(md)) in efi_memory_descriptor()
736 return md; in efi_memory_descriptor()
745 efi_memory_desc_t *md; in efi_memmap_intersects() local
756 md = p; in efi_memmap_intersects()
757 if (md->phys_addr < end && efi_md_end(md) > phys_addr) in efi_memmap_intersects()
766 efi_memory_desc_t *md = efi_memory_descriptor(phys_addr); in efi_mem_type() local
768 if (md) in efi_mem_type()
769 return md->type; in efi_mem_type()
776 efi_memory_desc_t *md = efi_memory_descriptor(phys_addr); in efi_mem_attributes() local
778 if (md) in efi_mem_attributes()
779 return md->attribute; in efi_mem_attributes()
788 efi_memory_desc_t *md = efi_memory_descriptor(phys_addr); in efi_mem_attribute() local
791 if (!md) in efi_mem_attribute()
798 attr = md->attribute & ~EFI_MEMORY_RUNTIME; in efi_mem_attribute()
800 unsigned long md_end = efi_md_end(md); in efi_mem_attribute()
805 md = efi_memory_descriptor(md_end); in efi_mem_attribute()
806 if (!md || (md->attribute & ~EFI_MEMORY_RUNTIME) != attr) in efi_mem_attribute()
808 } while (md); in efi_mem_attribute()
816 struct kern_memdesc *md; in kern_mem_attribute() local
830 md = kern_memory_descriptor(phys_addr); in kern_mem_attribute()
831 if (!md) in kern_mem_attribute()
834 attr = md->attribute; in kern_mem_attribute()
836 unsigned long md_end = kmd_end(md); in kern_mem_attribute()
841 md = kern_memory_descriptor(md_end); in kern_mem_attribute()
842 if (!md || md->attribute != attr) in kern_mem_attribute()
844 } while (md); in kern_mem_attribute()
978 efi_memory_desc_t *md, *pmd = NULL, *check_md; in find_memmap_space() local
994 for (p = efi_map_start; p < efi_map_end; pmd = md, p += efi_desc_size) { in find_memmap_space()
995 md = p; in find_memmap_space()
996 if (!efi_wb(md)) { in find_memmap_space()
1000 efi_md_end(pmd) != md->phys_addr) { in find_memmap_space()
1001 contig_low = GRANULEROUNDUP(md->phys_addr); in find_memmap_space()
1002 contig_high = efi_md_end(md); in find_memmap_space()
1014 if (!is_memory_available(md) || md->type == EFI_LOADER_DATA) in find_memmap_space()
1018 as = max(contig_low, md->phys_addr); in find_memmap_space()
1019 ae = min(contig_high, efi_md_end(md)); in find_memmap_space()
1055 efi_memory_desc_t *md, *pmd = NULL, *check_md; in efi_memmap_init() local
1065 for (p = efi_map_start; p < efi_map_end; pmd = md, p += efi_desc_size) { in efi_memmap_init()
1066 md = p; in efi_memmap_init()
1067 if (!efi_wb(md)) { in efi_memmap_init()
1068 if (efi_uc(md) && in efi_memmap_init()
1069 (md->type == EFI_CONVENTIONAL_MEMORY || in efi_memmap_init()
1070 md->type == EFI_BOOT_SERVICES_DATA)) { in efi_memmap_init()
1072 k->start = md->phys_addr; in efi_memmap_init()
1073 k->num_pages = md->num_pages; in efi_memmap_init()
1079 efi_md_end(pmd) != md->phys_addr) { in efi_memmap_init()
1080 contig_low = GRANULEROUNDUP(md->phys_addr); in efi_memmap_init()
1081 contig_high = efi_md_end(md); in efi_memmap_init()
1093 if (!is_memory_available(md)) in efi_memmap_init()
1100 if (md->phys_addr < contig_low) { in efi_memmap_init()
1101 lim = min(efi_md_end(md), contig_low); in efi_memmap_init()
1102 if (efi_uc(md)) { in efi_memmap_init()
1105 kmd_end(k-1) == md->phys_addr) { in efi_memmap_init()
1107 (lim - md->phys_addr) in efi_memmap_init()
1111 k->start = md->phys_addr; in efi_memmap_init()
1112 k->num_pages = (lim - md->phys_addr) in efi_memmap_init()
1119 as = md->phys_addr; in efi_memmap_init()
1121 if (efi_md_end(md) > contig_high) { in efi_memmap_init()
1122 lim = max(md->phys_addr, contig_high); in efi_memmap_init()
1123 if (efi_uc(md)) { in efi_memmap_init()
1124 if (lim == md->phys_addr && k > kern_memmap && in efi_memmap_init()
1126 kmd_end(k-1) == md->phys_addr) { in efi_memmap_init()
1127 (k-1)->num_pages += md->num_pages; in efi_memmap_init()
1131 k->num_pages = (efi_md_end(md) - lim) in efi_memmap_init()
1138 ae = efi_md_end(md); in efi_memmap_init()
1152 if (prev && kmd_end(prev) == md->phys_addr) { in efi_memmap_init()
1179 efi_memory_desc_t *md; in efi_initialize_iomem_resources() local
1191 md = p; in efi_initialize_iomem_resources()
1193 if (md->num_pages == 0) /* should not happen */ in efi_initialize_iomem_resources()
1197 switch (md->type) { in efi_initialize_iomem_resources()
1208 if (md->attribute & EFI_MEMORY_WP) { in efi_initialize_iomem_resources()
1211 } else if (md->attribute == EFI_MEMORY_UC) in efi_initialize_iomem_resources()
1243 res->start = md->phys_addr; in efi_initialize_iomem_resources()
1244 res->end = md->phys_addr + efi_md_size(md) - 1; in efi_initialize_iomem_resources()
1279 efi_memory_desc_t *md; in kdump_find_rsvd_region() local
1287 md = p; in kdump_find_rsvd_region()
1288 if (!efi_wb(md)) in kdump_find_rsvd_region()
1290 start = ALIGN(md->phys_addr, alignment); in kdump_find_rsvd_region()
1291 end = efi_md_end(md); in kdump_find_rsvd_region()
1320 efi_memory_desc_t *md; in vmcore_find_descriptor_size() local
1329 md = p; in vmcore_find_descriptor_size()
1330 if (efi_wb(md) && md->type == EFI_LOADER_DATA in vmcore_find_descriptor_size()
1331 && md->phys_addr == address) { in vmcore_find_descriptor_size()
1332 ret = efi_md_size(md); in vmcore_find_descriptor_size()