diff --git a/arch/arch.mk.arc b/arch/arch.mk.arc index 9c04a85a8d..32b818b0e0 100644 --- a/arch/arch.mk.arc +++ b/arch/arch.mk.arc @@ -5,9 +5,12 @@ ifeq ($(BR2_ARC_ATOMIC_EXT),y) ARCH_TOOLCHAIN_WRAPPER_OPTS = -matomic endif -# By default MAXPAGESIZE for ARC is 8192 so for larger MMU pages -# it needs to be overridden. -ifeq ($(BR2_ARC_PAGE_SIZE_16K),y) +# Explicitly set LD's "max-page-size" instead of relying on some defaults +ifeq ($(BR2_ARC_PAGE_SIZE_4K),y) +ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=4096 +else ifeq ($(BR2_ARC_PAGE_SIZE_8K),y) +ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=8192 +else ifeq ($(BR2_ARC_PAGE_SIZE_16K),y) ARCH_TOOLCHAIN_WRAPPER_OPTS += -Wl,-z,max-page-size=16384 endif