]> pilppa.org Git - familiar-h63xx-build.git/blob - org.handhelds.familiar/packages/linux/nslu2-kernel/2.6/compile-switches.patch
OE tree imported from monotone branch org.openembedded.oz354fam083 at revision 8b12e3...
[familiar-h63xx-build.git] / org.handhelds.familiar / packages / linux / nslu2-kernel / 2.6 / compile-switches.patch
1 --- linux-2.6.11/arch/arm/Makefile.orig 2005-03-20 15:02:07.587138712 -0800
2 +++ linux-2.6.11/arch/arm/Makefile      2005-03-20 15:10:36.546765088 -0800
3 @@ -33,6 +33,12 @@
4  AFLAGS         += -mlittle-endian
5  endif
6  
7 +ifeq ($(CONFIG_ARM_THUMB_INTERWORK),y)
8 +CFLAGS         += -mthumb-interwork
9 +else
10 +CFLAGS         += -mno-thumb-interwork
11 +endif
12 +
13  comma = ,
14  
15  # This selects which instruction set is used.
16 @@ -43,6 +49,8 @@
17  arch-$(CONFIG_CPU_32v5)                :=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4)
18  arch-$(CONFIG_CPU_32v4)                :=-D__LINUX_ARM_ARCH__=4 -march=armv4
19  arch-$(CONFIG_CPU_32v3)                :=-D__LINUX_ARM_ARCH__=3 -march=armv3
20 +# The following overrides the CPU_32v5 setting if specified
21 +arch-$(CONFIG_ARCH_XSCALE)     :=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=xscale,-march=armv5te)
22  
23  # This selects how we optimise for the processor.
24  tune-$(CONFIG_CPU_ARM610)      :=-mtune=arm610
25 --- linux-2.6.11/arch/arm/mm/Kconfig.orig       2005-03-20 14:54:07.927058128 -0800
26 +++ linux-2.6.11/arch/arm/mm/Kconfig    2005-03-20 15:01:26.727350344 -0800
27 @@ -366,6 +366,31 @@
28  
29           If you don't know what this all is, saying Y is a safe choice.
30  
31 +config ARM_THUMB_INTERWORK
32 +       bool "Support Thumb code within the kernel"
33 +       depends on CPU_ARM720T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM1020 || CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || CPU_XSCALE || CPU_V6
34 +       default n
35 +       help
36 +         Say Y to compile the whole kernel with support for the interworking
37 +         of the 16 bit thumb instruction set and 32 bit ARM instruction set.
38 +
39 +         You only need this if some parts of the kernel will be compiled
40 +         as thumb code, this is not usual.  It increases the total kernel
41 +         size by about 3%.
42 +
43 +config ARCH_XSCALE
44 +       bool "Use -march=xscale in preference to -march=armv5te"
45 +       depends on CPU_XSCALE
46 +       default y
47 +       help
48 +         Say yes to ask gcc to use the xscale architecture (instruction set)
49 +         in preference to armv5te.  This allows gcc to use the extra xscale
50 +         instructions but means the code will not run on a standard (non-xscale)
51 +         armv5te.  At present this makes no difference - gcc 3.4.3 does not
52 +         generate any xscale specific instructions - however gcc 3.4.3 does
53 +         generate slightly more optimal instructions if this is specified (this
54 +         is an error inside gcc 3.4.3 which should be fixed in 4.1.)
55 +
56  config CPU_BIG_ENDIAN
57         bool "Build big-endian kernel"
58         depends on ARCH_SUPPORTS_BIG_ENDIAN