Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/x86
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/x86: x86: kill the old i386 and x86_64 directories x86: move i386 and x86_64 Kconfig files to x86 directory kconfig: small code refactoring in kconfig Makefile x86: unification of i386 and x86_64 Kconfig.debug x86: move defconfig files for i386 and x86_64 to x86 x86: move i386 and x86_64 Makefiles to arch/x86
This commit is contained in:
commit
0e4bd10c9b
15 changed files with 89 additions and 101 deletions
7
Makefile
7
Makefile
|
@ -196,6 +196,9 @@ CROSS_COMPILE ?=
|
||||||
UTS_MACHINE := $(ARCH)
|
UTS_MACHINE := $(ARCH)
|
||||||
SRCARCH := $(ARCH)
|
SRCARCH := $(ARCH)
|
||||||
|
|
||||||
|
# for i386 and x86_64 we use SRCARCH equal to x86
|
||||||
|
SRCARCH := $(if $(filter x86_64 i386,$(SRCARCH)),x86,$(SRCARCH))
|
||||||
|
|
||||||
KCONFIG_CONFIG ?= .config
|
KCONFIG_CONFIG ?= .config
|
||||||
|
|
||||||
# SHELL used by kbuild
|
# SHELL used by kbuild
|
||||||
|
@ -418,7 +421,7 @@ ifeq ($(config-targets),1)
|
||||||
# Read arch specific Makefile to set KBUILD_DEFCONFIG as needed.
|
# Read arch specific Makefile to set KBUILD_DEFCONFIG as needed.
|
||||||
# KBUILD_DEFCONFIG may point out an alternative default configuration
|
# KBUILD_DEFCONFIG may point out an alternative default configuration
|
||||||
# used for 'make defconfig'
|
# used for 'make defconfig'
|
||||||
include $(srctree)/arch/$(ARCH)/Makefile
|
include $(srctree)/arch/$(SRCARCH)/Makefile
|
||||||
export KBUILD_DEFCONFIG
|
export KBUILD_DEFCONFIG
|
||||||
|
|
||||||
config %config: scripts_basic outputmakefile FORCE
|
config %config: scripts_basic outputmakefile FORCE
|
||||||
|
@ -497,7 +500,7 @@ else
|
||||||
KBUILD_CFLAGS += -O2
|
KBUILD_CFLAGS += -O2
|
||||||
endif
|
endif
|
||||||
|
|
||||||
include $(srctree)/arch/$(ARCH)/Makefile
|
include $(srctree)/arch/$(SRCARCH)/Makefile
|
||||||
|
|
||||||
ifdef CONFIG_FRAME_POINTER
|
ifdef CONFIG_FRAME_POINTER
|
||||||
KBUILD_CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
KBUILD_CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||||
|
|
1
arch/i386/.gitignore
vendored
1
arch/i386/.gitignore
vendored
|
@ -1 +0,0 @@
|
||||||
boot
|
|
|
@ -1,14 +1,14 @@
|
||||||
menu "Kernel hacking"
|
menu "Kernel hacking"
|
||||||
|
|
||||||
config TRACE_IRQFLAGS_SUPPORT
|
config TRACE_IRQFLAGS_SUPPORT
|
||||||
bool
|
def_bool y
|
||||||
default y
|
|
||||||
|
|
||||||
source "lib/Kconfig.debug"
|
source "lib/Kconfig.debug"
|
||||||
|
|
||||||
config EARLY_PRINTK
|
config EARLY_PRINTK
|
||||||
bool "Early printk" if EMBEDDED && DEBUG_KERNEL
|
bool "Early printk" if EMBEDDED && DEBUG_KERNEL
|
||||||
default y
|
default y
|
||||||
|
depends on X86_32
|
||||||
help
|
help
|
||||||
Write kernel log output directly into the VGA buffer or to a serial
|
Write kernel log output directly into the VGA buffer or to a serial
|
||||||
port.
|
port.
|
||||||
|
@ -37,10 +37,12 @@ config DEBUG_STACK_USAGE
|
||||||
|
|
||||||
comment "Page alloc debug is incompatible with Software Suspend on i386"
|
comment "Page alloc debug is incompatible with Software Suspend on i386"
|
||||||
depends on DEBUG_KERNEL && HIBERNATION
|
depends on DEBUG_KERNEL && HIBERNATION
|
||||||
|
depends on X86_32
|
||||||
|
|
||||||
config DEBUG_PAGEALLOC
|
config DEBUG_PAGEALLOC
|
||||||
bool "Debug page memory allocations"
|
bool "Debug page memory allocations"
|
||||||
depends on DEBUG_KERNEL && !HIBERNATION && !HUGETLBFS
|
depends on DEBUG_KERNEL && !HIBERNATION && !HUGETLBFS
|
||||||
|
depends on X86_32
|
||||||
help
|
help
|
||||||
Unmap pages from the kernel linear mapping after free_pages().
|
Unmap pages from the kernel linear mapping after free_pages().
|
||||||
This results in a large slowdown, but helps to find certain types
|
This results in a large slowdown, but helps to find certain types
|
||||||
|
@ -59,6 +61,7 @@ config DEBUG_RODATA
|
||||||
config 4KSTACKS
|
config 4KSTACKS
|
||||||
bool "Use 4Kb for kernel stacks instead of 8Kb"
|
bool "Use 4Kb for kernel stacks instead of 8Kb"
|
||||||
depends on DEBUG_KERNEL
|
depends on DEBUG_KERNEL
|
||||||
|
depends on X86_32
|
||||||
help
|
help
|
||||||
If you say Y here the kernel will use a 4Kb stacksize for the
|
If you say Y here the kernel will use a 4Kb stacksize for the
|
||||||
kernel stack attached to each process/thread. This facilitates
|
kernel stack attached to each process/thread. This facilitates
|
||||||
|
@ -67,22 +70,50 @@ config 4KSTACKS
|
||||||
will also use IRQ stacks to compensate for the reduced stackspace.
|
will also use IRQ stacks to compensate for the reduced stackspace.
|
||||||
|
|
||||||
config X86_FIND_SMP_CONFIG
|
config X86_FIND_SMP_CONFIG
|
||||||
bool
|
def_bool y
|
||||||
depends on X86_LOCAL_APIC || X86_VOYAGER
|
depends on X86_LOCAL_APIC || X86_VOYAGER
|
||||||
default y
|
depends on X86_32
|
||||||
|
|
||||||
config X86_MPPARSE
|
config X86_MPPARSE
|
||||||
bool
|
def_bool y
|
||||||
depends on X86_LOCAL_APIC && !X86_VISWS
|
depends on X86_LOCAL_APIC && !X86_VISWS
|
||||||
default y
|
depends on X86_32
|
||||||
|
|
||||||
config DOUBLEFAULT
|
config DOUBLEFAULT
|
||||||
default y
|
default y
|
||||||
bool "Enable doublefault exception handler" if EMBEDDED
|
bool "Enable doublefault exception handler" if EMBEDDED
|
||||||
|
depends on X86_32
|
||||||
help
|
help
|
||||||
This option allows trapping of rare doublefault exceptions that
|
This option allows trapping of rare doublefault exceptions that
|
||||||
would otherwise cause a system to silently reboot. Disabling this
|
would otherwise cause a system to silently reboot. Disabling this
|
||||||
option saves about 4k and might cause you much additional grey
|
option saves about 4k and might cause you much additional grey
|
||||||
hair.
|
hair.
|
||||||
|
|
||||||
|
config IOMMU_DEBUG
|
||||||
|
bool "Enable IOMMU debugging"
|
||||||
|
depends on IOMMU && DEBUG_KERNEL
|
||||||
|
depends on X86_64
|
||||||
|
help
|
||||||
|
Force the IOMMU to on even when you have less than 4GB of
|
||||||
|
memory and add debugging code. On overflow always panic. And
|
||||||
|
allow to enable IOMMU leak tracing. Can be disabled at boot
|
||||||
|
time with iommu=noforce. This will also enable scatter gather
|
||||||
|
list merging. Currently not recommended for production
|
||||||
|
code. When you use it make sure you have a big enough
|
||||||
|
IOMMU/AGP aperture. Most of the options enabled by this can
|
||||||
|
be set more finegrained using the iommu= command line
|
||||||
|
options. See Documentation/x86_64/boot-options.txt for more
|
||||||
|
details.
|
||||||
|
|
||||||
|
config IOMMU_LEAK
|
||||||
|
bool "IOMMU leak tracing"
|
||||||
|
depends on DEBUG_KERNEL
|
||||||
|
depends on IOMMU_DEBUG
|
||||||
|
help
|
||||||
|
Add a simple leak tracer to the IOMMU code. This is useful when you
|
||||||
|
are debugging a buggy device driver that leaks IOMMU mappings.
|
||||||
|
|
||||||
|
#config X86_REMOTE_DEBUG
|
||||||
|
# bool "kgdb debugging stub"
|
||||||
|
|
||||||
endmenu
|
endmenu
|
|
@ -287,7 +287,7 @@ config ES7000_CLUSTERED_APIC
|
||||||
default y
|
default y
|
||||||
depends on SMP && X86_ES7000 && MPENTIUMIII
|
depends on SMP && X86_ES7000 && MPENTIUMIII
|
||||||
|
|
||||||
source "arch/i386/Kconfig.cpu"
|
source "arch/x86/Kconfig.cpu"
|
||||||
|
|
||||||
config HPET_TIMER
|
config HPET_TIMER
|
||||||
bool "HPET Timer Support"
|
bool "HPET Timer Support"
|
||||||
|
@ -1272,7 +1272,7 @@ source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
source "kernel/Kconfig.instrumentation"
|
||||||
|
|
||||||
source "arch/i386/Kconfig.debug"
|
source "arch/x86/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
|
|
@ -835,7 +835,7 @@ source fs/Kconfig
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
source "kernel/Kconfig.instrumentation"
|
||||||
|
|
||||||
source "arch/x86_64/Kconfig.debug"
|
source "arch/x86/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
|
16
arch/x86/Makefile
Normal file
16
arch/x86/Makefile
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
# Unified Makefile for i386 and x86_64
|
||||||
|
|
||||||
|
# select defconfig based on actual architecture
|
||||||
|
KBUILD_DEFCONFIG := $(ARCH)_defconfig
|
||||||
|
|
||||||
|
# # No need to remake these files
|
||||||
|
$(srctree)/arch/x86/Makefile%: ;
|
||||||
|
|
||||||
|
ifeq ($(ARCH),i386)
|
||||||
|
include $(srctree)/arch/x86/Makefile_32
|
||||||
|
else
|
||||||
|
include $(srctree)/arch/x86/Makefile_64
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#
|
#
|
||||||
# i386/Makefile
|
# i386 Makefile
|
||||||
#
|
#
|
||||||
# This file is included by the global makefile so that you can add your own
|
# This file is included by the global makefile so that you can add your own
|
||||||
# architecture-specific flags and dependencies. Remember to do have actions
|
# architecture-specific flags and dependencies. Remember to do have actions
|
||||||
|
@ -17,9 +17,6 @@
|
||||||
# 20050320 Kianusch Sayah Karadji <kianusch@sk-tech.net>
|
# 20050320 Kianusch Sayah Karadji <kianusch@sk-tech.net>
|
||||||
# Added support for GEODE CPU
|
# Added support for GEODE CPU
|
||||||
|
|
||||||
# Fill in SRCARCH
|
|
||||||
SRCARCH := x86
|
|
||||||
|
|
||||||
# BITS is used as extension for files which are available in a 32 bit
|
# BITS is used as extension for files which are available in a 32 bit
|
||||||
# and a 64 bit version to simplify shared Makefiles.
|
# and a 64 bit version to simplify shared Makefiles.
|
||||||
# e.g.: obj-y += foo_$(BITS).o
|
# e.g.: obj-y += foo_$(BITS).o
|
||||||
|
@ -46,7 +43,7 @@ KBUILD_CFLAGS += -pipe -msoft-float -mregparm=3 -freg-struct-return
|
||||||
KBUILD_CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2)
|
KBUILD_CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2)
|
||||||
|
|
||||||
# CPU-specific tuning. Anything which can be shared with UML should go here.
|
# CPU-specific tuning. Anything which can be shared with UML should go here.
|
||||||
include $(srctree)/arch/i386/Makefile.cpu
|
include $(srctree)/arch/x86/Makefile_32.cpu
|
||||||
|
|
||||||
# temporary until string.h is fixed
|
# temporary until string.h is fixed
|
||||||
cflags-y += -ffreestanding
|
cflags-y += -ffreestanding
|
|
@ -1,5 +1,5 @@
|
||||||
#
|
#
|
||||||
# x86_64/Makefile
|
# x86_64 Makefile
|
||||||
#
|
#
|
||||||
# This file is included by the global makefile so that you can add your own
|
# This file is included by the global makefile so that you can add your own
|
||||||
# architecture-specific flags and dependencies. Remember to do have actions
|
# architecture-specific flags and dependencies. Remember to do have actions
|
||||||
|
@ -21,9 +21,6 @@
|
||||||
#
|
#
|
||||||
# $Id: Makefile,v 1.31 2002/03/22 15:56:07 ak Exp $
|
# $Id: Makefile,v 1.31 2002/03/22 15:56:07 ak Exp $
|
||||||
|
|
||||||
# Fill in SRCARCH
|
|
||||||
SRCARCH := x86
|
|
||||||
|
|
||||||
# BITS is used as extension for files which are available in a 32 bit
|
# BITS is used as extension for files which are available in a 32 bit
|
||||||
# and a 64 bit version to simplify shared Makefiles.
|
# and a 64 bit version to simplify shared Makefiles.
|
||||||
# e.g.: obj-y += foo_$(BITS).o
|
# e.g.: obj-y += foo_$(BITS).o
|
1
arch/x86_64/.gitignore
vendored
1
arch/x86_64/.gitignore
vendored
|
@ -1 +0,0 @@
|
||||||
boot
|
|
|
@ -1,61 +0,0 @@
|
||||||
menu "Kernel hacking"
|
|
||||||
|
|
||||||
config TRACE_IRQFLAGS_SUPPORT
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
|
|
||||||
source "lib/Kconfig.debug"
|
|
||||||
|
|
||||||
config DEBUG_RODATA
|
|
||||||
bool "Write protect kernel read-only data structures"
|
|
||||||
depends on DEBUG_KERNEL
|
|
||||||
help
|
|
||||||
Mark the kernel read-only data as write-protected in the pagetables,
|
|
||||||
in order to catch accidental (and incorrect) writes to such const data.
|
|
||||||
This option may have a slight performance impact because a portion
|
|
||||||
of the kernel code won't be covered by a 2MB TLB anymore.
|
|
||||||
If in doubt, say "N".
|
|
||||||
|
|
||||||
config IOMMU_DEBUG
|
|
||||||
depends on IOMMU && DEBUG_KERNEL
|
|
||||||
bool "Enable IOMMU debugging"
|
|
||||||
help
|
|
||||||
Force the IOMMU to on even when you have less than 4GB of
|
|
||||||
memory and add debugging code. On overflow always panic. And
|
|
||||||
allow to enable IOMMU leak tracing. Can be disabled at boot
|
|
||||||
time with iommu=noforce. This will also enable scatter gather
|
|
||||||
list merging. Currently not recommended for production
|
|
||||||
code. When you use it make sure you have a big enough
|
|
||||||
IOMMU/AGP aperture. Most of the options enabled by this can
|
|
||||||
be set more finegrained using the iommu= command line
|
|
||||||
options. See Documentation/x86_64/boot-options.txt for more
|
|
||||||
details.
|
|
||||||
|
|
||||||
config IOMMU_LEAK
|
|
||||||
bool "IOMMU leak tracing"
|
|
||||||
depends on DEBUG_KERNEL
|
|
||||||
depends on IOMMU_DEBUG
|
|
||||||
help
|
|
||||||
Add a simple leak tracer to the IOMMU code. This is useful when you
|
|
||||||
are debugging a buggy device driver that leaks IOMMU mappings.
|
|
||||||
|
|
||||||
config DEBUG_STACKOVERFLOW
|
|
||||||
bool "Check for stack overflows"
|
|
||||||
depends on DEBUG_KERNEL
|
|
||||||
help
|
|
||||||
This option will cause messages to be printed if free stack space
|
|
||||||
drops below a certain limit.
|
|
||||||
|
|
||||||
config DEBUG_STACK_USAGE
|
|
||||||
bool "Stack utilization instrumentation"
|
|
||||||
depends on DEBUG_KERNEL
|
|
||||||
help
|
|
||||||
Enables the display of the minimum amount of free stack which each
|
|
||||||
task has ever had available in the sysrq-T and sysrq-P debug output.
|
|
||||||
|
|
||||||
This option will slow down process creation somewhat.
|
|
||||||
|
|
||||||
#config X86_REMOTE_DEBUG
|
|
||||||
# bool "kgdb debugging stub"
|
|
||||||
|
|
||||||
endmenu
|
|
|
@ -4,23 +4,30 @@
|
||||||
|
|
||||||
PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config
|
PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config
|
||||||
|
|
||||||
|
# If a arch/$(SRCARCH)/Kconfig.$(ARCH) file exist use it
|
||||||
|
ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/Kconfig.$(ARCH)),)
|
||||||
|
Kconfig := arch/$(SRCARCH)/Kconfig.$(ARCH)
|
||||||
|
else
|
||||||
|
Kconfig := arch/$(SRCARCH)/Kconfig
|
||||||
|
endif
|
||||||
|
|
||||||
xconfig: $(obj)/qconf
|
xconfig: $(obj)/qconf
|
||||||
$< arch/$(ARCH)/Kconfig
|
$< $(Kconfig)
|
||||||
|
|
||||||
gconfig: $(obj)/gconf
|
gconfig: $(obj)/gconf
|
||||||
$< arch/$(ARCH)/Kconfig
|
$< $(Kconfig)
|
||||||
|
|
||||||
menuconfig: $(obj)/mconf
|
menuconfig: $(obj)/mconf
|
||||||
$< arch/$(ARCH)/Kconfig
|
$< $(Kconfig)
|
||||||
|
|
||||||
config: $(obj)/conf
|
config: $(obj)/conf
|
||||||
$< arch/$(ARCH)/Kconfig
|
$< $(Kconfig)
|
||||||
|
|
||||||
oldconfig: $(obj)/conf
|
oldconfig: $(obj)/conf
|
||||||
$< -o arch/$(ARCH)/Kconfig
|
$< -o $(Kconfig)
|
||||||
|
|
||||||
silentoldconfig: $(obj)/conf
|
silentoldconfig: $(obj)/conf
|
||||||
$< -s arch/$(ARCH)/Kconfig
|
$< -s $(Kconfig)
|
||||||
|
|
||||||
# Create new linux.po file
|
# Create new linux.po file
|
||||||
# Adjust charset to UTF-8 in .po file to accept UTF-8 in Kconfig files
|
# Adjust charset to UTF-8 in .po file to accept UTF-8 in Kconfig files
|
||||||
|
@ -45,27 +52,27 @@ update-po-config: $(obj)/kxgettext
|
||||||
PHONY += randconfig allyesconfig allnoconfig allmodconfig defconfig
|
PHONY += randconfig allyesconfig allnoconfig allmodconfig defconfig
|
||||||
|
|
||||||
randconfig: $(obj)/conf
|
randconfig: $(obj)/conf
|
||||||
$< -r arch/$(ARCH)/Kconfig
|
$< -r $(Kconfig)
|
||||||
|
|
||||||
allyesconfig: $(obj)/conf
|
allyesconfig: $(obj)/conf
|
||||||
$< -y arch/$(ARCH)/Kconfig
|
$< -y $(Kconfig)
|
||||||
|
|
||||||
allnoconfig: $(obj)/conf
|
allnoconfig: $(obj)/conf
|
||||||
$< -n arch/$(ARCH)/Kconfig
|
$< -n $(Kconfig)
|
||||||
|
|
||||||
allmodconfig: $(obj)/conf
|
allmodconfig: $(obj)/conf
|
||||||
$< -m arch/$(ARCH)/Kconfig
|
$< -m $(Kconfig)
|
||||||
|
|
||||||
defconfig: $(obj)/conf
|
defconfig: $(obj)/conf
|
||||||
ifeq ($(KBUILD_DEFCONFIG),)
|
ifeq ($(KBUILD_DEFCONFIG),)
|
||||||
$< -d arch/$(ARCH)/Kconfig
|
$< -d $(Kconfig)
|
||||||
else
|
else
|
||||||
@echo *** Default configuration is based on '$(KBUILD_DEFCONFIG)'
|
@echo "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'"
|
||||||
$(Q)$< -D arch/$(ARCH)/configs/$(KBUILD_DEFCONFIG) arch/$(ARCH)/Kconfig
|
$(Q)$< -D arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
%_defconfig: $(obj)/conf
|
%_defconfig: $(obj)/conf
|
||||||
$(Q)$< -D arch/$(ARCH)/configs/$@ arch/$(ARCH)/Kconfig
|
$(Q)$< -D arch/$(SRCARCH)/configs/$@ $(Kconfig)
|
||||||
|
|
||||||
# Help text used by make help
|
# Help text used by make help
|
||||||
help:
|
help:
|
||||||
|
|
Loading…
Add table
Reference in a new issue