Browse Source

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

Waldemar Brodkorb 9 years ago
parent
commit
e0ab584059
49 changed files with 284 additions and 222 deletions
  1. 1 1
      Config.in
  2. 5 0
      adk/config/Makefile
  3. 44 0
      mk/modules.mk
  4. 3 3
      mk/vars.mk
  5. 4 7
      package/alsa-lib/Makefile
  6. 2 2
      package/base-files/src/etc/init.d/fs
  7. 3 3
      package/base-files/src/etc/mdev/fs
  8. 3 4
      package/bcm2835-vc/Makefile
  9. 2 2
      package/curl/Makefile
  10. 3 3
      package/kodi/Makefile
  11. 5 5
      package/kodi/patches/patch-configure_in
  12. 5 5
      package/kodi/patches/patch-xbmc_Application_cpp
  13. 2 2
      package/libressl/Makefile
  14. 11 3
      package/openssh/Makefile
  15. 0 10
      package/openssh/patches/patch-channels_c
  16. 3 27
      package/openssh/patches/patch-cipher_c
  17. 13 0
      package/openssh/patches/patch-configure_ac
  18. 0 12
      package/openssh/patches/patch-digest-openssl_c
  19. 2 2
      package/openssl/Makefile
  20. 1 1
      package/pulseaudio/Makefile
  21. 33 14
      scripts/install.sh
  22. 5 3
      scripts/scan-tools.sh
  23. 3 0
      target/arm/Makefile
  24. 2 2
      target/arm/kernel/raspberry-pi
  25. 1 1
      target/collections/console
  26. 1 1
      target/collections/development
  27. 1 1
      target/collections/kodibox
  28. 1 1
      target/collections/mpd
  29. 1 1
      target/collections/mpdbox
  30. 1 1
      target/collections/test
  31. 1 1
      target/collections/xorg
  32. 1 1
      target/collections/ympd
  33. 16 11
      target/config/Config.in.arm.choice
  34. 0 15
      target/config/Config.in.arm.default
  35. 3 0
      target/config/Config.in.cpu
  36. 2 2
      target/config/Config.in.libc.choice
  37. 1 1
      target/config/Config.in.libc.default
  38. 12 4
      target/config/Config.in.qemu
  39. 4 3
      target/config/Config.in.target
  40. 3 2
      target/config/Config.in.toolchain
  41. 25 17
      target/linux/config/Config.in.audio
  42. 3 0
      target/linux/config/Config.in.dma
  43. 11 0
      target/linux/config/Config.in.gpio
  44. 1 0
      target/linux/config/Config.in.misc
  45. 25 0
      target/linux/config/Config.in.regmap
  46. 0 25
      target/linux/config/Config.in.regulator
  47. 3 3
      toolchain/binutils/Makefile.inc
  48. 11 19
      toolchain/gcc/Makefile
  49. 1 1
      toolchain/musl/Makefile.inc

+ 1 - 1
Config.in

@@ -18,8 +18,8 @@ source "target/config/Config.in.kernel"
 source "target/config/Config.in.arch"
 source "target/config/Config.in.system"
 source "target/config/Config.in.endian"
-source "target/config/Config.in.abi"
 source "target/config/Config.in.arm"
+source "target/config/Config.in.abi"
 source "target/config/Config.in.cris"
 source "target/config/Config.in.x86"
 source "target/config/Config.in.qemu"

+ 5 - 0
adk/config/Makefile

@@ -27,6 +27,10 @@ else
 ifeq (/usr/local/include/ncurses/curses.h, $(wildcard /usr/local/include/ncurses/curses.h))
 HOST_CFLAGS+=	-I/usr/local/include/ncurses -DCURSES_LOC="<ncurses/curses.h>"
 else
+ifeq (/usr/local/opt/ncurses/include/ncursesw/ncurses.h, $(wildcard /usr/local/opt/ncurses/include/ncursesw/ncurses.h))
+HOST_CFLAGS+=	-I/usr/local/opt/ncurses/include -DCURSES_LOC="<ncursesw/ncurses.h>"
+LIBS+=		-L/usr/local/opt/ncurses/lib -Wl,-rpath -Wl,/usr/local/opt/ncurses/lib
+else
 ifeq (/usr/pkg/include/ncurses.h, $(wildcard /usr/pkg/include/ncurses.h))
 HOST_CFLAGS+=	-I/usr/pkg/include -DCURSES_LOC="<ncurses.h>"
 LIBS+=		-L/usr/pkg/lib -Wl,-rpath -Wl,/usr/pkg/lib
@@ -42,6 +46,7 @@ endif
 endif
 endif
 endif
+endif
 
 CONF_SRC  =conf.c
 MCONF_SRC =mconf.c $(wildcard lxdialog/*.c)

+ 44 - 0
mk/modules.mk

@@ -1747,3 +1747,47 @@ $(eval $(call KMOD_template,DRM_DW_HDMI_CEC,drm-dw-hdmi-cec,\
 	$(MODULES_DIR)/kernel/drivers/cec/cec-dev \
 	$(MODULES_DIR)/kernel/drivers/staging/imx-drm/dw-hdmi-cec \
 ,75))
+
+#
+# Sound
+#
+$(eval $(call KMOD_template,SND_SOC_WM8804,snd-soc-wm8804,\
+       $(MODULES_DIR)/kernel/sound/soc/codecs/snd-soc-wm8804 \
+,55))
+
+$(eval $(call KMOD_template,SND_SOC_PCM5102A,snd-soc-pcm5102a,\
+       $(MODULES_DIR)/kernel/sound/soc/codecs/snd-soc-pcm5102a \
+,55))
+
+$(eval $(call KMOD_template,SND_SOC_PCM512x,snd-soc-pcm512x,\
+       $(MODULES_DIR)/kernel/sound/soc/codecs/snd-soc-pcm512x \
+,55))
+
+$(eval $(call KMOD_template,SND_SOC_PCM512x_I2C,snd-soc-pcm512x-i2c,\
+       $(MODULES_DIR)/kernel/sound/soc/codecs/snd-soc-pcm512x-i2c \
+,56))
+
+$(eval $(call KMOD_template,SND_SOC_PCM512x_SPI,snd-soc-pcm512x-spi,\
+       $(MODULES_DIR)/kernel/sound/soc/codecs/snd-soc-pcm512x-spi \
+,56))
+
+$(eval $(call KMOD_template,SND_BCM2708_SOC_I2S,snd-bcm2708-soc-i2s,\
+       $(MODULES_DIR)/kernel/sound/soc/bcm/snd-soc-bcm2708-i2s \
+,60, kmod-snd-soc))
+
+$(eval $(call KMOD_template,SND_BCM2708_SOC_HIFIBERRY_DAC,snd-bcm2708-soc-hifiberry-dac,\
+       $(MODULES_DIR)/kernel/sound/soc/bcm/snd-soc-hifiberry-dac \
+,65, kmod-snd-bcm2708-soc-i2s))
+
+$(eval $(call KMOD_template,SND_BCM2708_SOC_HIFIBERRY_DIGI,snd-bcm2708-soc-hifiberry-digi,\
+       $(MODULES_DIR)/kernel/sound/soc/bcm/snd-soc-hifiberry-digi \
+,65, kmod-snd-bcm2708-soc-i2s))
+
+$(eval $(call KMOD_template,SND_BCM2708_SOC_RPI_DAC,snd-bcm2708-soc-rpi-dac,\
+       $(MODULES_DIR)/kernel/sound/soc/bcm/snd-soc-rpi-dac \
+,65, kmod-snd-bcm2708-soc-i2s))
+
+$(eval $(call KMOD_template,SND_BCM2708_SOC_IQAUDIO_DAC,snd-bcm2708-soc-iqaudio-dac,\
+       $(MODULES_DIR)/kernel/sound/soc/bcm/snd-soc-iqaudio-dac \
+,65, kmod-snd-bcm2708-soc-i2s))
+

+ 3 - 3
mk/vars.mk

@@ -273,9 +273,9 @@ PKG_INSTALL:=		PATH='${HOST_PATH}' \
 			-force-defaults -force-depends install
 PKG_STATE_DIR:=		$(TARGET_DIR)/usr/lib/ipkg
 else
-PKG_BUILD:=		${BASH} ${SCRIPT_DIR}/tarpkg build
-PKG_INSTALL:=		PKG_INSTROOT=$(TARGET_DIR) \
-			${BASH} ${SCRIPT_DIR}/tarpkg install
+PKG_BUILD:=		PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/tarpkg build
+PKG_INSTALL:=		PKG_INSTROOT='$(TARGET_DIR)' \
+			PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/tarpkg install
 PKG_STATE_DIR:=		$(TARGET_DIR)/usr/lib/pkg
 endif
 

+ 4 - 7
package/alsa-lib/Makefile

@@ -5,7 +5,7 @@ include ${ADK_TOPDIR}/rules.mk
 
 PKG_NAME:=		alsa-lib
 PKG_VERSION:=		1.0.28
-PKG_RELEASE:=		5
+PKG_RELEASE:=		6
 PKG_MD5SUM:=		c9e21b88a2b3e6e12ea7ba0f3b271fc3
 PKG_DESCR:=		sound library
 PKG_SECTION:=		libs/audio
@@ -33,13 +33,10 @@ CONFIGURE_ARGS+=	--disable-python
 
 alsa-lib-install:
 	${INSTALL_DIR} ${IDIR_ALSA_LIB}/usr/lib 
-	${INSTALL_DIR} ${IDIR_ALSA_LIB}/usr/share/alsa/{cards,pcm}
+	${INSTALL_DIR} ${IDIR_ALSA_LIB}/usr/share/alsa
 	${CP} ${WRKINST}/usr/lib/libasound.so* ${IDIR_ALSA_LIB}/usr/lib
-	${CP} ${WRKINST}/usr/share/alsa/alsa.conf ${IDIR_ALSA_LIB}/usr/share/alsa
-	${CP} ${WRKINST}//usr/share/alsa/cards/aliases.conf \
-		${IDIR_ALSA_LIB}/usr/share/alsa/cards
-	${CP} ${WRKINST}//usr/share/alsa/pcm/*.conf \
-		${IDIR_ALSA_LIB}/usr/share/alsa/pcm
+	${CP} ${WRKINST}//usr/share/alsa/* \
+		${IDIR_ALSA_LIB}/usr/share/alsa
 
 include ${ADK_TOPDIR}/mk/host-bottom.mk
 include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 2 - 2
package/base-files/src/etc/init.d/fs

@@ -24,14 +24,14 @@ for fs in $fstypes; do
 	disks=$(grep -v "^#" /etc/fstab|grep $fs|awk '{ print $1 }')
 	for disk in $disks; do
 		logger -t 'Filesystem' "Found $disk with filesystem $fs"
-		mnt=$(grep -v "^#" /etc/fstab|grep "$disk "|awk '{ print $2 }')
+		mnt=$(grep -v "^#" /etc/fstab|grep "${disk}[[:blank:]]"|awk '{ print $2 }')
 		grep $fs /proc/filesystems >/dev/null 2>&1
 		if [ $? -eq 0 ];then
 			[ -x /usr/sbin/fsck.$fs ] && {
 				logger -t 'Filesystem' "checking $fs filesystem on $disk"
 				fsck -p $disk >/dev/null 2>&1
 			}
-			logger -t 'Filesystem' "Mounting local filesystems"
+			logger -t 'Filesystem' "Mounting $disk to $mnt"
 			mkdir -p $mnt > /dev/null 2>&1
 			mount $disk
 		else

+ 3 - 3
package/base-files/src/etc/mdev/fs

@@ -26,7 +26,7 @@ fi
 
 # check if already mounted via /etc/init.d/fs
 adk_check() {
-	mount | grep "${MDEV} "
+	mount | grep "${MDEV}[[:blank:]]"
 	if [ $? -eq 0 ];then
 		logger -t mdev "Filesystem on ${MDEV} already mounted"
 		exit 0
@@ -46,8 +46,8 @@ adk_mount() {
 	mkdir -p $mnt >/dev/null 2>&1
 	grep $procfs /proc/filesystems >/dev/null 2>&1
 	if [ $? -eq 0 ];then
-		logger -t mdev "Mounting local filesystems"
-		mount $mnt
+		logger -t mdev "Mounting $disk to $mnt"
+		mount $mnt 2>/dev/null
 		if [ $? -ne 0 ];then
 			logger -s -t 'Filesystem' "Mounting $disk failed"
 		fi

+ 3 - 4
package/bcm2835-vc/Makefile

@@ -4,11 +4,10 @@
 include ${ADK_TOPDIR}/rules.mk
 
 PKG_NAME:=		bcm2835-vc
-# actually git checkout from 21.09.2014
-# ffcc4bd7c4875b71376c4240116e251652c9bec0
-PKG_VERSION:=		0.8
+# actually git checkout from 10.10.2014
+PKG_VERSION:=		0.9
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		963b2dc026c5ee98cae093af56006b4c
+PKG_MD5SUM:=		4a3104d86b116a60921c04127a6ca3ac
 PKG_DESCR:=		videocore tools and libraries for raspberry pi
 PKG_SECTION:=		libs/video
 PKG_DEPENDS:=		libpthread

+ 2 - 2
package/curl/Makefile

@@ -4,9 +4,9 @@
 include ${ADK_TOPDIR}/rules.mk
 
 PKG_NAME:=		curl
-PKG_VERSION:=		7.37.1
+PKG_VERSION:=		7.38.0
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		a944b069ac70c3e574c25def6e1d6b2f
+PKG_MD5SUM:=		b6e3ea55bb718f2270489581efa50a8a
 PKG_DESCR:=		client-side url transfer tool
 PKG_SECTION:=		net/http
 PKG_DEPENDS:=		libcurl

+ 3 - 3
package/kodi/Makefile

@@ -5,8 +5,8 @@ include $(ADK_TOPDIR)/rules.mk
 
 PKG_NAME:=		kodi
 PKG_VERSION:=		14.0alpha4
-PKG_RELEASE:=		4
-PKG_MD5SUM:=		ac54bdac1f5c6dd2a2c75818391740a4
+PKG_RELEASE:=		5
+PKG_MD5SUM:=		88a68db6e653b2029efddbfa0a855e1c
 PKG_DESCR:=		software media player
 PKG_SECTION:=		mm/video
 PKG_DEPENDS:=		boost python2 libstdcxx glibc-gconv
@@ -107,7 +107,7 @@ CONFIGURE_ARGS+=	--disable-optical-drive \
 			--disable-mid \
 			--enable-alsa \
 			--enable-libvorbisenc \
-			--enable-debug \
+			--disable-debug \
 			--enable-udev \
 			--with-ffmpeg=shared
 

+ 5 - 5
package/kodi/patches/patch-configure_in

@@ -1,11 +1,11 @@
---- kodi-14.0alpha4.orig/configure.in	2014-09-05 14:09:58.000000000 +0200
-+++ kodi-14.0alpha4/configure.in	2014-09-21 10:23:38.000000000 +0200
-@@ -1004,7 +1004,7 @@ if test "$use_gles" = "yes"; then
+--- kodi-14.0alpha4.orig/configure.in	2014-10-06 11:34:24.000000000 -0500
++++ kodi-14.0alpha4/configure.in	2014-10-08 01:40:53.444436000 -0500
+@@ -1011,7 +1011,7 @@ if test "$use_gles" = "yes"; then
        AC_DEFINE([HAVE_LIBEGL],[1],["Define to 1 if you have the `EGL' library (-lEGL)."])
        AC_DEFINE([HAVE_LIBGLESV2],[1],["Define to 1 if you have the `GLESv2' library (-lGLESv2)."])
        AC_MSG_RESULT(== WARNING: OpenGLES support is assumed.)
--      LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm"
-+      LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm -lkhrn_static -lpthread -lm"
+-      LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm -lmmal -lmmal_core -lmmal_util"
++      LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm -lmmal -lmmal_core -lmmal_util -lkhrn_static -lpthread -lm"
      else
        AC_CHECK_LIB([EGL],   [main],, AC_MSG_ERROR($missing_library))
        AC_CHECK_LIB([GLESv2],[main],, AC_MSG_ERROR($missing_library))

+ 5 - 5
package/kodi/patches/patch-xbmc_Application_cpp

@@ -1,6 +1,6 @@
---- kodi-14.0alpha4.orig/xbmc/Application.cpp	2014-09-05 14:09:59.000000000 +0200
-+++ kodi-14.0alpha4/xbmc/Application.cpp	2014-09-05 15:48:59.475115902 +0200
-@@ -679,7 +679,7 @@ bool CApplication::Create()
+--- kodi-14.0alpha4.orig/xbmc/Application.cpp	2014-10-06 11:34:37.000000000 -0500
++++ kodi-14.0alpha4/xbmc/Application.cpp	2014-10-08 01:25:47.880436000 -0500
+@@ -642,7 +642,7 @@ bool CApplication::Create()
  
    if (!CLog::Init(CSpecialProtocol::TranslatePath(g_advancedSettings.m_logFolder).c_str()))
    {
@@ -9,7 +9,7 @@
        CSpecialProtocol::TranslatePath(g_advancedSettings.m_logFolder).c_str());
      return false;
    }
-@@ -1090,10 +1090,13 @@ bool CApplication::InitDirectoriesLinux(
+@@ -1064,10 +1064,13 @@ bool CApplication::InitDirectoriesLinux(
      userName = "root";
  
    CStdString userHome;
@@ -23,7 +23,7 @@
  
    CStdString xbmcBinPath, xbmcPath;
    CUtil::GetHomePath(xbmcBinPath, "XBMC_BIN_HOME");
-@@ -1125,11 +1128,11 @@ bool CApplication::InitDirectoriesLinux(
+@@ -1099,11 +1102,11 @@ bool CApplication::InitDirectoriesLinux(
      // map our special drives
      CSpecialProtocol::SetXBMCBinPath(xbmcBinPath);
      CSpecialProtocol::SetXBMCPath(xbmcPath);

+ 2 - 2
package/libressl/Makefile

@@ -4,9 +4,9 @@
 include $(ADK_TOPDIR)/rules.mk
 
 PKG_NAME:=		libressl
-PKG_VERSION:=		2.0.4
+PKG_VERSION:=		2.0.5
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		d30576bfd0e92dbb5b860e0e03281e5c
+PKG_MD5SUM:=		77b5385251e6edabc4cd74ffccc7e418
 PKG_DESCR:=		ssl library
 PKG_SECTION:=		libs/crypto
 PKG_URL:=		http://www.libressl.org

+ 11 - 3
package/openssh/Makefile

@@ -4,9 +4,9 @@
 include ${ADK_TOPDIR}/rules.mk
 
 PKG_NAME:=		openssh
-PKG_VERSION:=		6.6p1
-PKG_RELEASE:=		1
-PKG_MD5SUM:=		3e9800e6bca1fbac0eea4d41baa7f239
+PKG_VERSION:=		6.7p1
+PKG_RELEASE:=		2
+PKG_MD5SUM:=		3246aa79317b1d23cae783a3bf8275d6
 PKG_DESCR:=		secure shell implementation
 PKG_SECTION:=		net/security
 PKG_BUILDDEP:=		zlib openssl
@@ -45,6 +45,8 @@ $(eval $(call PKG_template,OPENSSH_CLIENT_UTILS,openssh-client-utils,${PKG_VERSI
 $(eval $(call PKG_template,OPENSSH_SFTP_CLIENT,openssh-sftp-client,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SFTP_CLIENT},${PKGSD_OPENSSH_SFTP_CLIENT},${PKG_SECTION}))
 $(eval $(call PKG_template,OPENSSH_SFTP_SERVER,openssh-sftp-server,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SFTP_SERVER},${PKGSD_OPENSSH_SFTP_SERVER},${PKG_SECTION}))
 
+AUTOTOOL_STYLE:=	autoreconf
+
 ifeq ($(ADK_PACKAGE_OPENSSH_WITH_KRB5),y)
 CONFIGURE_ARGS+=	--with-kerberos5="${STAGING_TARGET_DIR}/usr"
 endif
@@ -55,6 +57,12 @@ else
 CONFIGURE_ARGS+=	--without-stackprotect
 endif
 
+ifeq ($(ADK_TARGET_USE_PIE),y)
+CONFIGURE_ARGS+=	--with-pie
+else
+CONFIGURE_ARGS+=	--without-pie
+endif
+
 CONFIGURE_ENV+=		LD='${TARGET_CC}' \
 			ac_cv_func_setlogin=no \
 			ac_cv_have_decl_PR_SET_NO_NEW_PRIVS=no \

+ 0 - 10
package/openssh/patches/patch-channels_c

@@ -1,10 +0,0 @@
---- openssh-6.2p1.orig/channels.c	2012-12-02 23:50:55.000000000 +0100
-+++ openssh-6.2p1/channels.c	2013-08-20 18:00:56.929029538 +0200
-@@ -42,6 +42,7 @@
- #include "includes.h"
- 
- #include <sys/types.h>
-+#include <sys/param.h>
- #include <sys/ioctl.h>
- #include <sys/un.h>
- #include <sys/socket.h>

+ 3 - 27
package/openssh/patches/patch-cipher_c

@@ -1,19 +1,9 @@
-diff -Nur openssh-6.2p1.orig/cipher.c openssh-6.2p1/cipher.c
---- openssh-6.5p1.orig/cipher.c	2014-01-25 23:37:26.000000000 +0100
-+++ openssh-6.5p1/cipher.c	2014-02-11 15:26:16.000000000 +0100
-@@ -75,23 +75,33 @@ static const struct Cipher ciphers[] = {
- 	{ "none",	SSH_CIPHER_NONE, 8, 0, 0, 0, 0, 0, EVP_enc_null },
- 	{ "des",	SSH_CIPHER_DES, 8, 8, 0, 0, 0, 1, EVP_des_cbc },
- 	{ "3des",	SSH_CIPHER_3DES, 8, 16, 0, 0, 0, 1, evp_ssh1_3des },
-+#ifndef OPENSSL_NO_BF
- 	{ "blowfish",	SSH_CIPHER_BLOWFISH, 8, 32, 0, 0, 0, 1, evp_ssh1_bf },
-+#endif
- 
+--- openssh-6.7p1.orig/cipher.c	2014-07-20 18:24:59.000000000 +0200
++++ openssh-6.7p1/cipher.c	2014-10-11 21:51:33.000000000 +0200
+@@ -88,8 +88,10 @@ static const struct sshcipher ciphers[]
  	{ "3des-cbc",	SSH_CIPHER_SSH2, 8, 24, 0, 0, 0, 1, EVP_des_ede3_cbc },
-+#ifndef OPENSSL_NO_BF
  	{ "blowfish-cbc",
  			SSH_CIPHER_SSH2, 8, 16, 0, 0, 0, 1, EVP_bf_cbc },
-+#endif
 +#ifndef OPENSSL_NO_CAST
  	{ "cast128-cbc",
  			SSH_CIPHER_SSH2, 8, 16, 0, 0, 0, 1, EVP_cast5_cbc },
@@ -21,17 +11,3 @@ diff -Nur openssh-6.2p1.orig/cipher.c openssh-6.2p1/cipher.c
  	{ "arcfour",	SSH_CIPHER_SSH2, 8, 16, 0, 0, 0, 0, EVP_rc4 },
  	{ "arcfour128",	SSH_CIPHER_SSH2, 8, 16, 0, 0, 1536, 0, EVP_rc4 },
  	{ "arcfour256",	SSH_CIPHER_SSH2, 8, 32, 0, 0, 1536, 0, EVP_rc4 },
- 	{ "aes128-cbc",	SSH_CIPHER_SSH2, 16, 16, 0, 0, 0, 1, EVP_aes_128_cbc },
-+#ifndef OPENSSL_NO_AES192
- 	{ "aes192-cbc",	SSH_CIPHER_SSH2, 16, 24, 0, 0, 0, 1, EVP_aes_192_cbc },
-+#endif
- 	{ "aes256-cbc",	SSH_CIPHER_SSH2, 16, 32, 0, 0, 0, 1, EVP_aes_256_cbc },
- 	{ "rijndael-cbc@lysator.liu.se",
- 			SSH_CIPHER_SSH2, 16, 32, 0, 0, 0, 1, EVP_aes_256_cbc },
- 	{ "aes128-ctr",	SSH_CIPHER_SSH2, 16, 16, 0, 0, 0, 0, EVP_aes_128_ctr },
-+#ifndef OPENSSL_NO_AES192
- 	{ "aes192-ctr",	SSH_CIPHER_SSH2, 16, 24, 0, 0, 0, 0, EVP_aes_192_ctr },
-+#endif
- 	{ "aes256-ctr",	SSH_CIPHER_SSH2, 16, 32, 0, 0, 0, 0, EVP_aes_256_ctr },
- #ifdef OPENSSL_HAVE_EVPGCM
- 	{ "aes128-gcm@openssh.com",

+ 13 - 0
package/openssh/patches/patch-configure_ac

@@ -0,0 +1,13 @@
+--- openssh-6.7p1.orig/configure.ac	2014-08-26 22:32:01.000000000 +0200
++++ openssh-6.7p1/configure.ac	2014-10-11 21:42:45.000000000 +0200
+@@ -2526,8 +2526,8 @@ AC_CHECK_FUNCS([SHA256_Update EVP_sha256
+ # Search for RIPE-MD support in OpenSSL
+ AC_CHECK_FUNCS([EVP_ripemd160], ,
+     [unsupported_algorithms="$unsupported_algorithms \
+-	hmac-ripemd160
+-	hmac-ripemd160@openssh.com
++	hmac-ripemd160 \
++	hmac-ripemd160@openssh.com \
+ 	hmac-ripemd160-etm@openssh.com"
+      ]
+ )

+ 0 - 12
package/openssh/patches/patch-digest-openssl_c

@@ -1,12 +0,0 @@
---- openssh-6.6p1.orig/digest-openssl.c	2014-02-04 01:25:45.000000000 +0100
-+++ openssh-6.6p1/digest-openssl.c	2014-03-24 13:42:01.000000000 +0100
-@@ -44,7 +44,9 @@ struct ssh_digest {
- /* NB. Indexed directly by algorithm number */
- const struct ssh_digest digests[] = {
- 	{ SSH_DIGEST_MD5,	"MD5",	 	16,	EVP_md5 },
-+#ifndef OPENSSL_NO_RIPEMD
- 	{ SSH_DIGEST_RIPEMD160,	"RIPEMD160",	20,	EVP_ripemd160 },
-+#endif
- 	{ SSH_DIGEST_SHA1,	"SHA1",	 	20,	EVP_sha1 },
- #ifdef HAVE_EVP_SHA256 /* XXX replace with local if missing */
- 	{ SSH_DIGEST_SHA256,	"SHA256", 	32,	EVP_sha256 },

+ 2 - 2
package/openssl/Makefile

@@ -5,7 +5,7 @@ include ${ADK_TOPDIR}/rules.mk
 
 PKG_NAME:=		openssl
 PKG_VERSION:=		1.0.1i
-PKG_RELEASE:=		1
+PKG_RELEASE:=		2
 PKG_MD5SUM:=		c8dc151a671b9b92ff3e4c118b174972
 PKG_DESCR:=		secure socket layer libraries
 PKG_SECTION:=		libs/crypto
@@ -37,7 +37,7 @@ BUILD_STYLE:=		manual
 INSTALL_TARGET:=	install_sw
 FAKE_FLAGS+=		INSTALL_PREFIX=${WRKINST}
 
-OPENSSL_OPTIONS:= shared threads no-err no-krb5 zlib-dynamic no-engines no-camellia no-idea no-rc5 no-mdc2 no-sha0 no-smime no-aes192 no-ripemd no-cast
+OPENSSL_OPTIONS:= shared threads no-err no-krb5 zlib-dynamic no-engines no-camellia no-idea no-rc5 no-mdc2 no-sha0 no-smime no-aes192 no-cast
 
 ifneq ($(ADK_PACKAGE_LIBOPENSSL_WITH_CRYPTODEV),)
 OPENSSL_OPTIONS+= -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS

+ 1 - 1
package/pulseaudio/Makefile

@@ -18,7 +18,7 @@ PKG_URL:=		http://www.freedesktop.org/wiki/Software/PulseAudio/
 PKG_SITES:=		http://freedesktop.org/software/pulseaudio/releases/
 PKG_OPTS:=		dev
 
-PKG_LIBC_DEPENDS:=	uclibc glibc
+PKG_LIBC_DEPENDS:=	uclibc-ng uclibc glibc
 
 include $(ADK_TOPDIR)/mk/package.mk
 

+ 33 - 14
scripts/install.sh

@@ -61,18 +61,21 @@ quiet=0
 serial=0
 speed=115200
 panicreboot=10
+keep=0
 
 function usage {
 cat >&2 <<EOF
-Syntax: $me [-f filesystem] [-c cfgfssize] [-d datafssize] [-n]
+Syntax: $me [-f filesystem] [-c cfgfssize] [-d datafssize] [-k] [-n]
     [-p panictime] [±q] [-s serialspeed] [±t] <target> <device> <archive>
 Partition sizes are in MiB. Filesystem type is currently ignored (ext4).
+To keep filesystem on data partition use -k.
+Use -n to not format boot/root partition.
 Defaults: -c 1 -p 10 -s 115200; -t = enable serial console
 EOF
 	exit $1
 }
 
-while getopts "c:d:f:hnp:qs:t" ch; do
+while getopts "c:d:f:hknp:qs:t" ch; do
 	case $ch {
 	(c)	if (( (cfgfs = OPTARG) < 0 || cfgfs > 16 )); then
 			print -u2 "$me: -c $OPTARG out of bounds"
@@ -88,6 +91,7 @@ while getopts "c:d:f:hnp:qs:t" ch; do
 		fi
 		fs=$OPTARG ;;
 	(h)	usage 0 ;;
+	(k)	keep=1 ;;
 	(p)	if (( (panicreboot = OPTARG) < 0 || panicreboot > 300 )); then
 			print -u2 "$me: -p $OPTARG out of bounds"
 			exit 1
@@ -181,6 +185,8 @@ case $ostype {
 		fi
 		diskutil eraseVolume $fstype "$2" "$1"
 	}
+	function tune_fs {
+	}
 	;;
 (Linux)
 	basedev=$tgt
@@ -200,7 +206,10 @@ case $ostype {
 		umount "$1"
 	}
 	function create_fs {
+		(( quiet )) || print "Creating filesystem on ${1}..."
 		mkfs.$3 "$1"
+	}
+	function tune_fs {
 		tune2fs -c 0 -i 0 "$1"
 	}
 	;;
@@ -472,9 +481,11 @@ print -n '\0\0' | \
 partuuid=$(dd if="$T/firsttrack" bs=1 count=4 skip=$((0x1B8)) 2>/dev/null | \
     hexdump -e '1/4 "%08x"')-0$((syspartno+1))
 
-(( quiet )) || print Cleaning out partitions...
-(( datafssz )) && dd if=/dev/zero of="$tgt" bs=1048576 count=1 \
-    seek=$((cyls - cfgfs - datafssz)) > /dev/null 2>&1
+((keep)) || if (( datafssz )); then
+	(( quiet )) || print Cleaning out data partition...
+	dd if=/dev/zero of="$tgt" bs=1048576 count=1 seek=$((cyls - cfgfs - datafssz)) > /dev/null 2>&1
+fi
+(( quiet )) || print Cleaning out root partition...
 dd if=/dev/zero bs=1048576 of="$tgt" count=1 seek=$((spartofs / 2048)) > /dev/null 2>&1
 
 (( quiet )) || if (( grub )); then
@@ -491,26 +502,34 @@ case $target {
 	dd if="$fwdir/u-boot.img" of="$tgt" bs=1024 seek=42 > /dev/null 2>&1
 	;;
 (raspberry-pi)
-	(( quiet )) || print "Creating filesystem on ${bootpart}..."
 	(( noformat )) || create_fs "$bootpart" ADKBOOT vfat
 	;;
 }
 
-(( quiet )) || print "Creating filesystem on ${rootpart}..."
 (( noformat )) || create_fs "$rootpart" ADKROOT ext4
+(( noformat )) || tune_fs "$rootpart"
+
+(( quiet )) || print Extracting installation archive...
+mount_fs "$rootpart" "$R" ext4
+gzip -dc "$src" | (cd "$R"; tar -xpf -)
 
 if (( datafssz )); then
-	(( quiet )) || print "Creating filesystem on ${datapart}..."
-	(( noformat )) || create_fs "$datapart" ADKDATA ext4
+	mkdir -m0755 "$R"/data
+	((keep)) || create_fs "$datapart" ADKDATA ext4
+	((keep)) || tune_fs "$datapart"
 	mount_fs "$datapart" "$D" ext4
-	mkdir -m0755 "$D/mpd" "$D/xbmc"
+	mkdir -m0755 "$D/mpd" "$D/xbmc" 2>/dev/null
 	umount_fs "$D"
+	case $target {
+	(raspberry-pi)
+		echo "/dev/mmcblk0p3	/data	ext4	rw	0	0" >> "$R"/etc/fstab 
+	;;
+	(solidrun-imx6)
+		echo "/dev/mmcblk0p3	/data	ext4	rw	0	0" >> "$R"/etc/fstab
+	;;
+	}
 fi
 
-(( quiet )) || print Extracting installation archive...
-mount_fs "$rootpart" "$R" ext4
-gzip -dc "$src" | (cd "$R"; tar -xpf -)
-
 case $target {
 (raspberry-pi)
 	mount_fs "$bootpart" "$B" vfat

+ 5 - 3
scripts/scan-tools.sh

@@ -157,9 +157,11 @@ fi
 if [[ ! -s /usr/include/ncurses.h ]]; then
 	if [[ ! -s /usr/include/curses.h ]]; then
 		if [[ ! -s /usr/include/ncurses/ncurses.h ]]; then
-			echo Install ncurses header files, please.
-			echo
-			out=1
+			if [[ ! -s /usr/local/opt/ncurses/include/ncursesw/ncurses.h ]]; then
+				echo Install ncurses header files, please.
+				echo
+				out=1
+			fi
 		fi
 	fi
 fi

+ 3 - 0
target/arm/Makefile

@@ -28,6 +28,9 @@ endif
 ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9),y)
 QEMU_ARGS+=-M vexpress-a9 -cpu cortex-a9 -net user -net nic,model=lan9118
 endif
+ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_STELLARIS_M3),y)
+QEMU_ARGS+=-M lm3s6965evb -cpu cortex-m3
+endif
 ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y)
 QEMU_ARGS+=-drive file=qemu-${ADK_TARGET_CPU_ARCH}.img,if=virtio,index=0 -net nic,model=virtio -net user
 endif

+ 2 - 2
target/arm/kernel/raspberry-pi

@@ -3,12 +3,12 @@ CONFIG_FIQ=y
 CONFIG_ARM_PATCH_PHYS_VIRT=y
 CONFIG_KUSER_HELPERS=y
 CONFIG_ARCH_MULTI_V6=y
+CONFIG_VFP=y
 CONFIG_ARCH_BCM2708=y
+CONFIG_ARCH_BCM2835=y
 CONFIG_MACH_BCM2708=y
-CONFIG_BCM2708_GPIO=y
 CONFIG_BCM2708_VCMEM=y
 CONFIG_BCM2708_DMAER=y
-CONFIG_VFP=y
 CONFIG_BCM2708_VCHIQ=y
 CONFIG_SERIAL_AMBA_PL011=y
 CONFIG_SERIAL_AMBA_PL011_CONSOLE=y

+ 1 - 1
target/collections/console

@@ -1,5 +1,5 @@
 config ADK_PKG_CONSOLE
-	boolean "Choose packages for a desktop system without X"
+	boolean "desktop system without X"
 	default n
 	select ADK_PACKAGE_ALSA_UTILS
 	select ADK_PACKAGE_ALSA_UTILS_WITH_ALSAMIXER

+ 1 - 1
target/collections/development

@@ -1,5 +1,5 @@
 config ADK_PKG_DEVELOPMENT
-	bool "Compile a ADK development system"
+	bool "development system"
 	default n
 	select ADK_PACKAGE_BASH
 	select ADK_PACKAGE_BINUTILS

+ 1 - 1
target/collections/kodibox

@@ -1,5 +1,5 @@
 config ADK_PKG_KODIBOX
-	bool "Choose packages for KODIBox system"
+	bool "KODI (formely XBMC) multimedia system"
 	default n
 	select BUSYBOX_NTPD
 	select ADK_PACKAGE_GLIBC

+ 1 - 1
target/collections/mpd

@@ -1,5 +1,5 @@
 config ADK_PKG_MPD
-	bool "Choose packages for MPD system (basic)"
+	bool "MPD system (basic)"
 	default n
 	select BUSYBOX_NTPD
 	select ADK_PACKAGE_CIFS_UTILS

+ 1 - 1
target/collections/mpdbox

@@ -1,5 +1,5 @@
 config ADK_PKG_MPDBOX
-	bool "Choose packages for MPD system with WebGUI"
+	bool "MPD system with WebGUI"
 	default n
 	select ADK_PKG_MPD
 	select ADK_PACKAGE_MPDBOX

+ 1 - 1
target/collections/test

@@ -1,5 +1,5 @@
 config ADK_PKG_TEST
-	bool "Compile a ADK test framework system"
+	bool "test framework system"
 	select ADK_PACKAGE_ADKTEST
 	select ADK_PACKAGE_RDATE
 	select ADK_RUNTIME_START_SERVICES

+ 1 - 1
target/collections/xorg

@@ -1,5 +1,5 @@
 config ADK_PKG_XORG
-	bool "Choose packages for graphical desktop system with Xorg"
+	bool "graphical desktop system with Xorg"
 	default n
 	select ADK_PKG_CONSOLE
 	select ADK_PACKAGE_RXVT_UNICODE

+ 1 - 1
target/collections/ympd

@@ -1,5 +1,5 @@
 config ADK_PKG_YMPD
-	bool "Choose packages for MPD system with Ympd"
+	bool "MPD system with Ympd"
 	default n
 	select ADK_PKG_MPD
 	select ADK_PACKAGE_YMPD

+ 16 - 11
target/config/Config.in.arm.choice

@@ -2,21 +2,26 @@
 # material, please see the LICENCE file in the top-level directory.
 
 choice ADK_TARGET_ARM_CPU_ARCH
-prompt "CPU architecture"
+prompt "CPU architecture and family"
 depends on ADK_TARGET_TOOLCHAIN && ADK_LINUX_ARM
-default ADK_CPU_ARMV7A
 
-config ADK_CPU_ARMV5TE
-        boolean "armv5te"
-        select ADK_armv5te
+config ADK_CPU_ARMV7A_CORTEX_A9
+        boolean "cortex-a9 (armv7-a)"
+        select ADK_CPU_CORTEX_A9
 
-config ADK_CPU_ARMV6
-        boolean "armv6"
-        select ADK_armv6
+config ADK_CPU_ARMV7M_CORTEX_M3
+        boolean "cortex-m3 (armv7-m)"
+        select ADK_CPU_CORTEX_M3
+	select ADK_LINUX_ARM_WITH_THUMB
+	select ADK_TARGET_UCLINUX
 
-config ADK_CPU_ARMV7A
-        boolean "armv7-a"
-        select ADK_armv7a
+config ADK_CPU_ARMV6_ARM1176JZF_S
+        boolean "arm1176jzf-s (armv6)"
+        select ADK_CPU_ARM1176JZF_S
+
+config ADK_CPU_ARMV5TE_ARM926EJ_S
+        boolean "arm926ej-s (armv5te)"
+        select ADK_CPU_ARM926EJ_S
 
 endchoice
 

+ 0 - 15
target/config/Config.in.arm.default

@@ -1,21 +1,6 @@
 # This file is part of the OpenADK project. OpenADK is copyrighted
 # material, please see the LICENCE file in the top-level directory.
 
-config ADK_armv5te
-	boolean
-
-config ADK_armv6
-	boolean
-
-config ADK_armv7a
-	boolean
-
-config ADK_TARGET_ARM_CPU
-	string
-	default "armv5te" if ADK_armv5te
-	default "armv6" if ADK_armv6
-	default "armv7-a" if ADK_armv7a
-
 config ADK_soft_float
 	boolean
 

+ 3 - 0
target/config/Config.in.cpu

@@ -113,6 +113,9 @@ config ADK_CPU_ARM926EJ_S
 config ADK_CPU_ARM1176JZF_S
 	boolean
 
+config ADK_CPU_CORTEX_M3
+	boolean
+
 config ADK_CPU_CORTEX_A9
 	boolean
 

+ 2 - 2
target/config/Config.in.libc.choice

@@ -104,8 +104,8 @@ config ADK_TARGET_LIB_UCLIBC_0_9_33_2
 	boolean
 	depends on ADK_TARGET_LIB_UCLIBC
 
-config ADK_TARGET_LIB_MUSL_1_1_4
-	prompt "1.1.4"
+config ADK_TARGET_LIB_MUSL_1_1_5
+	prompt "1.1.5"
 	boolean
 	depends on ADK_TARGET_LIB_MUSL
 

+ 1 - 1
target/config/Config.in.libc.default

@@ -22,7 +22,7 @@ config ADK_TARGET_LIBC
 
 config ADK_LIBC_VERSION
 	string
-	default "1.1.4" if ADK_TARGET_LIB_MUSL_1_1_4
+	default "1.1.5" if ADK_TARGET_LIB_MUSL_1_1_5
 	default "0.9.33.2" if ADK_TARGET_LIB_UCLIBC_0_9_33_2
 	default "2.20" if ADK_TARGET_LIB_GLIBC_2_20
 	default "git" if ADK_TARGET_LIB_UCLIBC_NG_GIT || \

+ 12 - 4
target/config/Config.in.qemu

@@ -32,15 +32,15 @@ choice
 prompt "Qemu XTENSA Emulation"
 depends on ADK_TARGET_SYSTEM_QEMU_XTENSA
 
-config ADK_TARGET_QEMU_XTENSA_DC232B
-	boolean "dc232b"
-	select ADK_KERNEL_XTENSA_VARIANT_DC232B
-
 config ADK_TARGET_QEMU_XTENSA_DC233C
 	boolean "dc233c"
 	select ADK_KERNEL_XTENSA_VARIANT_DC233C
 	select ADK_KERNEL_INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX
 
+config ADK_TARGET_QEMU_XTENSA_DC232B
+	boolean "dc232b"
+	select ADK_KERNEL_XTENSA_VARIANT_DC232B
+
 endchoice
 
 config ADK_TARGET_XTENSA
@@ -56,6 +56,14 @@ config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
 	boolean "ARM Ltd. Versatile Express for Cortex-A9"
 	select ADK_CPU_CORTEX_A9
 
+config ADK_TARGET_QEMU_ARM_MODEL_STELLARIS_M3
+	boolean "Stellaris LM3S6965EVB"
+	select ADK_soft_float
+	select ADK_eabi
+	select ADK_CPU_CORTEX_M3
+	select ADK_LINUX_ARM_WITH_THUMB
+	depends on ADK_TARGET_ARM_SOFT_FLOAT
+
 config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	boolean "ARM Ltd. Versatile/PB"
 	select ADK_soft_float

+ 4 - 3
target/config/Config.in.target

@@ -22,7 +22,7 @@ config ADK_TARGET_CFLAGS
 	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=ultrasparc" if ADK_CPU_SPARC_V9
+	default "-mcpu=ultrasparc -m64" if ADK_CPU_SPARC_V9
 	default "-march=loongson2f -Wa,-mfix-loongson2f-nop" if ADK_CPU_LOONGSON2F
 	default "-march=mips32" if ADK_CPU_MIPS32
 	default "-march=mips64" if ADK_CPU_MIPS64
@@ -32,8 +32,9 @@ config ADK_TARGET_CFLAGS
 	default "-march=armv5te -mtune=arm926ej-s -mfloat-abi=hard" if ADK_CPU_ARM926EJ_S && ADK_hard_float
 	default "-march=armv6 -mtune=arm1176jzf-s -mfloat-abi=soft" if ADK_CPU_ARM1176JZF_S && ADK_soft_float
 	default "-march=armv6 -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard" if ADK_CPU_ARM1176JZF_S && ADK_hard_float
-	default "-march=armv7-a -mtune=cortex-a9 -mfloat-abi=soft" if ADK_CPU_CORTEX_A9 && ADK_soft_float
-	default "-march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard" if ADK_CPU_CORTEX_A9 && ADK_hard_float
+	default "-mcpu=cortex-m3 -mfloat-abi=soft" if ADK_CPU_CORTEX_M3 && ADK_soft_float
+	default "-mcpu=cortex-a9 -mfloat-abi=soft" if ADK_CPU_CORTEX_A9 && ADK_soft_float
+	default "-mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard" if ADK_CPU_CORTEX_A9 && ADK_hard_float
 	default "-march=armv5te" if ADK_CPU_ARMV5TE
 	default "-march=armv6" if ADK_CPU_ARMV6
 	default "-march=armv7-a" if ADK_CPU_ARMV7A

+ 3 - 2
target/config/Config.in.toolchain

@@ -130,11 +130,12 @@ config ADK_TARGET_CFLAGS_OPT_O0
 endchoice
 
 config ADK_LINUX_ARM_WITH_THUMB
-	prompt "Use THUMB2 ARM mode"
+	prompt "Use THUMB2 only mode"
 	boolean
-	depends on ADK_CPU_CORTEX_A9 && ADK_TARGET_LIB_GLIBC
 	select ADK_KERNEL_THUMB2_KERNEL
 	default n
+	help
+	  Experimental option. Use with care.
 
 config ADK_TOOLCHAIN_WITH_SSP
 	boolean

+ 25 - 17
target/linux/config/Config.in.audio

@@ -74,15 +74,25 @@ config ADK_KERNEL_SND_SOC_I2C_AND_SPI
 	boolean
 
 config ADK_KERNEL_SND_SOC_WM8804
-	boolean
+	tristate
 	select ADK_KERNEL_SND_SOC_I2C_AND_SPI
 
 config ADK_KERNEL_SND_SOC_PCM5102A
-	boolean
+	tristate
+	select ADK_KERNEL_SND_SOC_I2C_AND_SPI
+
+config ADK_KERNEL_SND_SOC_PCM512x
+	tristate
 	select ADK_KERNEL_SND_SOC_I2C_AND_SPI
 
 config ADK_KERNEL_SND_SOC_PCM512x_I2C
-	boolean
+	tristate
+	select ADK_KERNEL_SND_SOC_PCM512x
+	select ADK_KERNEL_SND_SOC_I2C_AND_SPI
+
+config ADK_KERNEL_SND_SOC_PCM512x_SPI
+	tristate
+	select ADK_KERNEL_SND_SOC_PCM512x
 	select ADK_KERNEL_SND_SOC_I2C_AND_SPI
 
 config ADK_KERNEL_SND_PCM_DMAENGINE
@@ -161,11 +171,13 @@ config ADK_KERNEL_SND_BCM2835
 	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 
-config ADK_KERNEL_SND_BCM2835_SOC_I2S
-	boolean
+config ADK_KERNEL_SND_BCM2708_SOC_I2S
+	tristate
 	select ADK_KERNEL_SND
 	select ADK_KERNEL_SND_ARM
 	select ADK_KERNEL_SND_SOC
+	select ADK_KERNEL_SND_BCM2835
+	select ADK_KERNEL_DMA_BCM2835
 	select ADK_KERNEL_SND_DMAENGINE_PCM
 	select ADK_KERNEL_SND_SOC_GENERIC_DMAENGINE_PCM
 	select ADK_KERNEL_REGMAP_MMIO
@@ -174,35 +186,31 @@ config ADK_KERNEL_SND_BCM2835_SOC_I2S
 
 config ADK_KERNEL_SND_BCM2708_SOC_HIFIBERRY_DAC
 	prompt "Raspberry PI hifiberry DAC"
-	boolean
-	select ADK_KERNEL_DMA_BCM2708
-	select ADK_KERNEL_SND_BCM2835_SOC_I2S
+	tristate
+	select ADK_KERNEL_SND_BCM2708_SOC_I2S
 	select ADK_KERNEL_SND_SOC_PCM5102A
 	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 
 config ADK_KERNEL_SND_BCM2708_SOC_HIFIBERRY_DIGI
 	prompt "Raspberry PI hifiberry DIGI"
-	boolean
-	select ADK_KERNEL_DMA_BCM2708
-	select ADK_KERNEL_SND_BCM2835_SOC_I2S
+	tristate
+	select ADK_KERNEL_SND_BCM2708_SOC_I2S
 	select ADK_KERNEL_SND_SOC_WM8804
 	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 
 config ADK_KERNEL_SND_BCM2708_SOC_RPI_DAC
 	prompt "Raspberry PI RPI-DAC"
-	boolean
-	select ADK_KERNEL_DMA_BCM2708
-	select ADK_KERNEL_SND_BCM2835_SOC_I2S
+	tristate
+	select ADK_KERNEL_SND_BCM2708_SOC_I2S
 	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 
 config ADK_KERNEL_SND_BCM2708_SOC_IQAUDIO_DAC
 	prompt "Raspberry PI IQAudio-DAC"
-	boolean
-	select ADK_KERNEL_DMA_BCM2708
-	select ADK_KERNEL_SND_BCM2835_SOC_I2S
+	tristate
+	select ADK_KERNEL_SND_BCM2708_SOC_I2S
 	select ADK_KERNEL_SND_SOC_PCM512x_I2C
 	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n

+ 3 - 0
target/linux/config/Config.in.dma

@@ -4,6 +4,9 @@ config ADK_KERNEL_DMADEVICES
 config ADK_KERNEL_DMA_BCM2708
         boolean
         select ADK_KERNEL_DMADEVICES
+	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default n
 
 config ADK_KERNEL_IMX_SDMA
 	boolean

+ 11 - 0
target/linux/config/Config.in.gpio

@@ -13,6 +13,16 @@ config ADK_KERNEL_GPIO_SYSFS
 config ADK_KERNEL_GPIO_GENERIC
 	boolean
 
+config ADK_KERNEL_BCM2708_GPIO
+	boolean
+	select ADK_KERNEL_GPIOLIB
+	select ADK_KERNEL_GPIO_SYSFS
+	select ADK_KERNEL_GPIO_GENERIC
+	select ADK_KERNEL_RESET_CONTROLLER
+	depends on ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default n
+
 config ADK_KERNEL_GPIO_MXC
 	boolean
 	select ADK_KERNEL_GPIOLIB
@@ -20,5 +30,6 @@ config ADK_KERNEL_GPIO_MXC
 	select ADK_KERNEL_GPIO_GENERIC
 	select ADK_KERNEL_RESET_CONTROLLER
 	select ADK_KERNEL_RESET_GPIO
+	depends on ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
 	default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
 	default n

+ 1 - 0
target/linux/config/Config.in.misc

@@ -31,6 +31,7 @@ source "target/linux/config/Config.in.leds"
 source "target/linux/config/Config.in.watchdog"
 source "target/linux/config/Config.in.i2c"
 source "target/linux/config/Config.in.spi"
+source "target/linux/config/Config.in.regmap"
 source "target/linux/config/Config.in.regulator"
 source "target/linux/config/Config.in.gpio"
 source "target/linux/config/Config.in.dma"

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

@@ -0,0 +1,25 @@
+config ADK_KERNEL_REGMAP
+	boolean
+	select ADK_KERNEL_LZO_COMPRESS
+	select ADK_KERNEL_LZO_DECOMPRESS
+	default n
+
+config ADK_KERNEL_REGMAP_I2C
+	boolean
+	select ADK_KERNEL_REGMAP
+	default n
+
+config ADK_KERNEL_REGMAP_SPI
+	boolean
+	select ADK_KERNEL_REGMAP
+	default n
+
+config ADK_KERNEL_REGMAP_MMIO
+	boolean
+	select ADK_KERNEL_REGMAP
+	default n
+
+config ADK_KERNEL_REGMAP_IRQ
+	boolean
+	select ADK_KERNEL_REGMAP
+	default n

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

@@ -37,28 +37,3 @@ config ADK_KERNEL_REGULATOR_PFUZE100
 	select ADK_KERNEL_REGULATOR
 	default n
 
-config ADK_KERNEL_REGMAP
-	boolean
-	select ADK_KERNEL_LZO_COMPRESS
-	select ADK_KERNEL_LZO_DECOMPRESS
-	default n
-
-config ADK_KERNEL_REGMAP_I2C
-	boolean
-	select ADK_KERNEL_REGMAP
-	default n
-
-config ADK_KERNEL_REGMAP_SPI
-	boolean
-	select ADK_KERNEL_REGMAP
-	default n
-
-config ADK_KERNEL_REGMAP_MMIO
-	boolean
-	select ADK_KERNEL_REGMAP
-	default n
-
-config ADK_KERNEL_REGMAP_IRQ
-	boolean
-	select ADK_KERNEL_REGMAP
-	default n

+ 3 - 3
toolchain/binutils/Makefile.inc

@@ -14,21 +14,21 @@ ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_23_ARC),y)
 # https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/tree/arc-2.23-tls
 PKG_VERSION:=		2.23
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		a5dd5dd2d212a282cc1d4a84633e0d88
+PKG_MD5SUM:=		d93bc027e259b00e91810d563575b54f
 PKG_SITES:=		http://www.openadk.org/distfiles/
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}-arc.tar.xz
 endif
 ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_22),y)
 PKG_VERSION:=		2.22
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		a5dd5dd2d212a282cc1d4a84633e0d88
+PKG_MD5SUM:=		8b3ad7090e3989810943aa19103fdb83
 PKG_SITES:=		${MASTER_SITE_GNU:=binutils/}
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
 endif
 ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_20_1),y)
 PKG_VERSION:=		2.20.1
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		a5dd5dd2d212a282cc1d4a84633e0d88
+PKG_MD5SUM:=		eccf0f9bc62864b29329e3302c88a228
 PKG_SITES:=		${MASTER_SITE_GNU:=binutils/}
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
 endif

+ 11 - 19
toolchain/gcc/Makefile

@@ -126,28 +126,20 @@ GCC_CONFOPTS+=		--with-fpu=$(ADK_TARGET_FPU)
 endif
 endif
 
-ifeq ($(ADK_CPU_ARMV5TE),y)
-GCC_CONFOPTS+=		--with-arch=armv5te
-endif
-
-ifeq ($(ADK_CPU_ARMV6),y)
-GCC_CONFOPTS+=		--with-arch=armv6
-endif
-
-ifeq ($(ADK_CPU_ARMV7A),y)
-GCC_CONFOPTS+=		--with-arch=armv7-a
-endif
-
 ifeq ($(ADK_CPU_ARM926EJ_S),y)
-GCC_CONFOPTS+=		--with-arch=armv5te --with-tune=arm926ej-s
+GCC_CONFOPTS+=		--with-cpu=arm926ej-s
 endif
 
 ifeq ($(ADK_CPU_ARM1176JZF_S),y)
-GCC_CONFOPTS+=		--with-arch=armv6 --with-tune=arm1176jzf-s
+GCC_CONFOPTS+=		--with-cpu=arm1176jzf-s
+endif
+
+ifeq ($(ADK_CPU_CORTEX_M3),y)
+GCC_CONFOPTS+=		--with-cpu=cortex-m3 --with-mode=thumb
 endif
 
 ifeq ($(ADK_CPU_CORTEX_A9),y)
-GCC_CONFOPTS+=		--with-arch=armv7-a --with-tune=cortex-a9
+GCC_CONFOPTS+=		--with-cpu=cortex-a9
 endif
 
 ifeq ($(ADK_CPU_SPARC_V9),y)
@@ -202,8 +194,8 @@ endif
 	$(SED) '/k prot/agcc_cv_libc_provides_ssp=yes' $(WRKBUILD)/gcc/configure
 	cd $(GCC_BUILD_DIR_MINIMAL); \
 		PATH='$(TARGET_PATH)' \
-		CFLAGS="-O0 -g0" \
-		CXXFLAGS="-O0 -g0" \
+		CFLAGS="-O0 -g0 -fomit-frame-pointer" \
+		CXXFLAGS="-O0 -g0 -fomit-frame-pointer" \
 		$(WRKBUILD)/configure \
 			${GCC_CONFOPTS} \
 			--enable-languages=c \
@@ -224,8 +216,8 @@ $(GCC_BUILD_DIR_INITIAL)/.configured:
 	mkdir -p $(GCC_BUILD_DIR_INITIAL)
 	cd $(GCC_BUILD_DIR_INITIAL); \
 		PATH='$(TARGET_PATH)' \
-		CFLAGS="-O0 -g0" \
-		CXXFLAGS="-O0 -g0" \
+		CFLAGS="-O0 -g0 -fomit-frame-pointer" \
+		CXXFLAGS="-O0 -g0 -fomit-frame-pointer" \
 		$(WRKBUILD)/configure \
 			${GCC_CONFOPTS} \
 			${GCC_FINAL_CONFOPTS} \

+ 1 - 1
toolchain/musl/Makefile.inc

@@ -10,5 +10,5 @@ PKG_VERSION:=		$(ADK_LIBC_VERSION)
 PKG_SITES:=		http://www.musl-libc.org/releases/
 endif
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		f18f3bdbe088438cd64a5313c19a7312
+PKG_MD5SUM:=		94f8aa9dab80229fed68991bb9984cc5
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz