/xen/xen/arch/x86/ |
A D | e820.c | 398 e820.map[i].size = limit - e820.map[i].addr; in clip_to_limit() 402 memmove(&e820.map[i], &e820.map[i+1], in clip_to_limit() 576 if ( e820->nr_map >= ARRAY_SIZE(e820->map) ) in e820_add_range() 583 memmove(e820->map + i + 1, e820->map + i, in e820_add_range() 584 (e820->nr_map - i) * sizeof(*e820->map)); in e820_add_range() 622 memmove(&e820->map[i+1], &e820->map[i], in e820_change_range_type() 646 memmove(&e820->map[i+2], &e820->map[i], in e820_change_range_type() 662 ((e820->map[i].addr + e820->map[i].size) != e820->map[i+1].addr) ) in e820_change_range_type() 664 e820->map[i].size += e820->map[i+1].size; in e820_change_range_type() 665 memmove(&e820->map[i+1], &e820->map[i+2], in e820_change_range_type() [all …]
|
A D | srat.c | 366 for (i = 0; i < e820.nr_map; i++) { in nodes_cover_memory() 370 if (e820.map[i].type != E820_RAM) { in nodes_cover_memory() 374 start = e820.map[i].addr; in nodes_cover_memory() 375 end = e820.map[i].addr + e820.map[i].size; in nodes_cover_memory() 444 for (mask = srat_region_mask, i = 0; mask && i < e820.nr_map; i++) { in srat_parse_regions() 445 if (e820.map[i].type != E820_RAM) in srat_parse_regions() 448 if (~mask & pdx_region_mask(e820.map[i].addr, e820.map[i].size)) in srat_parse_regions()
|
A D | dom0_build.c | 528 for ( i = 0; i < e820.nr_map; i++ ) in dom0_setup_permissions() 531 sfn = max_t(unsigned long, paddr_to_pfn(e820.map[i].addr), 0x100ul); in dom0_setup_permissions() 532 efn = paddr_to_pfn(e820.map[i].addr + e820.map[i].size - 1); in dom0_setup_permissions() 533 if ( (e820.map[i].type == E820_UNUSABLE) && in dom0_setup_permissions() 534 (e820.map[i].size != 0) && in dom0_setup_permissions()
|
A D | mm.c | 304 if ( i >= e820.nr_map ) in arch_init_memory() 315 PFN_DOWN(e820.map[i].addr + e820.map[i].size)); in arch_init_memory() 419 ((e820.map[i].addr + e820.map[i].size) >= (maddr + PAGE_SIZE)) ) in page_is_ram_type() 431 for ( i = 0; i < e820.nr_map; in page_get_ram_type() 432 last = e820.map[i].addr + e820.map[i].size, i++ ) in page_get_ram_type() 438 maddr >= (e820.map[i].addr + e820.map[i].size) ) in page_get_ram_type() 4781 if ( e820 == NULL ) in arch_memory_op() 4789 xfree(e820); in arch_memory_op() 4795 xfree(d->arch.e820); in arch_memory_op() 4796 d->arch.e820 = e820; in arch_memory_op() [all …]
|
A D | tboot.c | 419 rc = e820_change_range_type(&e820, txt_heap_base, in tboot_protect_mem_regions() 428 rc = e820_change_range_type(&e820, sinit_base, in tboot_protect_mem_regions() 435 rc = e820_change_range_type(&e820, TXT_PRIV_CONFIG_REGS_BASE, in tboot_protect_mem_regions()
|
A D | setup.c | 583 static void __init kexec_reserve_area(struct e820map *e820) in kexec_reserve_area() argument 597 if ( !reserve_e820_ram(e820, kdump_start, kdump_start + kdump_size) ) in kexec_reserve_area() 1111 memcpy(&boot_e820, &e820, sizeof(e820)); in __start_xen() 1115 for ( i = 0; i < e820.nr_map; i++ ) in __start_xen() 1116 if ( e820.map[i].type == E820_RAM ) in __start_xen() 1117 nr_pages += e820.map[i].size >> PAGE_SHIFT; in __start_xen() 1590 for ( i = 0; i < e820.nr_map; i++ ) in __start_xen() 1591 if ( e820.map[i].type == E820_RAM ) in __start_xen() 1592 nr_pages += e820.map[i].size >> PAGE_SHIFT; in __start_xen()
|
/xen/tools/firmware/hvmloader/ |
A D | e820.c | 115 start = e820[i].addr; in dump_e820_table() 116 end = e820[i].addr + e820[i].size; in dump_e820_table() 128 switch ( e820[i].type ) in dump_e820_table() 173 e820[nr].addr = 0x00000; in build_e820_table() 175 e820[nr].type = E820_RAM; in build_e820_table() 219 e820[nr].type = E820_NVS; in build_e820_table() 247 e820[nr].size = (uint32_t)-e820[nr].addr; in build_e820_table() 254 e820[nr].size = (uint32_t)-e820[nr].addr; in build_e820_table() 291 if ( e820[j].addr > e820[i].addr ) in build_e820_table() 295 e820[j] = e820[i]; in build_e820_table() [all …]
|
A D | ovmf.c | 60 uint64_t e820; member 142 struct e820entry *e820 = scratch_alloc(sizeof(struct e820entry)*16, 0); in ovmf_setup_e820() local 143 info->e820 = (uint32_t)e820; in ovmf_setup_e820() 146 info->e820_nr = build_e820_table(e820, 0, LOWCHUNK_BEGIN); in ovmf_setup_e820() 147 dump_e820_table(e820, info->e820_nr); in ovmf_setup_e820()
|
A D | seabios.c | 47 uint32_t e820; member 123 struct e820entry *e820 = scratch_alloc(sizeof(struct e820entry)*16, 0); in seabios_setup_e820() local 124 info->e820 = (uint32_t)e820; in seabios_setup_e820() 129 info->e820_nr = build_e820_table(e820, 0, seabios_config.bios_address); in seabios_setup_e820() 130 dump_e820_table(e820, info->e820_nr); in seabios_setup_e820()
|
A D | util.h | 262 int build_e820_table(struct e820entry *e820, 265 void dump_e820_table(struct e820entry *e820, unsigned int nr);
|
A D | Makefile | 33 OBJS += e820.o pci.o pir.o ctype.o
|
/xen/tools/libxl/ |
A D | libxl_x86.c | 55 struct e820entry e820[E820MAX]; in e820_sanitize() local 95 e820[idx].addr = 0; in e820_sanitize() 97 e820[idx].type = E820_RAM; in e820_sanitize() 106 ram_end = e820[idx].addr + e820[idx].size; in e820_sanitize() 218 e820[idx].type = E820_RAM; in e820_sanitize() 231 (e820[i].addr + e820[i].size) >> 12, e820_names(e820[i].type)); in e820_sanitize() 682 struct e820entry *e820 = NULL; in domain_construct_memmap() local 714 e820[nr].addr = lowmem_start; in domain_construct_memmap() 716 e820[nr].type = E820_RAM; in domain_construct_memmap() 753 e820[nr].type = E820_RAM; in domain_construct_memmap() [all …]
|
/xen/xen/arch/x86/hvm/ |
A D | dom0_build.c | 242 d->arch.e820[i].addr = s; in pvh_add_mem_range() 267 memcpy(map, d->arch.e820, i * sizeof(*d->arch.e820)); in pvh_add_mem_range() 268 memcpy(map + i + 1, d->arch.e820 + i, in pvh_add_mem_range() 273 xfree(d->arch.e820); in pvh_add_mem_range() 274 d->arch.e820 = map; in pvh_add_mem_range() 348 d->arch.e820 = xzalloc_array(struct e820entry, e820.nr_map + 1); in pvh_setup_e820() 349 if ( !d->arch.e820 ) in pvh_setup_e820() 351 entry_guest = d->arch.e820; in pvh_setup_e820() 354 for ( i = 0, entry = e820.map; i < e820.nr_map; i++, entry++ ) in pvh_setup_e820() 462 d->arch.e820[i].addr + d->arch.e820[i].size); in pvh_populate_p2m() [all …]
|
/xen/xen/include/asm-x86/guest/ |
A D | hypervisor.h | 36 void (*e820_fixup)(struct e820map *e820); 47 void hypervisor_e820_fixup(struct e820map *e820); 66 static inline void hypervisor_e820_fixup(struct e820map *e820) {} in hypervisor_e820_fixup() argument
|
/xen/xen/include/asm-x86/ |
A D | e820.h | 28 extern int reserve_e820_ram(struct e820map *e820, uint64_t s, uint64_t e); 30 struct e820map *e820, uint64_t s, uint64_t e, 35 extern struct e820map e820;
|
/xen/xen/arch/x86/guest/ |
A D | hypervisor.c | 75 void __init hypervisor_e820_fixup(struct e820map *e820) in hypervisor_e820_fixup() argument 78 ops.e820_fixup(e820); in hypervisor_e820_fixup()
|
/xen/tools/firmware/rombios/32bit/ |
A D | pmm.c | 271 struct e820entry *e820 = E820; in pmm_initalize() local 276 if ( (e820[i].type == E820_RAM) && (e820[i].addr >= 0x00100000) ) in pmm_initalize() 278 pmm_init_heap(&pmm_data.ext_heap, e820[i].addr, in pmm_initalize() 279 e820[i].addr + e820[i].size); in pmm_initalize()
|
/xen/xen/include/asm-x86/pv/ |
A D | shim.h | 46 void pv_shim_fixup_e820(struct e820map *e820); 96 static inline void pv_shim_fixup_e820(struct e820map *e820) in pv_shim_fixup_e820() argument
|
/xen/xen/arch/x86/guest/xen/ |
A D | xen.c | 162 for ( i = 0; i < e820.nr_map; i++ ) in init_memmap() 164 struct e820entry *e = &e820.map[i]; in init_memmap() 321 static void __init e820_fixup(struct e820map *e820) in e820_fixup() argument 324 pv_shim_fixup_e820(e820); in e820_fixup()
|
/xen/xen/arch/x86/guest/hyperv/ |
A D | hyperv.c | 202 static void __init e820_fixup(struct e820map *e820) in e820_fixup() argument 206 if ( !e820_add_range(e820, s, s + PAGE_SIZE, E820_RESERVED) ) in e820_fixup()
|
/xen/xen/arch/x86/pv/ |
A D | shim.c | 120 static void __init mark_pfn_as_ram(struct e820map *e820, uint64_t pfn) in mark_pfn_as_ram() argument 122 if ( !e820_add_range(e820, pfn << PAGE_SHIFT, in mark_pfn_as_ram() 124 !e820_change_range_type(e820, pfn << PAGE_SHIFT, in mark_pfn_as_ram() 130 void __init pv_shim_fixup_e820(struct e820map *e820) in pv_shim_fixup_e820() argument 142 mark_pfn_as_ram(e820, pfn); \ in pv_shim_fixup_e820()
|
/xen/xen/arch/x86/boot/ |
A D | mem.S | 14 1: movl $0x0000e820, %eax # e820, upper word zeroed
|
/xen/xen/arch/x86/x86_64/ |
A D | mmconf-fam10h.c | 138 if (e820_add_range(&e820, start, start + SIZE, E820_RESERVED)) in get_fam10h_pci_mmconf_base()
|
/xen/tools/libxc/include/ |
A D | xc_dom.h | 222 struct e820entry *e820; member
|
/xen/tools/libxc/ |
A D | xc_domain.c | 754 struct e820entry e820; in xc_domain_set_memmap_limit() local 756 e820.addr = 0; in xc_domain_set_memmap_limit() 757 e820.size = (uint64_t)map_limitkb << 10; in xc_domain_set_memmap_limit() 758 e820.type = E820_RAM; in xc_domain_set_memmap_limit() 760 return xc_domain_set_memory_map(xch, domid, &e820, 1); in xc_domain_set_memmap_limit()
|