From 93cbb70d2a3339647e1ee8565a20c2ee1617b568 Mon Sep 17 00:00:00 2001 From: Roman Yeryomin Date: Thu, 13 Sep 2012 00:26:51 +0300 Subject: lexra platform support for build system Signed-off-by: Roman Yeryomin --- Config.in | 3 ++- include/kernel-defaults.mk | 6 ++++++ include/kernel.mk | 2 +- include/target.mk | 5 +++++ scripts/config.sub | 4 ++-- target/Config.in | 5 +++++ toolchain/kernel-headers/Makefile | 4 ++++ 7 files changed, 25 insertions(+), 4 deletions(-) diff --git a/Config.in b/Config.in index ecbfb04c1..2e6a17b7a 100644 --- a/Config.in +++ b/Config.in @@ -599,6 +599,7 @@ menuconfig DEVEL config BUILD_SUFFIX string "Build suffix to append to the BUILD_DIR variable" if DEVEL + default "lexra" if lexra default "" help Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix @@ -662,7 +663,7 @@ menuconfig TARGET_OPTIONS config SOFT_FLOAT bool "Use software floating point by default" if TARGET_OPTIONS default y - depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU + depends on (arm || armeb || powerpc || mipsel || mips || lexra) && !HAS_FPU help If your target CPU does not have a Floating Point Unit (FPU) or a kernel FPU emulator, but you still wish to support floating point diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk index ab73c1ae1..d2d640cfe 100644 --- a/include/kernel-defaults.mk +++ b/include/kernel-defaults.mk @@ -94,6 +94,12 @@ define Kernel/Configure/Default $(LINUX_CONF_CMD) > $(LINUX_DIR)/.config.target # copy CONFIG_KERNEL_* settings over to .config.target awk '/^(#[[:space:]]+)?CONFIG_KERNEL/{sub("CONFIG_KERNEL_","CONFIG_");print}' $(TOPDIR)/.config >> $(LINUX_DIR)/.config.target +ifeq ($(CONFIG_TARGET_realtek),y) + echo "CONFIG_RTL_FLASH_SIZE=${CONFIG_REALTEK_FLASH_SIZE}" >> $(LINUX_DIR)/.config.target + echo "CONFIG_RTL_LINUX_IMAGE_OFFSET=0x${CONFIG_REALTEK_KERNEL_OFFSET}" >> $(LINUX_DIR)/.config.target + echo "CONFIG_RTL_ROOT_IMAGE_OFFSET=0x${CONFIG_REALTEK_ROOTFS_OFFSET}" >> $(LINUX_DIR)/.config.target + echo "CONFIG_RTL_KERNEL_LOAD_ADDRESS=${CONFIG_REALTEK_KERNEL_LOAD_ADDRESS}" >> $(LINUX_DIR)/.config.target +endif echo "# CONFIG_KALLSYMS_EXTRA_PASS is not set" >> $(LINUX_DIR)/.config.target echo "# CONFIG_KALLSYMS_ALL is not set" >> $(LINUX_DIR)/.config.target echo "# CONFIG_KPROBES is not set" >> $(LINUX_DIR)/.config.target diff --git a/include/kernel.mk b/include/kernel.mk index 589db024d..e48c1388b 100644 --- a/include/kernel.mk +++ b/include/kernel.mk @@ -64,7 +64,7 @@ ifneq (,$(findstring uml,$(BOARD))) LINUX_KARCH=um else ifeq (,$(LINUX_KARCH)) - LINUX_KARCH=$(strip $(subst i386,x86,$(subst armeb,arm,$(subst mipsel,mips,$(subst mips64,mips,$(subst mips64el,mips,$(subst sh2,sh,$(subst sh3,sh,$(subst sh4,sh,$(ARCH)))))))))) + LINUX_KARCH=$(strip $(subst lexra,rlx,$(subst i386,x86,$(subst armeb,arm,$(subst mipsel,mips,$(subst mips64,mips,$(subst mips64el,mips,$(subst sh2,sh,$(subst sh3,sh,$(subst sh4,sh,$(ARCH))))))))))) endif endif diff --git a/include/target.mk b/include/target.mk index 61cdf0640..b08167326 100644 --- a/include/target.mk +++ b/include/target.mk @@ -107,7 +107,12 @@ ifneq ($(TARGET_BUILD)$(if $(DUMP),,1),) include $(INCLUDE_DIR)/kernel-version.mk endif + GENERIC_PLATFORM_DIR := $(TOPDIR)/target/linux/generic +ifeq ($(CONFIG_TARGET_realtek),y) +# stop any generic kernel patches being applied +GENERIC_PLATFORM_DIR := $(TOPDIR)/target/linux/not-generic +endif GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/patches$(if $(wildcard $(GENERIC_PLATFORM_DIR)/patches-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER)) GENERIC_FILES_DIR := $(foreach dir,$(wildcard $(GENERIC_PLATFORM_DIR)/files $(GENERIC_PLATFORM_DIR)/files-$(KERNEL_PATCHVER)),"$(dir)") diff --git a/scripts/config.sub b/scripts/config.sub index df65a9220..4c483bcd7 100755 --- a/scripts/config.sub +++ b/scripts/config.sub @@ -262,7 +262,7 @@ case $basic_machine in | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips | lexra | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64octeon | mips64octeonel \ @@ -357,7 +357,7 @@ case $basic_machine in | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips-* | lexra-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64octeon-* | mips64octeonel-* \ diff --git a/target/Config.in b/target/Config.in index 31f3ced51..819ed8bca 100644 --- a/target/Config.in +++ b/target/Config.in @@ -91,6 +91,10 @@ config i686 config m68k bool +config lexra + select BIG_ENDIAN + bool + config mips select BIG_ENDIAN bool @@ -154,4 +158,5 @@ config ARCH default "sh4eb" if sh4eb default "sparc" if sparc default "x86_64" if x86_64 + default "mips" if lexra diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile index 9427f82c7..a74a6c234 100644 --- a/toolchain/kernel-headers/Makefile +++ b/toolchain/kernel-headers/Makefile @@ -31,6 +31,10 @@ ifeq ($(strip $(BOARD)),uml) LINUX_KARCH:=$(subst x86_64,x86,$(subst i386,x86,$(ARCH))) endif +ifeq ($(CONFIG_TARGET_realtek),y) +LINUX_KARCH:=$(subst lexra,mips,$(ARCH)) +endif + HOST_EXTRACFLAGS= LINUX_HAS_HEADERS_INSTALL:=y -- cgit v1.2.3