ARM: 7863/1: Let arm_add_memory() always use 64-bit arguments
The DTB and/or the kernel command line may pass 64-bit addresses regardless of kernel configuration, so update arm_add_memory() to take 64-bit arguments independently of the phys_addr_t size. This allows non-wrapping handling of high memory banks such as the second memory bank of APE6EVM (at 0x2_0000_0000) in case of 32-bit phys_addr_t. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>hifive-unleashed-5.1
parent
1436c1aa62
commit
6a5014aa03
|
@ -49,7 +49,7 @@ extern struct meminfo meminfo;
|
||||||
#define bank_phys_end(bank) ((bank)->start + (bank)->size)
|
#define bank_phys_end(bank) ((bank)->start + (bank)->size)
|
||||||
#define bank_phys_size(bank) (bank)->size
|
#define bank_phys_size(bank) (bank)->size
|
||||||
|
|
||||||
extern int arm_add_memory(phys_addr_t start, phys_addr_t size);
|
extern int arm_add_memory(u64 start, u64 size);
|
||||||
extern void early_print(const char *str, ...);
|
extern void early_print(const char *str, ...);
|
||||||
extern void dump_machine_table(void);
|
extern void dump_machine_table(void);
|
||||||
|
|
||||||
|
|
|
@ -621,7 +621,7 @@ void __init dump_machine_table(void)
|
||||||
/* can't use cpu_relax() here as it may require MMU setup */;
|
/* can't use cpu_relax() here as it may require MMU setup */;
|
||||||
}
|
}
|
||||||
|
|
||||||
int __init arm_add_memory(phys_addr_t start, phys_addr_t size)
|
int __init arm_add_memory(u64 start, u64 size)
|
||||||
{
|
{
|
||||||
struct membank *bank = &meminfo.bank[meminfo.nr_banks];
|
struct membank *bank = &meminfo.bank[meminfo.nr_banks];
|
||||||
|
|
||||||
|
@ -671,8 +671,8 @@ int __init arm_add_memory(phys_addr_t start, phys_addr_t size)
|
||||||
static int __init early_mem(char *p)
|
static int __init early_mem(char *p)
|
||||||
{
|
{
|
||||||
static int usermem __initdata = 0;
|
static int usermem __initdata = 0;
|
||||||
phys_addr_t size;
|
u64 size;
|
||||||
phys_addr_t start;
|
u64 start;
|
||||||
char *endp;
|
char *endp;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue