diff options
| author | Max Filippov <jcmvbkbc@gmail.com> | 2016-07-22 19:47:58 -0400 |
|---|---|---|
| committer | Max Filippov <jcmvbkbc@gmail.com> | 2016-07-23 23:33:59 -0400 |
| commit | 3de00482b006daa110151ac6775adc52538a3d6a (patch) | |
| tree | bd7a17e41872fdd386b5f548af88ee626fcdaba6 /arch/xtensa/kernel | |
| parent | a9f2fc628e3a26a829fd79aff74eb49839d1e74b (diff) | |
xtensa: minimize use of PLATFORM_DEFAULT_MEM_{ADDR,SIZE}
Now that the kernel load address and KSEG physical base address have
their own Kconfig symbols PLATFORM_DEFAULT_MEM seems redundant. It makes
little sense to use it in MMU configurations instead of KSEG_PADDR.
In noMMU configurations there's no explicit KSEG, so it's still useful
for the early cache initialization and definition of ARCH_PFN_OFFSET,
which affects mem_map size.
- limit it to noMMU; MMU variants have XCHAL_KSEG_PADDR and
XCHAL_KSEG_SIZE;
- don't use it to define TASK_SIZE or MAX_LOW_PFN: first doesn't make
any difference in noMMU, second is meaningless as there's no high
memory;
- don't add default physical memory region: memory layout should come
from the DT, bootloader tags, or memmap= command line parameter.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'arch/xtensa/kernel')
| -rw-r--r-- | arch/xtensa/kernel/setup.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/arch/xtensa/kernel/setup.c b/arch/xtensa/kernel/setup.c index 9735691f37f1..0e59b8900e6a 100644 --- a/arch/xtensa/kernel/setup.c +++ b/arch/xtensa/kernel/setup.c | |||
| @@ -188,7 +188,6 @@ static int __init parse_bootparam(const bp_tag_t* tag) | |||
| 188 | } | 188 | } |
| 189 | 189 | ||
| 190 | #ifdef CONFIG_OF | 190 | #ifdef CONFIG_OF |
| 191 | bool __initdata dt_memory_scan = false; | ||
| 192 | 191 | ||
| 193 | #if !XCHAL_HAVE_PTP_MMU || XCHAL_HAVE_SPANNING_WAY | 192 | #if !XCHAL_HAVE_PTP_MMU || XCHAL_HAVE_SPANNING_WAY |
| 194 | unsigned long xtensa_kio_paddr = XCHAL_KIO_DEFAULT_PADDR; | 193 | unsigned long xtensa_kio_paddr = XCHAL_KIO_DEFAULT_PADDR; |
| @@ -228,9 +227,6 @@ static int __init xtensa_dt_io_area(unsigned long node, const char *uname, | |||
| 228 | 227 | ||
| 229 | void __init early_init_dt_add_memory_arch(u64 base, u64 size) | 228 | void __init early_init_dt_add_memory_arch(u64 base, u64 size) |
| 230 | { | 229 | { |
| 231 | if (!dt_memory_scan) | ||
| 232 | return; | ||
| 233 | |||
| 234 | size &= PAGE_MASK; | 230 | size &= PAGE_MASK; |
| 235 | add_sysmem_bank(base, base + size); | 231 | add_sysmem_bank(base, base + size); |
| 236 | } | 232 | } |
| @@ -242,9 +238,6 @@ void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align) | |||
| 242 | 238 | ||
| 243 | void __init early_init_devtree(void *params) | 239 | void __init early_init_devtree(void *params) |
| 244 | { | 240 | { |
| 245 | if (sysmem.nr_banks == 0) | ||
| 246 | dt_memory_scan = true; | ||
| 247 | |||
| 248 | early_init_dt_scan(params); | 241 | early_init_dt_scan(params); |
| 249 | of_scan_flat_dt(xtensa_dt_io_area, NULL); | 242 | of_scan_flat_dt(xtensa_dt_io_area, NULL); |
| 250 | 243 | ||
| @@ -278,12 +271,6 @@ void __init init_arch(bp_tag_t *bp_start) | |||
| 278 | early_init_devtree(dtb_start); | 271 | early_init_devtree(dtb_start); |
| 279 | #endif | 272 | #endif |
| 280 | 273 | ||
| 281 | if (sysmem.nr_banks == 0) { | ||
| 282 | add_sysmem_bank(PLATFORM_DEFAULT_MEM_START, | ||
| 283 | PLATFORM_DEFAULT_MEM_START + | ||
| 284 | PLATFORM_DEFAULT_MEM_SIZE); | ||
| 285 | } | ||
| 286 | |||
| 287 | #ifdef CONFIG_CMDLINE_BOOL | 274 | #ifdef CONFIG_CMDLINE_BOOL |
| 288 | if (!command_line[0]) | 275 | if (!command_line[0]) |
| 289 | strlcpy(command_line, default_command_line, COMMAND_LINE_SIZE); | 276 | strlcpy(command_line, default_command_line, COMMAND_LINE_SIZE); |
