Pārlūkot izejas kodu

Merge branch 'master' of git+ssh://openadk.org/git/openadk

Waldemar Brodkorb 14 gadi atpakaļ
vecāks
revīzija
9a71264445

+ 3 - 20
jtools/openjdk/patches/openjdk.patch

@@ -1,4 +1,6 @@
-diff -Nur openjdk-6.orig/Makefile openjdk-6/Makefile
+
+use precompiled ecj.
+
 --- openjdk-6.orig/Makefile	2011-02-28 17:02:07.000000000 +0100
 +++ openjdk-6/Makefile	2011-04-06 19:47:19.261818496 +0200
 @@ -25,9 +25,7 @@
@@ -12,27 +14,8 @@ diff -Nur openjdk-6.orig/Makefile openjdk-6/Makefile
  
  ifndef JDK_TOPDIR
    JDK_TOPDIR=$(TOPDIR)/jdk
-diff -Nur icedtea6-1.10.orig/Makefile.in icedtea6-1.10/Makefile.in
 --- icedtea6-1.10.orig/Makefile.in	2011-03-02 20:48:45.161291458 +0100
 +++ icedtea6-1.10/Makefile.in	2011-04-06 20:10:40.581819545 +0200
-@@ -1329,7 +1329,7 @@
- @OPENJDK_SRC_DIR_FOUND_TRUE@	  cp -pPR $(OPENJDK_SRC_DIR_LINK) $(OPENJDK_SRC_DIR) openjdk ; \
- @OPENJDK_SRC_DIR_FOUND_TRUE@	fi
- @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	if ! test -d openjdk ; then \
--@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	  cp -pPRl openjdk.hg openjdk ; \
-+@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	  cp -pPR openjdk.hg openjdk ; \
- @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	fi
- @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_FALSE@	set -e ; \
- @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_FALSE@	if ! test -d openjdk ; \
-@@ -1576,7 +1576,7 @@
- # FIXME (missing): Rename to clone-ecj.
- stamps/extract-ecj.stamp: $(OPENJDK_TREE)
- 	if ! test -d openjdk-ecj ; then \
--	    cp -pPRl openjdk openjdk-ecj ; \
-+	    cp -pPR openjdk openjdk-ecj ; \
- 	fi
- 	mkdir -p stamps
- 	touch stamps/extract-ecj.stamp
 @@ -1643,10 +1643,14 @@
  
  stamps/native-ecj.stamp: 

+ 71 - 0
package/base-files/Makefile

@@ -81,4 +81,75 @@ ifneq (${ADK_PACKAGE_CONFIG_IN_ETC},)
 	chmod 600 $(IDIR_BASE_FILES)/etc/adkconfig.gz
 endif
 
+
+
+# simple network configuration
+ifneq (${ADK_SIMPLE_NETWORK_CONFIG},)
+	${INSTALL_DIR} ${IDIR_BASE_FILES}/etc/network
+
+	# network config local
+	echo -e "auto lo\niface lo inet loopback" > ${IDIR_BASE_FILES}/etc/network/interfaces
+
+	# network config eth0
+	# configure nic with manual ip
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC},y)
+	echo -e "\nauto eth0\niface eth0 inet dhcp" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+	# configure nic with dhcp
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL},y)
+	echo -e "\nauto eth0\niface eth0 inet static" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  address ${SIMPLE_NETWORK_CONFIG_ETH0_IP}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  netmask ${SIMPLE_NETWORK_CONFIG_ETH0_NM}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  broadcast ${SIMPLE_NETWORK_CONFIG_ETH0_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  gateway ${SIMPLE_NETWORK_CONFIG_ETH0_GW}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+	# configure bridge
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE},y)
+	echo -e "\nauto br0\niface br0 inet manual" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+	#configure bridge with ip
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP},y)
+	echo -e "\nauto br0\niface br0 inet static" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  address ${SIMPLE_NETWORK_CONFIG_ETH0_IP}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  netmask ${SIMPLE_NETWORK_CONFIG_ETH0_NM}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  broadcast ${SIMPLE_NETWORK_CONFIG_ETH0_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+
+	# network config eth1
+	# configure nic with manual ip
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC},y)
+	echo -e "\nauto eth1\niface eth1 inet dhcp" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+	# configure nic with dhcp
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC_MANUAL},y)
+	echo -e "\nauto eth1\niface eth1 inet static" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  address ${SIMPLE_NETWORK_CONFIG_ETH1_IP}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  netmask ${SIMPLE_NETWORK_CONFIG_ETH1_NM}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  broadcast ${SIMPLE_NETWORK_CONFIG_ETH1_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  gateway ${SIMPLE_NETWORK_CONFIG_ETH1_GW}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+	# configure bridge
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE},y)
+	echo -e "\nauto br0\niface br1 inet manual" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH1_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+	#configure bridge with ip
+ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP},y)
+	echo -e "\nauto br0\niface br1 inet static" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  address ${SIMPLE_NETWORK_CONFIG_ETH1_IP}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  netmask ${SIMPLE_NETWORK_CONFIG_ETH1_NM}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  broadcast ${SIMPLE_NETWORK_CONFIG_ETH1_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+	echo -e "  bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH1_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
+endif
+
+	# newline at the end of interfaces file
+	echo -en "\n" >>  ${IDIR_BASE_FILES}/etc/network/interfaces
+
+	# resolver config
+	echo -e "nameserver ${SIMPLE_NETWORK_CONFIG_RESOLV}" > ${IDIR_BASE_FILES}/etc/resolv.conf
+endif
+
+
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 8 - 2
package/openjdk/Makefile

@@ -17,7 +17,7 @@ PKG_DESCR:=		OpenJDK Java VM
 PKG_SECTION:=		lang
 PKG_BUILDDEP:=		alsa-lib xproto jpeg zlib giflib libpng freetype cups
 PKG_BUILDDEP+=		libX11 libXt libXp libXinerama libXrender libXtst libiconv
-PKG_DEPENDS:=		zlib libstdcxx libffi libpthread
+PKG_DEPENDS:=		zlib libstdcxx libffi libpthread libxtst libxi
 PKG_URL:=		http://openjdk.org/
 PKG_SITES:=		http://download.java.net/openjdk/jdk6/promoted/b22/ \
 			http://mirror.netcologne.de/apache.org/xml/xalan-j/binaries/ \
@@ -59,7 +59,9 @@ include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,OPENJDK,openjdk,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-
+# segfaults with march=pentium-m/atom
+TARGET_CFLAGS:=		$(subst march=pentium-m,march=i686,$(TARGET_CFLAGS))
+TARGET_CFLAGS:=		$(subst march=atom,march=i686,$(TARGET_CFLAGS))
 TARGET_CFLAGS:=         $(filter-out -fhonour-copts,$(TARGET_CFLAGS))
 BOOTSTRAPJDK:=		${STAGING_JAVA_HOST_DIR}/bootstrap-jdk
 
@@ -98,7 +100,10 @@ CONFIGURE_ENV+=		PATH=$(STAGING_JAVA_HOST_DIR)/usr/bin:$${PATH}:${STAGING_TARGET
 MAKE_ENV+=		ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME) \
 			ADK_ECJ=$(STAGING_JAVA_HOST_DIR)/usr/bin/ecj \
 			PATH=$(STAGING_JAVA_HOST_DIR)/usr/bin:$${PATH}:${STAGING_TARGET_DIR}/usr/bin \
+			OTHER_CFLAGS='$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_LDFLAGS)' \
+			OTHER_CXXFLAGS='$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_LDFLAGS)' \
 			GCC_HONOUR_COPTS=s CROSS_COMPILE_ARCH=$(ARCH)
+
 ALL_TARGET:=		icedtea
 
 # add include path for Xrender.h from staging directory
@@ -107,6 +112,7 @@ ifeq ($(QEMU),)
 	$(error Fatal error: $$QEMU not set!)
 endif
 	$(SED) "s#@ADK_TARGETDIR@#$(STAGING_TARGET_DIR)#" ${WRKDIST}/$(PKG_NAME)-$(PKG_VERSION)/jdk/make/sun/xawt/Makefile
+	$(SED) "s#OTHER_CXXFLAGS#CXXFLAGS_COMMON#" ${WRKDIST}/$(PKG_NAME)-$(PKG_VERSION)/jdk/make/com/sun/java/pack/Makefile
 
 do-extract:
 	cd ${WRKDIST}; mkdir $(PKG_NAME)-$(PKG_VERSION); \

+ 31 - 0
package/openjdk/patches/cxxflags-nozlib.patch

@@ -0,0 +1,31 @@
+--- w-openjdk-6.orig/icedtea6-1.10/patches/libraries.patch	2011-02-23 23:32:34.602901049 +0100
++++ w-openjdk-6/icedtea6-1.10/patches/libraries.patch	2011-08-24 15:07:24.347475241 +0200
+@@ -24648,7 +24648,7 @@
+ -	     $(ZIPOBJDIR)/inffast.$(OBJECT_SUFFIX)
+ -
+ -  ZINCLUDE=-I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3
+--  OTHER_CXXFLAGS += $(ZINCLUDE)
++-  CXXFLAGS_COMMON += $(ZINCLUDE)
+ -  LDDFLAGS += $(ZIPOBJS)
+ +            $(ZIPOBJDIR)/deflate.$(OBJECT_SUFFIX) \
+ +            $(ZIPOBJDIR)/trees.$(OBJECT_SUFFIX) \
+@@ -24663,7 +24663,7 @@
+ +
+ +  OTHER_LDLIBS += -lz
+  else
+-   OTHER_CXXFLAGS += -DNO_ZLIB -DUNPACK_JNI
++   CXXFLAGS_COMMON += -DNO_ZLIB -DUNPACK_JNI
+ -  OTHER_LDLIBS += $(JVMLIB)
+ +  OTHER_LDLIBS += -lz $(JVMLIB)
+  endif
+--- w-openjdk-6.orig/icedtea6-1.10/patches/linker-libs-order.patch	2011-02-23 23:32:34.653236038 +0100
++++ w-openjdk-6/icedtea6-1.10/patches/linker-libs-order.patch	2011-08-24 15:53:05.047474381 +0200
+@@ -31,7 +31,7 @@
+  
+ -  OTHER_LDLIBS += -lz
+  else
+-   OTHER_CXXFLAGS += -DNO_ZLIB -DUNPACK_JNI
++   CXXFLAGS_COMMON += -DNO_ZLIB -DUNPACK_JNI
+ -  OTHER_LDLIBS += -lz $(JVMLIB)
+ +  OTHER_LDLIBS += $(JVMLIB)
+  endif

+ 1 - 1
scripts/update-sys

@@ -50,7 +50,7 @@ config $archsym
 EOF
 
 if [ "${system}" = "toolchain" -o "${system}" = "qemu" ];then
-	sys=${system}-$arch
+	sys=${system}-$cpuarch
 else
 	sys=$system
 fi

+ 17 - 0
target/config/Config.in

@@ -218,6 +218,16 @@ config ADK_TARGET_CPU_WITH_SSE
 config ADK_TARGET_CPU_WITH_SSE2
 	boolean
 
+config ADK_TARGET_CPU_WITH_SSE3
+	boolean
+
+config ADK_TARGET_CPU_WITH_SSSE3
+	boolean
+
+# hyper threading
+config ADK_TARGET_CPU_WITH_HT
+	boolean
+
 config ADK_TARGET_CPU_WITH_3DNOW
 	boolean
 
@@ -255,6 +265,9 @@ config ADK_CPU_PPC64
 config ADK_CPU_PENTIUM_M
 	boolean
 
+config ADK_CPU_ATOM
+	boolean
+
 config ADK_CPU_AMDFAM10
 	select ADK_TARGET_CPU_WITH_VT
 	boolean
@@ -273,6 +286,7 @@ config ADK_TARGET_CPU_ARCH
 	default "i686" if ADK_CPU_I686
 	default "i586" if ADK_CPU_GEODE
 	default "i686" if ADK_CPU_PENTIUM_M
+	default "i686" if ADK_CPU_ATOM
 	default "mips64" if ADK_LINUX_MIPS && ADK_big && ADK_TARGET_KERNEL64
 	default "mips64el" if ADK_LINUX_MIPS && ADK_little && ADK_TARGET_KERNEL64
 	default "mips" if ADK_LINUX_MIPS && ADK_big
@@ -302,6 +316,7 @@ config ADK_TARGET_CFLAGS
 	default "-march=i586" if ADK_CPU_I586
 	default "-march=i686" if ADK_CPU_I686
 	default "-march=pentium-m" if ADK_CPU_PENTIUM_M
+	default "-march=atom" if ADK_CPU_ATOM
 	default "-march=amdfam10" if ADK_CPU_AMDFAM10
 	default "-mcpu=v8" if ADK_CPU_SPARC_V8
 	default "-m64 -mcpu=v9" if ADK_CPU_SPARC_V9
@@ -317,6 +332,8 @@ config ADK_TARGET_CMDLINE
 	default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
 	default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40
+	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_QEMU_X86
 	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
 	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
 	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_FOXBOARD_LX

+ 125 - 0
target/config/Config.in.runtime

@@ -141,3 +141,128 @@ config ADK_BINSH_ZSH
 	  Use zsh as system shell. This is probably a bad idea.
 
 endchoice
+
+
+
+
+
+config ADK_SIMPLE_NETWORK_CONFIG
+	prompt "simple network configuration"
+	boolean
+	help
+	  Manually change network config
+	  
+	  WWW: http://www.openadk.org
+
+menu "eth0 Configuration"
+depends on ADK_SIMPLE_NETWORK_CONFIG
+
+choice
+	prompt "Type"
+	default SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC
+
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC
+	bool "NIC / DHCP"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
+	bool "NIC / manual IP"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
+	bool "Bridge with IP"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE
+	bool "Bridge w/o IP"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NONE
+	bool "None"
+endchoice
+
+config SIMPLE_NETWORK_CONFIG_ETH0_IP
+	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
+	string "eth0 IP Address"
+	default "192.168.1.2"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_NM
+	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
+	string "eth0 Netmask"
+	default "255.255.255.0"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_GW
+	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL
+	string "eth0 Gateway"
+	default "192.168.1.1"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE
+	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
+	string "Bridge ports"
+	default "eth0 eth1"
+
+config SIMPLE_NETWORK_CONFIG_ETH0_BC
+	depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP
+	string "eth0 Broadcast"
+	default "+"
+
+endmenu
+
+
+
+menu "eth1 Configuration"
+depends on ADK_SIMPLE_NETWORK_CONFIG
+
+choice
+	prompt "Type"
+	default SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NONE
+
+config SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC
+	bool "NIC / DHCP"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC_MANUAL
+	bool "NIC / manual IP"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP
+	bool "Bridge with IP"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE
+	bool "Bridge w/o IP"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NONE
+	bool "None"
+endchoice
+
+config SIMPLE_NETWORK_CONFIG_ETH1_IP
+	depends on SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP
+	string "eth1 IP Address"
+	default "192.168.1.2"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_NM
+	depends on SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP
+	string "eth1 Netmask"
+	default "255.255.255.0"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_GW
+	depends on SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC_MANUAL
+	string "eth1 Gateway"
+	default "192.168.1.1"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_BRIDGE
+	depends on SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE || SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP
+	string "Bridge ports"
+	default "eth1 eth2"
+
+config SIMPLE_NETWORK_CONFIG_ETH1_BC
+	depends on SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP
+	string "eth1 Broadcast"
+	default "+"
+
+endmenu
+
+
+menu "Resolver Configuration"
+depends on ADK_SIMPLE_NETWORK_CONFIG
+
+config SIMPLE_NETWORK_CONFIG_RESOLV
+	string "Nameserver"
+	default "192.168.1.1"
+
+endmenu
+

+ 4 - 0
target/linux/config/Config.in.block

@@ -129,6 +129,8 @@ config ADK_KERNEL_ATA_PIIX
 	default y if ADK_TARGET_SYSTEM_QEMU_X86_64
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default n
 
 config ADK_KERNEL_SATA_AHCI
@@ -150,6 +152,8 @@ config ADK_KPACKAGE_KMOD_SATA_AHCI
 	select ADK_KERNEL_BLK_DEV_SD
 	depends on !ADK_KERNEL_SATA_AHCI
 	depends on ADK_TARGET_WITH_SATA
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default n
 	help
 	  Enables support for AHCI Serial ATA.

+ 21 - 0
target/linux/config/Config.in.cpu

@@ -11,3 +11,24 @@ config ADK_KERNEL_MTRR
 	boolean
 	default y if ADK_TARGET_CPU_WITH_MTRR
 	default n
+	
+# hyper threading
+config ADK_KERNEL_PM_SLEEP_SMP
+	boolean
+	default y if ADK_TARGET_CPU_WITH_HT
+	default n
+
+config ADK_KERNEL_SMP
+	boolean
+	default y if ADK_TARGET_CPU_WITH_HT
+	default n
+
+config ADK_KERNEL_X86_HT
+	boolean
+	default y if ADK_TARGET_CPU_WITH_HT
+	default n
+
+config ADK_KERNEL_USE_GENERIC_SMP_HELPERS
+	boolean
+	default y if ADK_TARGET_CPU_WITH_HT
+	default n

+ 4 - 2
target/linux/config/Config.in.graphics

@@ -3,6 +3,7 @@ config ADK_KERNEL_VT
 	default y if ADK_HARDWARE_QEMU
 	default y if ADK_TARGET_WITH_VGA
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default n
 
 config ADK_KERNEL_VT_CONSOLE
@@ -10,6 +11,7 @@ config ADK_KERNEL_VT_CONSOLE
 	default y if ADK_HARDWARE_QEMU
 	default y if ADK_TARGET_WITH_VGA
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default n
 
 config ADK_KERNEL_FONTS
@@ -71,7 +73,7 @@ config ADK_KERNEL_FB_SM7XX
 	 Framebuffer support for Lemote Yeelong.
 
 config ADK_HARDWARE_GRAPHICS_INTEL_I915
-	prompt "................................ Support for Intel graphic cards (AGP/DRM/KMS)"
+	prompt "............................ Support for Intel graphic cards (AGP/DRM/KMS/NM10)"
 	boolean
 	select ADK_KERNEL_FB
 	select ADK_KERNEL_DRM
@@ -83,7 +85,7 @@ config ADK_HARDWARE_GRAPHICS_INTEL_I915
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
 	default n
-	depends on ADK_TARGET_SYSTEM_IBM_X40 || ADK_NATIVE_SYSTEM_IBM_X40
+	depends on ADK_TARGET_SYSTEM_IBM_X40 || ADK_NATIVE_SYSTEM_IBM_X40 || ADK_TARGET_SYSTEM_INTEL_ATOM || ADK_NATIVE_SYSTEM_INTEL_ATOM
 	help
           AGP/DRM/KMS support for Intel chipset i915.
 	

+ 10 - 0
target/linux/config/Config.in.input

@@ -6,6 +6,8 @@ config ADK_KERNEL_INPUT
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
 	default n
@@ -15,6 +17,8 @@ config ADK_KERNEL_INPUT_KEYBOARD
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
 	default n
@@ -24,6 +28,8 @@ config ADK_KERNEL_KEYBOARD_ATKBD
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
 	default n
@@ -33,6 +39,8 @@ config ADK_KERNEL_INPUT_MOUSE
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
 	default n
@@ -42,6 +50,8 @@ config ADK_KERNEL_INPUT_MOUSEDEV
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
 	default n

+ 4 - 0
target/linux/config/Config.in.netdevice

@@ -154,6 +154,8 @@ config ADK_KERNEL_R8169
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NETDEV_1000
+	select ADK_KERNEL_MII
+	select ADK_KPACKAGE_KMOD_FW_LOADER
 	default y if ADK_TARGET_SYSTEM_OVH_RPS
 	default n
 	help
@@ -246,6 +248,8 @@ config ADK_KPACKAGE_KMOD_R8169
 	select ADK_KERNEL_NETDEVICES
 	select ADK_KERNEL_NET_ETHERNET
 	select ADK_KERNEL_NETDEV_1000
+	select ADK_KERNEL_MII
+	select ADK_KPACKAGE_KMOD_FW_LOADER
 	depends on !ADK_KERNEL_R8169
 	default n
 	help

+ 1 - 1
target/linux/config/Config.in.network

@@ -158,7 +158,7 @@ config ADK_KPACKAGE_KMOD_NET_IPGRE
 config ADK_KPACKAGE_KMOD_IPV6
 	prompt "kmod-ipv6......................... IPv6 support"
 	tristate
-	default n
+	default m
 	help
 	  This is complemental support for the IP version 6.
 	  You will still be able to do traditional IPv4 networking as well.

+ 6 - 0
target/linux/config/Config.in.pm

@@ -36,6 +36,8 @@ config ADK_HARDWARE_ACPI
 	select ADK_KERNEL_ACPI_BUTTON
 	select ADK_KERNEL_ACPI_FAN
 	select ADK_KERNEL_ACPI_DOCK
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
 	default n
@@ -46,6 +48,8 @@ config ADK_KERNEL_SUSPEND
 	prompt "Enable Suspend-to-RAM support"
 	boolean
 	select ADK_KERNEL_PM
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
 	default n
@@ -58,6 +62,8 @@ config ADK_KERNEL_HIBERNATION
 	select ADK_KERNEL_PM
 	select ADK_KERNEL_SWAP
 	select BUSYBOX_SWAPONOFF
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
 	default n

+ 25 - 0
target/linux/config/Config.in.sensors

@@ -0,0 +1,25 @@
+menu "Sensors"
+
+config ADK_KERNEL_HWMON
+	boolean
+
+config ADK_KPACKAGE_KMOD_CORETEMP
+	prompt "kmod-coretemp..................... Coretemp"
+	boolean
+	select ADK_KERNEL_I2C
+	select ADK_KERNEL_I2C_CHARDEV
+	select ADK_KERNEL_HWMON
+	select ADK_KERNEL_EXPERIMENTAL
+	default n
+	help
+	  Coretemp module
+
+config ADK_KPACKAGE_KMOD_IT87
+	prompt "kmod-it87......................... it87"
+	boolean
+	default n
+	help
+	  Module for IT87 smbus chipsets
+
+endmenu
+

+ 8 - 0
target/linux/config/Config.in.systems

@@ -1,3 +1,10 @@
+# page size
+config ADK_KERNEL_PAGE_SIZE_4KB
+	boolean
+
+config ADK_KERNEL_PAGE_SIZE_16KB
+	boolean
+
 # mips systems
 config ADK_KERNEL_ATHEROS_AR231X
 	boolean
@@ -37,6 +44,7 @@ config ADK_KERNEL_ARCH_AT91SAM9G20
 config ADK_KERNEL_MACH_ACMENETUSFOXG20
 	boolean
 
+# endianesss and ABI
 config ADK_KERNEL_AEABI
 	boolean
 

+ 8 - 0
target/linux/config/Config.in.usb

@@ -35,6 +35,8 @@ config ADK_KPACKAGE_KMOD_USB
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
 	default y if ADK_TARGET_SYSTEM_FOXBOARD_LX
@@ -78,6 +80,8 @@ config ADK_KPACKAGE_KMOD_USB_UHCI_HCD
 	depends on !ADK_TARGET_SYSTEM_FOXBOARD_LX
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default n
 	help
@@ -101,6 +105,8 @@ config ADK_KPACKAGE_KMOD_USB_OHCI_HCD
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
 	default y if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default n
 	help
 	  The Open Host Controller Interface (OHCI) is a standard for accessing
@@ -152,6 +158,8 @@ config ADK_KPACKAGE_KMOD_USB_EHCI_HCD
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
 	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
+	default y if ADK_TARGET_SYSTEM_INTEL_ATOM
+	default y if ADK_NATIVE_SYSTEM_INTEL_ATOM
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_NATIVE_SYSTEM_IBM_X40
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG

+ 135 - 0
target/linux/patches/2.6.39/mips-malta.patch

@@ -0,0 +1,135 @@
+http://lkml.indiana.edu/hypermail/linux/kernel/1105.3/02199.html
+
+diff -Nur linux-2.6.39.orig/arch/mips/include/asm/smp-ops.h linux-2.6.39/arch/mips/include/asm/smp-ops.h
+--- linux-2.6.39.orig/arch/mips/include/asm/smp-ops.h	2011-05-19 06:06:34.000000000 +0200
++++ linux-2.6.39/arch/mips/include/asm/smp-ops.h	2011-08-29 04:39:03.360480881 +0200
+@@ -56,8 +56,43 @@
+ 
+ #endif /* !CONFIG_SMP */
+ 
+-extern struct plat_smp_ops up_smp_ops;
+-extern struct plat_smp_ops cmp_smp_ops;
+-extern struct plat_smp_ops vsmp_smp_ops;
++static inline int register_up_smp_ops(void)
++{
++#ifdef CONFIG_SMP_UP
++	extern struct plat_smp_ops up_smp_ops;
++
++	register_smp_ops(&up_smp_ops);
++
++	return 0;
++#else
++	return -ENODEV;
++#endif
++}
++
++static inline int register_cmp_smp_ops(void)
++{
++#ifdef CONFIG_MIPS_CMP
++	extern struct plat_smp_ops cmp_smp_ops;
++
++	register_smp_ops(&cmp_smp_ops);
++
++	return 0;
++#else
++	return -ENODEV;
++#endif
++}
++
++static inline int register_vsmp_smp_ops(void)
++{
++#ifdef CONFIG_MIPS_MT_SMP
++	extern struct plat_smp_ops vsmp_smp_ops;
++
++	register_smp_ops(&vsmp_smp_ops);
++
++	return 0;
++#else
++	return -ENODEV;
++#endif
++}
+ 
+ #endif /* __ASM_SMP_OPS_H */
+diff -Nur linux-2.6.39.orig/arch/mips/mipssim/sim_setup.c linux-2.6.39/arch/mips/mipssim/sim_setup.c
+--- linux-2.6.39.orig/arch/mips/mipssim/sim_setup.c	2011-05-19 06:06:34.000000000 +0200
++++ linux-2.6.39/arch/mips/mipssim/sim_setup.c	2011-08-29 04:39:03.390480572 +0200
+@@ -59,18 +59,17 @@
+ 
+ 	prom_meminit();
+ 
+-#ifdef CONFIG_MIPS_MT_SMP
+-	if (cpu_has_mipsmt)
+-		register_smp_ops(&vsmp_smp_ops);
+-	else
+-		register_smp_ops(&up_smp_ops);
+-#endif
++	if (cpu_has_mipsmt) {
++		if (!register_vsmp_smp_ops())
++			return;
++
+ #ifdef CONFIG_MIPS_MT_SMTC
+-	if (cpu_has_mipsmt)
+ 		register_smp_ops(&ssmtc_smp_ops);
+-	else
+-		register_smp_ops(&up_smp_ops);
++			return;
+ #endif
++	}
++
++	register_up_smp_ops();
+ }
+ 
+ static void __init serial_init(void)
+diff -Nur linux-2.6.39.orig/arch/mips/mti-malta/malta-init.c linux-2.6.39/arch/mips/mti-malta/malta-init.c
+--- linux-2.6.39.orig/arch/mips/mti-malta/malta-init.c	2011-05-19 06:06:34.000000000 +0200
++++ linux-2.6.39/arch/mips/mti-malta/malta-init.c	2011-08-29 04:39:03.700480601 +0200
+@@ -29,6 +29,7 @@
+ #include <asm/system.h>
+ #include <asm/cacheflush.h>
+ #include <asm/traps.h>
++#include <asm/smp-ops.h>
+ 
+ #include <asm/gcmpregs.h>
+ #include <asm/mips-boards/prom.h>
+@@ -358,15 +359,14 @@
+ #ifdef CONFIG_SERIAL_8250_CONSOLE
+ 	console_config();
+ #endif
+-#ifdef CONFIG_MIPS_CMP
+ 	/* Early detection of CMP support */
+ 	if (gcmp_probe(GCMP_BASE_ADDR, GCMP_ADDRSPACE_SZ))
+-		register_smp_ops(&cmp_smp_ops);
+-	else
+-#endif
+-#ifdef CONFIG_MIPS_MT_SMP
+-		register_smp_ops(&vsmp_smp_ops);
+-#endif
++		if (!register_cmp_smp_ops())
++			return;
++
++	if (!register_vsmp_smp_ops())
++		return;
++
+ #ifdef CONFIG_MIPS_MT_SMTC
+ 	register_smp_ops(&msmtc_smp_ops);
+ #endif
+diff -Nur linux-2.6.39.orig/arch/mips/pmc-sierra/msp71xx/msp_setup.c linux-2.6.39/arch/mips/pmc-sierra/msp71xx/msp_setup.c
+--- linux-2.6.39.orig/arch/mips/pmc-sierra/msp71xx/msp_setup.c	2011-05-19 06:06:34.000000000 +0200
++++ linux-2.6.39/arch/mips/pmc-sierra/msp71xx/msp_setup.c	2011-08-29 04:39:03.790480302 +0200
+@@ -228,13 +228,11 @@
+ 	 */
+ 	msp_serial_setup();
+ 
+-#ifdef CONFIG_MIPS_MT_SMP
+-	register_smp_ops(&vsmp_smp_ops);
+-#endif
+-
++	if (register_vsmp_smp_ops()) {
+ #ifdef CONFIG_MIPS_MT_SMTC
+-	register_smp_ops(&msp_smtc_smp_ops);
++		register_smp_ops(&msp_smtc_smp_ops);
+ #endif
++	}
+ 
+ #ifdef CONFIG_PMCTWILED
+ 	/*

+ 7 - 5
target/mips/Makefile

@@ -98,6 +98,8 @@ imageinstall: kernel-install $(BIN_DIR)/$(ROOTFSTARBALL)
 endif
 ifeq ($(ADK_TARGET_FS),archive)
 imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL)
+	@cp $(KERNEL) $(BIN_DIR)/$(TARGET_KERNEL)
+	@echo 'The kernel file is: $(BIN_DIR)/${TARGET_KERNEL}'
 	@echo "The RootFS tarball is: $(BIN_DIR)/$(ROOTFSTARBALL)"
 ifneq ($(ADK_HARDWARE_QEMU),)
 	@echo "Use following command to create a QEMU Image:"
@@ -152,12 +154,12 @@ imageinstall: kernel-install ${BUILD_DIR}/${ROOTFSSQUASHFS}
 		echo The image file is $(ROOTFSSQUASHFS); \
 	fi
 ifeq ($(ADK_TARGET_SYSTEM_FON_FON2100),y)
-		echo The kernel file is $(TARGET_KERNEL)
+	echo The kernel file is $(TARGET_KERNEL)
 endif
 ifeq ($(ADK_TARGET_SYSTEM_BROADCOM_BCM47XX),y)
-		echo 'You can flash the image via tftp:'
-		echo 'tftp 192.168.1.1'
-		echo 'tftp> binary'
-		echo "tftp> put $(ROOTFSSQUASHFS) upgrade_code.bin"
+	echo 'You can flash the image via tftp:'
+	echo 'tftp 192.168.1.1'
+	echo 'tftp> binary'
+	echo "tftp> put $(ROOTFSSQUASHFS) upgrade_code.bin"
 endif
 endif

+ 1 - 0
target/mips/sys-available/qemu-mipsel

@@ -4,6 +4,7 @@ config ADK_TARGET_SYSTEM_QEMU_MIPSEL
 	select ADK_qemu_mipsel
 	select ADK_little
 	select ADK_KERNEL_MIPS_MALTA
+	select ADK_KERNEL_PAGE_SIZE_4KB
 	select ADK_KERNEL_CPU_LITTLE_ENDIAN
 	select ADK_HARDWARE_QEMU
 	select ADK_TARGET_WITH_VGA

+ 28 - 0
target/x86/sys-available/intel-atom

@@ -0,0 +1,28 @@
+config ADK_TARGET_SYSTEM_INTEL_ATOM
+	bool "Intel Atom (NM10)"
+	select ADK_x86
+	select ADK_intel_atom
+	select ADK_CPU_ATOM
+	select ADK_KERNEL_MATOM
+	select ADK_KERNEL_MII
+	select ADK_TARGET_CPU_WITH_MMX
+	select ADK_TARGET_CPU_WITH_SSE
+	select ADK_TARGET_CPU_WITH_SSE2
+	select ADK_TARGET_CPU_WITH_SSE3
+	select ADK_TARGET_CPU_WITH_SSSE3
+	select ADK_TARGET_CPU_WITH_HT
+	select ADK_TARGET_CPU_WITH_MTRR
+	select ADK_TARGET_WITH_USB_BOOT
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_INPUT
+	select ADK_TARGET_WITH_RTC
+	select ADK_TARGET_WITH_CF
+	select ADK_TARGET_WITH_INPUT
+	select ADK_TARGET_WITH_HDD
+	select ADK_TARGET_WITH_PCI
+	select ADK_TARGET_WITH_ACPI
+	select ADK_TARGET_WITH_SATA
+	help
+         System profile for Intel Atom.
+

+ 3 - 3
target/x86/sys-available/qemu-x86 → target/x86/sys-available/qemu-i686

@@ -1,7 +1,7 @@
-config ADK_TARGET_SYSTEM_QEMU_X86
+config ADK_TARGET_SYSTEM_QEMU_I686
 	bool "Qemu Emulator"
 	select ADK_x86
-	select ADK_qemu_x86
+	select ADK_qemu_i686
 	select ADK_CPU_I686
 	select ADK_HARDWARE_QEMU
 	select ADK_TARGET_WITH_VGA
@@ -9,5 +9,5 @@ config ADK_TARGET_SYSTEM_QEMU_X86
 	select ADK_TARGET_WITH_PCI
 	select ADK_TARGET_WITH_HDD
 	help
-	 Support for Qemu Emulator.
+	 Support for Qemu Emulator (i686).