mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
memblock: Change u64 to phys_addr_t
Let's not waste space and cycles on archs that don't support >32-bit physical address space. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
cd3db0c4ca
commit
2898cc4cdf
2 changed files with 84 additions and 82 deletions
|
@ -21,19 +21,19 @@
|
|||
#define MAX_MEMBLOCK_REGIONS 128
|
||||
|
||||
struct memblock_region {
|
||||
u64 base;
|
||||
u64 size;
|
||||
phys_addr_t base;
|
||||
phys_addr_t size;
|
||||
};
|
||||
|
||||
struct memblock_type {
|
||||
unsigned long cnt;
|
||||
u64 size;
|
||||
phys_addr_t size;
|
||||
struct memblock_region regions[MAX_MEMBLOCK_REGIONS+1];
|
||||
};
|
||||
|
||||
struct memblock {
|
||||
unsigned long debug;
|
||||
u64 current_limit;
|
||||
phys_addr_t current_limit;
|
||||
struct memblock_type memory;
|
||||
struct memblock_type reserved;
|
||||
};
|
||||
|
@ -42,34 +42,34 @@ extern struct memblock memblock;
|
|||
|
||||
extern void __init memblock_init(void);
|
||||
extern void __init memblock_analyze(void);
|
||||
extern long memblock_add(u64 base, u64 size);
|
||||
extern long memblock_remove(u64 base, u64 size);
|
||||
extern long __init memblock_free(u64 base, u64 size);
|
||||
extern long __init memblock_reserve(u64 base, u64 size);
|
||||
extern long memblock_add(phys_addr_t base, phys_addr_t size);
|
||||
extern long memblock_remove(phys_addr_t base, phys_addr_t size);
|
||||
extern long __init memblock_free(phys_addr_t base, phys_addr_t size);
|
||||
extern long __init memblock_reserve(phys_addr_t base, phys_addr_t size);
|
||||
|
||||
extern u64 __init memblock_alloc_nid(u64 size, u64 align, int nid);
|
||||
extern u64 __init memblock_alloc(u64 size, u64 align);
|
||||
extern phys_addr_t __init memblock_alloc_nid(phys_addr_t size, phys_addr_t align, int nid);
|
||||
extern phys_addr_t __init memblock_alloc(phys_addr_t size, phys_addr_t align);
|
||||
|
||||
/* Flags for memblock_alloc_base() amd __memblock_alloc_base() */
|
||||
#define MEMBLOCK_ALLOC_ANYWHERE (~(u64)0)
|
||||
#define MEMBLOCK_ALLOC_ANYWHERE (~(phys_addr_t)0)
|
||||
#define MEMBLOCK_ALLOC_ACCESSIBLE 0
|
||||
|
||||
extern u64 __init memblock_alloc_base(u64 size,
|
||||
u64, u64 max_addr);
|
||||
extern u64 __init __memblock_alloc_base(u64 size,
|
||||
u64 align, u64 max_addr);
|
||||
extern u64 __init memblock_phys_mem_size(void);
|
||||
extern u64 memblock_end_of_DRAM(void);
|
||||
extern void __init memblock_enforce_memory_limit(u64 memory_limit);
|
||||
extern int memblock_is_memory(u64 addr);
|
||||
extern int memblock_is_region_memory(u64 base, u64 size);
|
||||
extern int __init memblock_is_reserved(u64 addr);
|
||||
extern int memblock_is_region_reserved(u64 base, u64 size);
|
||||
extern phys_addr_t __init memblock_alloc_base(phys_addr_t size,
|
||||
phys_addr_t, phys_addr_t max_addr);
|
||||
extern phys_addr_t __init __memblock_alloc_base(phys_addr_t size,
|
||||
phys_addr_t align, phys_addr_t max_addr);
|
||||
extern phys_addr_t __init memblock_phys_mem_size(void);
|
||||
extern phys_addr_t memblock_end_of_DRAM(void);
|
||||
extern void __init memblock_enforce_memory_limit(phys_addr_t memory_limit);
|
||||
extern int memblock_is_memory(phys_addr_t addr);
|
||||
extern int memblock_is_region_memory(phys_addr_t base, phys_addr_t size);
|
||||
extern int __init memblock_is_reserved(phys_addr_t addr);
|
||||
extern int memblock_is_region_reserved(phys_addr_t base, phys_addr_t size);
|
||||
|
||||
extern void memblock_dump_all(void);
|
||||
|
||||
/* Provided by the architecture */
|
||||
extern u64 memblock_nid_range(u64 start, u64 end, int *nid);
|
||||
extern phys_addr_t memblock_nid_range(phys_addr_t start, phys_addr_t end, int *nid);
|
||||
|
||||
/**
|
||||
* memblock_set_current_limit - Set the current allocation limit to allow
|
||||
|
@ -77,7 +77,7 @@ extern u64 memblock_nid_range(u64 start, u64 end, int *nid);
|
|||
* accessible during boot
|
||||
* @limit: New limit value (physical address)
|
||||
*/
|
||||
extern void memblock_set_current_limit(u64 limit);
|
||||
extern void memblock_set_current_limit(phys_addr_t limit);
|
||||
|
||||
|
||||
/*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue