You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Merge branch 'dt-bus-name' into for-next
This commit is contained in:
+11
-35
@@ -50,6 +50,7 @@
|
||||
#include <asm/param.h>
|
||||
#include <asm/traps.h>
|
||||
#include <asm/smp.h>
|
||||
#include <asm/sysmem.h>
|
||||
|
||||
#include <platform/hardware.h>
|
||||
|
||||
@@ -87,12 +88,6 @@ static char __initdata command_line[COMMAND_LINE_SIZE];
|
||||
static char default_command_line[COMMAND_LINE_SIZE] __initdata = CONFIG_CMDLINE;
|
||||
#endif
|
||||
|
||||
sysmem_info_t __initdata sysmem;
|
||||
|
||||
extern int mem_reserve(unsigned long, unsigned long, int);
|
||||
extern void bootmem_init(void);
|
||||
extern void zones_init(void);
|
||||
|
||||
/*
|
||||
* Boot parameter parsing.
|
||||
*
|
||||
@@ -112,31 +107,14 @@ typedef struct tagtable {
|
||||
|
||||
/* parse current tag */
|
||||
|
||||
static int __init add_sysmem_bank(unsigned long type, unsigned long start,
|
||||
unsigned long end)
|
||||
{
|
||||
if (sysmem.nr_banks >= SYSMEM_BANKS_MAX) {
|
||||
printk(KERN_WARNING
|
||||
"Ignoring memory bank 0x%08lx size %ldKB\n",
|
||||
start, end - start);
|
||||
return -EINVAL;
|
||||
}
|
||||
sysmem.bank[sysmem.nr_banks].type = type;
|
||||
sysmem.bank[sysmem.nr_banks].start = PAGE_ALIGN(start);
|
||||
sysmem.bank[sysmem.nr_banks].end = end & PAGE_MASK;
|
||||
sysmem.nr_banks++;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int __init parse_tag_mem(const bp_tag_t *tag)
|
||||
{
|
||||
meminfo_t *mi = (meminfo_t *)(tag->data);
|
||||
struct bp_meminfo *mi = (struct bp_meminfo *)(tag->data);
|
||||
|
||||
if (mi->type != MEMORY_TYPE_CONVENTIONAL)
|
||||
return -1;
|
||||
|
||||
return add_sysmem_bank(mi->type, mi->start, mi->end);
|
||||
return add_sysmem_bank(mi->start, mi->end);
|
||||
}
|
||||
|
||||
__tagtable(BP_TAG_MEMORY, parse_tag_mem);
|
||||
@@ -145,8 +123,8 @@ __tagtable(BP_TAG_MEMORY, parse_tag_mem);
|
||||
|
||||
static int __init parse_tag_initrd(const bp_tag_t* tag)
|
||||
{
|
||||
meminfo_t* mi;
|
||||
mi = (meminfo_t*)(tag->data);
|
||||
struct bp_meminfo *mi = (struct bp_meminfo *)(tag->data);
|
||||
|
||||
initrd_start = (unsigned long)__va(mi->start);
|
||||
initrd_end = (unsigned long)__va(mi->end);
|
||||
|
||||
@@ -254,7 +232,7 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
return;
|
||||
|
||||
size &= PAGE_MASK;
|
||||
add_sysmem_bank(MEMORY_TYPE_CONVENTIONAL, base, base + size);
|
||||
add_sysmem_bank(base, base + size);
|
||||
}
|
||||
|
||||
void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
@@ -291,8 +269,6 @@ device_initcall(xtensa_device_probe);
|
||||
|
||||
void __init init_arch(bp_tag_t *bp_start)
|
||||
{
|
||||
sysmem.nr_banks = 0;
|
||||
|
||||
/* Parse boot parameters */
|
||||
|
||||
if (bp_start)
|
||||
@@ -303,10 +279,9 @@ void __init init_arch(bp_tag_t *bp_start)
|
||||
#endif
|
||||
|
||||
if (sysmem.nr_banks == 0) {
|
||||
sysmem.nr_banks = 1;
|
||||
sysmem.bank[0].start = PLATFORM_DEFAULT_MEM_START;
|
||||
sysmem.bank[0].end = PLATFORM_DEFAULT_MEM_START
|
||||
+ PLATFORM_DEFAULT_MEM_SIZE;
|
||||
add_sysmem_bank(PLATFORM_DEFAULT_MEM_START,
|
||||
PLATFORM_DEFAULT_MEM_START +
|
||||
PLATFORM_DEFAULT_MEM_SIZE);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_CMDLINE_BOOL
|
||||
@@ -486,7 +461,7 @@ void __init setup_arch(char **cmdline_p)
|
||||
#ifdef CONFIG_BLK_DEV_INITRD
|
||||
if (initrd_start < initrd_end) {
|
||||
initrd_is_mapped = mem_reserve(__pa(initrd_start),
|
||||
__pa(initrd_end), 0);
|
||||
__pa(initrd_end), 0) == 0;
|
||||
initrd_below_start_ok = 1;
|
||||
} else {
|
||||
initrd_start = 0;
|
||||
@@ -531,6 +506,7 @@ void __init setup_arch(char **cmdline_p)
|
||||
__pa(&_Level6InterruptVector_text_end), 0);
|
||||
#endif
|
||||
|
||||
parse_early_param();
|
||||
bootmem_init();
|
||||
|
||||
unflatten_and_copy_device_tree();
|
||||
|
||||
Reference in New Issue
Block a user