void mem_regions(struct mem_region **phys, int *physsz, struct mem_region **avail, int *availsz) { if (pregions == NULL) PLATFORM_MEM_REGIONS(plat_obj, &pregions, &npregions, &aregions, &naregions); *phys = pregions; *avail = aregions; *physsz = npregions; *availsz = naregions; }
int mem_valid(vm_offset_t addr, int len) { int i; if (pregions == NULL) PLATFORM_MEM_REGIONS(plat_obj, &pregions, &npregions, &aregions, &naregions); for (i = 0; i < npregions; i++) if ((addr >= pregions[i].mr_start) && (addr + len <= pregions[i].mr_start + pregions[i].mr_size)) return (0); return (EFAULT); }
void mem_regions(struct mem_region **phys, int *physsz, struct mem_region **avail, int *availsz) { PLATFORM_MEM_REGIONS(plat_obj, phys, physsz, avail, availsz); }