summaryrefslogtreecommitdiff
path: root/arch/arc/Kconfig
diff options
context:
space:
mode:
authorNoam Camus <noamc@ezchip.com>2014-09-07 23:52:33 +0400
committerVineet Gupta <vgupta@synopsys.com>2016-05-09 07:02:32 +0300
commit15ca68a993d10767c37793e6a0a780b0a7e395dd (patch)
tree42d9bb23a922629405b2ad49bb1304f421f31ab0 /arch/arc/Kconfig
parent4bb40c6d6c011dc616d6d7fbad2bce21794f97a0 (diff)
downloadlinux-15ca68a993d10767c37793e6a0a780b0a7e395dd.tar.xz
ARC: Make vmalloc size configurable
On ARC, lower 2G of address space is translated and used for - user vaddr space (region 0 to 5) - unused kernel-user gutter (region 6) - kernel vaddr space (region 7) where each region simply represents 256MB of address space. The kernel vaddr space of 256MB is used to implement vmalloc, modules So far this was enough, but not on EZChip system with 4K CPUs (given that per cpu mechanism uses vmalloc for allocating chunks) So allow VMALLOC_SIZE to be configurable by expanding down into the unused kernel-user gutter region which at default 256M was excessive anyways. Also use _BITUL() to fix a build error since PGDIR_SIZE cannot use "1UL" as called from assembly code in mm/tlbex.S Signed-off-by: Noam Camus <noamc@ezchip.com> [vgupta: rewrote changelog, debugged bootup crash due to int vs. hex] Acked-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc/Kconfig')
-rw-r--r--arch/arc/Kconfig11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index 4f1482aa8823..30ad63413660 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -492,6 +492,17 @@ config ARCH_DMA_ADDR_T_64BIT
config ARC_PLAT_NEEDS_PHYS_TO_DMA
bool
+config ARC_KVADDR_SIZE
+ int "Kernel Virtaul Address Space size (MB)"
+ range 0 512
+ default "256"
+ help
+ The kernel address space is carved out of 256MB of translated address
+ space for catering to vmalloc, modules, pkmap, fixmap. This however may
+ not suffice vmalloc requirements of a 4K CPU EZChip system. So allow
+ this to be stretched to 512 MB (by extending into the reserved
+ kernel-user gutter)
+
config ARC_CURR_IN_REG
bool "Dedicate Register r25 for current_task pointer"
default y