diff options
-rw-r--r-- | arch/parisc/Kconfig | 17 | ||||
-rw-r--r-- | arch/parisc/Makefile | 4 |
2 files changed, 21 insertions, 0 deletions
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig index b77feffbadea..3df1c35a217a 100644 --- a/arch/parisc/Kconfig +++ b/arch/parisc/Kconfig | |||
@@ -161,6 +161,23 @@ config PREFETCH | |||
161 | def_bool y | 161 | def_bool y |
162 | depends on PA8X00 || PA7200 | 162 | depends on PA8X00 || PA7200 |
163 | 163 | ||
164 | config MLONGCALLS | ||
165 | bool "Enable the -mlong-calls compiler option for big kernels" | ||
166 | def_bool y if (!MODULES) | ||
167 | depends on PA8X00 | ||
168 | help | ||
169 | If you configure the kernel to include many drivers built-in instead | ||
170 | as modules, the kernel executable may become too big, so that the | ||
171 | linker will not be able to resolve some long branches and fails to link | ||
172 | your vmlinux kernel. In that case enabling this option will help you | ||
173 | to overcome this limit by using the -mlong-calls compiler option. | ||
174 | |||
175 | Usually you want to say N here, unless you e.g. want to build | ||
176 | a kernel which includes all necessary drivers built-in and which can | ||
177 | be used for TFTP booting without the need to have an initrd ramdisk. | ||
178 | |||
179 | Enabling this option will probably slow down your kernel. | ||
180 | |||
164 | config 64BIT | 181 | config 64BIT |
165 | bool "64-bit kernel" | 182 | bool "64-bit kernel" |
166 | depends on PA8X00 | 183 | depends on PA8X00 |
diff --git a/arch/parisc/Makefile b/arch/parisc/Makefile index 87f64d6b5dcb..ed9a14ccd066 100644 --- a/arch/parisc/Makefile +++ b/arch/parisc/Makefile | |||
@@ -64,6 +64,10 @@ ifndef CONFIG_FUNCTION_TRACER | |||
64 | cflags-y += -ffunction-sections | 64 | cflags-y += -ffunction-sections |
65 | endif | 65 | endif |
66 | 66 | ||
67 | # Use long jumps instead of long branches (needed if your linker fails to | ||
68 | # link a too big vmlinux executable) | ||
69 | cflags-$(CONFIG_MLONGCALLS) += -mlong-calls | ||
70 | |||
67 | # select which processor to optimise for | 71 | # select which processor to optimise for |
68 | cflags-$(CONFIG_PA7100) += -march=1.1 -mschedule=7100 | 72 | cflags-$(CONFIG_PA7100) += -march=1.1 -mschedule=7100 |
69 | cflags-$(CONFIG_PA7200) += -march=1.1 -mschedule=7200 | 73 | cflags-$(CONFIG_PA7200) += -march=1.1 -mschedule=7200 |