summaryrefslogtreecommitdiff
path: root/arch/nios2/kernel
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2025-09-29 18:40:11 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2025-09-29 18:40:11 -0700
commit46a1b6b2aaae965b27b3bb34cf88d441f6aef20e (patch)
tree3252d4c2c5db883495ad55000b88f83463825815 /arch/nios2/kernel
parente129e479f2e444eaccd822717d418119d39d3d5c (diff)
parenta20b83cf45be2057f3d073506779e52c7fa17f94 (diff)
downloadlinux-next-46a1b6b2aaae965b27b3bb34cf88d441f6aef20e.tar.gz
linux-next-46a1b6b2aaae965b27b3bb34cf88d441f6aef20e.zip
Merge tag 'nios2_update_for_v6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux
Pull NIOS2 updates from Dinh Nguyen: - Replace __ASSEMBLY__ with __ASSEMBLER__ in headers - Set memblock.current_limit when setting pfn limits * tag 'nios2_update_for_v6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux: nios2: ensure that memblock.current_limit is set when setting pfn limits nios2: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers nios2: Replace __ASSEMBLY__ with __ASSEMBLER__ in uapi headers
Diffstat (limited to 'arch/nios2/kernel')
-rw-r--r--arch/nios2/kernel/setup.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/nios2/kernel/setup.c b/arch/nios2/kernel/setup.c
index 2a40150142c3..f43f01c4ab93 100644
--- a/arch/nios2/kernel/setup.c
+++ b/arch/nios2/kernel/setup.c
@@ -142,6 +142,20 @@ static void __init find_limits(unsigned long *min, unsigned long *max_low,
*max_high = PFN_DOWN(memblock_end_of_DRAM());
}
+static void __init adjust_lowmem_bounds(void)
+{
+ phys_addr_t block_start, block_end;
+ u64 i;
+ phys_addr_t memblock_limit = 0;
+
+ for_each_mem_range(i, &block_start, &block_end) {
+ if (block_end > memblock_limit)
+ memblock_limit = block_end;
+ }
+
+ memblock_set_current_limit(memblock_limit);
+}
+
void __init setup_arch(char **cmdline_p)
{
console_verbose();
@@ -157,6 +171,7 @@ void __init setup_arch(char **cmdline_p)
/* Keep a copy of command line */
*cmdline_p = boot_command_line;
+ adjust_lowmem_bounds();
find_limits(&min_low_pfn, &max_low_pfn, &max_pfn);
memblock_reserve(__pa_symbol(_stext), _end - _stext);