summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/btscanner/btscanner_2.0.bb2
-rw-r--r--packages/cups/cups_1.2.10.bb76
-rw-r--r--packages/gcc/gcc-cross-sdk_4.1.2.bb42
-rw-r--r--packages/gcc/gcc-cross_4.1.1.bb2
-rw-r--r--packages/gcc/gcc-cross_4.1.2.bb2
-rw-r--r--packages/gcc/gcc-package-sdk.inc2
-rw-r--r--packages/gcc/gcc_4.1.1.bb3
-rw-r--r--packages/gcc/gcc_4.1.2.bb3
-rw-r--r--packages/glib-2.0/glib-2.0-2.12.11/.mtn2git_empty (renamed from packages/linux/linux-smdk2440-2.6.19/.mtn2git_empty)0
-rw-r--r--packages/glib-2.0/glib-2.0-2.12.11/configure-libtool.patch20
-rw-r--r--packages/glib-2.0/glib-2.0_2.12.11.bb6
-rw-r--r--packages/gtk-webcore/osb-jscore_svn.bb2
-rw-r--r--packages/images/opie-image.bb5
-rwxr-xr-xpackages/irda-utils/files/init55
-rw-r--r--packages/irda-utils/irda-utils_0.9.16.bb4
-rw-r--r--packages/libwpd/libwpd_0.8.4.bb2
-rw-r--r--packages/libwpd/libwpd_0.8.6.bb2
-rw-r--r--packages/linux/linux-smdk2440-2.6.19/smdk2440-touchscreen-r2.patch532
-rw-r--r--packages/linux/linux-smdk2440-2.6.20+git/.mtn2git_empty0
-rw-r--r--packages/linux/linux-smdk2440-2.6.20+git/0001-Enable-cs8900A-network-device-for-smdk2440-board.patch92
-rw-r--r--packages/linux/linux-smdk2440/defconfig-smdk2440203
-rw-r--r--packages/linux/linux-smdk2440/smdk2440-touchscreen-r3.patch529
-rw-r--r--packages/linux/linux-smdk2440_2.6.20+git.bb (renamed from packages/linux/linux-smdk2440_2.6.19.bb)11
-rw-r--r--packages/meta/meta-sdk-sbox.bb7
-rw-r--r--packages/meta/meta-sdk.bb17
-rw-r--r--packages/meta/slugos-packages.bb6
-rw-r--r--packages/mplayer/files/mplayer-imageon-svn.patch366
-rw-r--r--packages/tasks/task-sdk-extra.bb57
-rw-r--r--packages/tasks/task-sdk-sbox.bb14
-rw-r--r--packages/tasks/task-sdk.bb94
-rw-r--r--packages/tzcode/tzcode-native_2007e.bb (renamed from packages/tzcode/tzcode-native_2007d.bb)0
-rw-r--r--packages/tzdata/tzdata_2007e.bb (renamed from packages/tzdata/tzdata_2007d.bb)0
-rw-r--r--packages/xorg-xserver/xserver-kdrive-common.inc3
-rw-r--r--packages/xorg-xserver/xserver-kdrive/w100-fix-offscreen-bmp.patch15
-rw-r--r--packages/xorg-xserver/xserver-kdrive_1.2.0.bb3
-rw-r--r--packages/xserver-common/xserver-common_1.16.bb18
36 files changed, 889 insertions, 1306 deletions
diff --git a/packages/btscanner/btscanner_2.0.bb b/packages/btscanner/btscanner_2.0.bb
index ac991ef078..1e75824c0e 100644
--- a/packages/btscanner/btscanner_2.0.bb
+++ b/packages/btscanner/btscanner_2.0.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "Extract information from Bluetooth devices in range."
SECTION = "libs"
PRIORITY = "optional"
HOMEPAGE = "http://www.pentest.co.uk/cgi-bin/viewcat.cgi?cat=downloads&section=01_bluetooth"
-DEPENDS = "bluez-libs gdbm ncurses"
+DEPENDS = "bluez-libs gdbm ncurses libxml2"
PR = "r0"
LICENSE = "GPLv2"
diff --git a/packages/cups/cups_1.2.10.bb b/packages/cups/cups_1.2.10.bb
new file mode 100644
index 0000000000..8201dd9201
--- /dev/null
+++ b/packages/cups/cups_1.2.10.bb
@@ -0,0 +1,76 @@
+DESCRIPTION = "An Internet printing system for Unix."
+SECTION = "console/utils"
+LICENSE = "GPL LGPL"
+DEPENDS = "gnutls jpeg dbus dbus-glib libpng zlib install-native fakeroot-native"
+PR = "r0"
+
+SRC_URI = "ftp://ftp3.easysw.com/pub/cups/${PV}/cups-${PV}-source.tar.bz2 \
+ "
+
+inherit autotools binconfig
+
+LDFLAGS += " -L${STAGING_LIBDIR} "
+
+EXTRA_OECONF = " \
+ --enable-gnutls \
+ --enable-dbus \
+ --enable-browsing \
+ --disable-openssl \
+ --disable-tiff \
+ --without-php \
+ --without-perl \
+ --without-python \
+ --without-java \
+ "
+
+
+do_configure() {
+ gnu-configize
+ libtoolize --force
+ oe_runconf
+}
+
+do_compile () {
+ sed -i s:STRIP:NOSTRIP: Makedefs
+ sed -i s:serial:: backend/Makefile
+
+ echo "all:" > man/Makefile
+ echo "install:" >> man/Makefile
+
+ oe_runmake "SSLLIBS=-lgnutls -L${STAGING_LIBDIR}" \
+ "LIBPNG=-lpng -lm -L${STAGING_LIBDIR}" \
+ "LIBJPEG=-ljpeg -L${STAGING_LIBDIR}" \
+ "LIBZ=-lz -L${STAGING_LIBDIR}" \
+ "-I."
+}
+
+fakeroot do_install () {
+ oe_runmake "DSTROOT=${D}" install
+}
+
+do_stage () {
+ install -d ${STAGING_INCDIR}/cups
+ install ${S}/cups/*.h ${STAGING_INCDIR}/cups/
+ install ${S}/filter/*.h ${STAGING_INCDIR}/cups/
+ oe_libinstall -C cups -so libcups ${STAGING_LIBDIR}
+ oe_libinstall -C filter -so libcupsimage ${STAGING_LIBDIR}
+}
+
+FILES_${PN}-dbg += "${libdir}/cups/backend/.debug \
+ ${libdir}/cups/cgi-bin/.debug \
+ ${libdir}/cups/filter/.debug \
+ ${libdir}/cups/monitor/.debug \
+ ${libdir}/cups/notifier/.debug \
+ ${libdir}/cups/daemon/.debug \
+ "
+#package the html for the webgui inside the main packages (~1MB uncompressed)
+
+FILES_${PN} += "${datadir}/doc/cups/images \
+ ${datadir}/doc/cups/*html \
+ ${datadir}/doc/cups/*.css \
+ ${datadir}/icons/ \
+ "
+
+
+
+
diff --git a/packages/gcc/gcc-cross-sdk_4.1.2.bb b/packages/gcc/gcc-cross-sdk_4.1.2.bb
new file mode 100644
index 0000000000..f3968f512d
--- /dev/null
+++ b/packages/gcc/gcc-cross-sdk_4.1.2.bb
@@ -0,0 +1,42 @@
+DESCRIPTION = "The GNU cc and gcc C compilers."
+HOMEPAGE = "http://www.gnu.org/software/gcc/"
+SECTION = "devel"
+LICENSE = "GPL"
+PR = "r0"
+
+inherit sdk
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}"
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
+PACKAGES = "${PN}"
+
+require gcc_${PV}.bb
+require gcc4-build-sdk.inc
+require gcc-package-sdk.inc
+
+SRC_URI = "ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.1.2/gcc-4.1.2.tar.bz2 \
+ file://100-uclibc-conf.patch;patch=1 \
+ file://110-arm-eabi.patch;patch=1 \
+ file://200-uclibc-locale.patch;patch=1 \
+ file://300-libstdc++-pic.patch;patch=1 \
+ file://301-missing-execinfo_h.patch;patch=1 \
+ file://302-c99-snprintf.patch;patch=1 \
+ file://303-c99-complex-ugly-hack.patch;patch=1 \
+ file://304-index_macro.patch;patch=1 \
+ file://602-sdk-libstdc++-includes.patch;patch=1 \
+ file://740-sh-pr24836.patch;patch=1 \
+ file://800-arm-bigendian.patch;patch=1 \
+ file://801-arm-bigendian-eabi.patch;patch=1 \
+ file://arm-nolibfloat.patch;patch=1 \
+ file://arm-softfloat.patch;patch=1 \
+ file://gcc41-configure.in.patch;patch=1 \
+ file://arm-thumb.patch;patch=1 \
+ file://arm-thumb-cache.patch;patch=1 \
+ file://ldflags.patch;patch=1 \
+ file://unbreak-armv4t.patch;patch=1 \
+ file://fix-ICE-in-arm_unwind_emit_set.diff;patch=1 \
+ "
+
+SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
+
diff --git a/packages/gcc/gcc-cross_4.1.1.bb b/packages/gcc/gcc-cross_4.1.1.bb
index 67dbc83940..04b34919ec 100644
--- a/packages/gcc/gcc-cross_4.1.1.bb
+++ b/packages/gcc/gcc-cross_4.1.1.bb
@@ -15,4 +15,6 @@ require gcc3-build-cross.inc
# cross packaging
require gcc-package-cross.inc
+SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 "
+
EXTRA_OECONF += "--with-mpfr=${STAGING_DIR}/${BUILD_SYS}"
diff --git a/packages/gcc/gcc-cross_4.1.2.bb b/packages/gcc/gcc-cross_4.1.2.bb
index bb1114cf3b..dab2f332a2 100644
--- a/packages/gcc/gcc-cross_4.1.2.bb
+++ b/packages/gcc/gcc-cross_4.1.2.bb
@@ -15,4 +15,6 @@ require gcc3-build-cross.inc
# cross packaging
require gcc-package-cross.inc
+SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 "
+
EXTRA_OECONF += "--disable-libunwind-exceptions --with-mpfr=${STAGING_DIR}/${BUILD_SYS}"
diff --git a/packages/gcc/gcc-package-sdk.inc b/packages/gcc/gcc-package-sdk.inc
index 9d44fb51ab..1e5f2aaa5d 100644
--- a/packages/gcc/gcc-package-sdk.inc
+++ b/packages/gcc/gcc-package-sdk.inc
@@ -41,7 +41,7 @@ do_install () {
# the packaging.
if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then
${TARGET_PREFIX}strip ${D}${libdir}/libstdc++.so.*
- ${TARGET_PREFIX}strip ${D}${libdir}/libg2c.so.*
+ ${TARGET_PREFIX}strip ${D}${libdir}/libg2c.so.* || true
${TARGET_PREFIX}strip ${D}${base_libdir}/libgcc_s.so.*
fi
}
diff --git a/packages/gcc/gcc_4.1.1.bb b/packages/gcc/gcc_4.1.1.bb
index b668769ceb..c88692ae0c 100644
--- a/packages/gcc/gcc_4.1.1.bb
+++ b/packages/gcc/gcc_4.1.1.bb
@@ -1,4 +1,4 @@
-PR = "r12"
+PR = "r13"
DESCRIPTION = "The GNU cc and gcc C compilers."
HOMEPAGE = "http://www.gnu.org/software/gcc/"
SECTION = "devel"
@@ -35,7 +35,6 @@ SRC_URI = "http://ftp.gnu.org/pub/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 \
file://gcc-ignore-cache.patch;patch=1 \
"
-SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 "
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
SRC_URI_append_powerpc = " file://ppc-gcc-41-20060515.patch;patch=1 \
diff --git a/packages/gcc/gcc_4.1.2.bb b/packages/gcc/gcc_4.1.2.bb
index 91f6624aa1..2e6036d119 100644
--- a/packages/gcc/gcc_4.1.2.bb
+++ b/packages/gcc/gcc_4.1.2.bb
@@ -1,4 +1,4 @@
-PR = "r0"
+PR = "r1"
DESCRIPTION = "The GNU cc and gcc C compilers."
HOMEPAGE = "http://www.gnu.org/software/gcc/"
SECTION = "devel"
@@ -32,7 +32,6 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.1.2/gcc-4.1.2.tar.bz2 \
file://fix-ICE-in-arm_unwind_emit_set.diff;patch=1 \
"
-SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 "
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
#Set the fortran bits
diff --git a/packages/linux/linux-smdk2440-2.6.19/.mtn2git_empty b/packages/glib-2.0/glib-2.0-2.12.11/.mtn2git_empty
index e69de29bb2..e69de29bb2 100644
--- a/packages/linux/linux-smdk2440-2.6.19/.mtn2git_empty
+++ b/packages/glib-2.0/glib-2.0-2.12.11/.mtn2git_empty
diff --git a/packages/glib-2.0/glib-2.0-2.12.11/configure-libtool.patch b/packages/glib-2.0/glib-2.0-2.12.11/configure-libtool.patch
new file mode 100644
index 0000000000..50ffc628db
--- /dev/null
+++ b/packages/glib-2.0/glib-2.0-2.12.11/configure-libtool.patch
@@ -0,0 +1,20 @@
+--- /tmp/configure.in 2007-02-04 12:07:05.000000000 +0100
++++ glib-2.12.9/configure.in 2007-02-04 12:08:04.655251000 +0100
+@@ -1174,7 +1174,7 @@
+ G_MODULE_LDFLAGS=
+ else
+ export SED
+- G_MODULE_LDFLAGS=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
++ G_MODULE_LDFLAGS=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
+ fi
+ dnl G_MODULE_IMPL= don't reset, so cmd-line can override
+ G_MODULE_NEED_USCORE=0
+@@ -1239,7 +1239,7 @@
+ LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
+ dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness
+ echo "void glib_plugin_test(void) { }" > plugin.c
+- ${SHELL} ./libtool --mode=compile ${CC} -shared \
++ ${SHELL} ./$host_alias-libtool --mode=compile ${CC} -shared \
+ -export-dynamic -o plugin.o plugin.c 2>&1 >/dev/null
+ AC_CACHE_CHECK([for RTLD_GLOBAL brokenness],
+ glib_cv_rtldglobal_broken,[
diff --git a/packages/glib-2.0/glib-2.0_2.12.11.bb b/packages/glib-2.0/glib-2.0_2.12.11.bb
new file mode 100644
index 0000000000..4d8e59b355
--- /dev/null
+++ b/packages/glib-2.0/glib-2.0_2.12.11.bb
@@ -0,0 +1,6 @@
+require glib.inc
+
+SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/glib/2.12/glib-${PV}.tar.bz2 \
+ file://glibconfig-sysdefs.h \
+ file://configure-libtool.patch;patch=1"
+
diff --git a/packages/gtk-webcore/osb-jscore_svn.bb b/packages/gtk-webcore/osb-jscore_svn.bb
index eb65a9b2fc..25e42cd85c 100644
--- a/packages/gtk-webcore/osb-jscore_svn.bb
+++ b/packages/gtk-webcore/osb-jscore_svn.bb
@@ -35,5 +35,7 @@ do_stage () {
install -d ${STAGING_INCDIR}/osb/JavaScriptCore
for i in ${S}/kjs/*.h ${S}/kjs/new; do
install -m 0644 $i ${STAGING_INCDIR}/osb/JavaScriptCore
+ install -d ${STAGING_INCDIR}/../share/osb-jscore
+ install -m 0755 ${S}/kjs/create_hash_table ${STAGING_INCDIR}/../share/osb-jscore
done
}
diff --git a/packages/images/opie-image.bb b/packages/images/opie-image.bb
index 3613ccafde..cd8d7df654 100644
--- a/packages/images/opie-image.bb
+++ b/packages/images/opie-image.bb
@@ -2,7 +2,7 @@ export IMAGE_BASENAME = "opie-image"
export IMAGE_LINGUAS = ""
LICENSE = "MIT"
-PR = "r21"
+PR = "r22"
DEPENDS = "${MACHINE_TASK_PROVIDER} task-opie"
RDEPENDS = "${INSTALL_PACKAGES}"
@@ -14,9 +14,6 @@ INSTALL_PACKAGES = "${MACHINE_TASK_PROVIDER} task-opie-base task-opie-base-apple
task-opie-extra-settings \
task-opie-bluetooth task-opie-irda "
-INSTALL_PACKAGES_spitz_append = "task-opie-extra-games task-opie-extra-apps task-opie-extra-styles"
-INSTALL_PACKAGES_akita_append = "task-opie-extra-games task-opie-extra-apps task-opie-extra-styles"
-
export PACKAGE_INSTALL = "${INSTALL_PACKAGES}"
# merge feed-sources into ipkg.conf for opie-aqpkg as it can't handle feed-sources outside of ipkg.conf.
diff --git a/packages/irda-utils/files/init b/packages/irda-utils/files/init
index 2d93af34df..a00596fc85 100755
--- a/packages/irda-utils/files/init
+++ b/packages/irda-utils/files/init
@@ -1,21 +1,26 @@
#! /bin/sh
+NAME="irattach"
+
module_id() {
- awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo
+ awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo
+}
+cpuid_id() {
+ awk '/Processor/ { print $3; exit; }' /proc/cpuinfo
}
if [ ! -f /etc/sysconfig/irda ]; then
- case `module_id` in
- "HP iPAQ H2200" | "HP iPAQ HX4700" | "HTC Universal")
+ case `cpuid_id` in
+ "XScale-PXA2"*)
IRDA=yes
DEVICE=/dev/ttyS2
DONGLE=
DISCOVERY=
;;
*)
- IRDA=yes
- DEVICE=/dev/ttyS1
+ IRDA=no
+ DEVICE=/dev/null
DONGLE=
DISCOVERY=
;;
@@ -32,8 +37,8 @@ fi
. /etc/sysconfig/irda
-# Check that irda is up.
-[ ${IRDA} = "no" ] && exit 0
+# Check if irda is present.
+[ $IRDA = "no" ] && exit 0
[ -f /usr/sbin/irattach ] || exit 0
@@ -47,26 +52,26 @@ fi
case "$1" in
start)
- echo -n "Starting IrDA: "
- irattach ${DEVICE} ${ARGS} > /dev/null 2>&1 &
- echo "$NAME."
- ;;
+ echo -n "Starting IrDA: "
+ irattach ${DEVICE} ${ARGS} > /dev/null 2>&1
+ echo "$NAME."
+ ;;
stop)
- echo -n "Stopping IrDA: "
- killall irattach > /dev/null 2>&1
- echo "$NAME."
- ;;
+ echo -n "Stopping IrDA: "
+ killall irattach > /dev/null 2>&1
+ echo "$NAME."
+ ;;
restart|force-reload)
- echo -n "Restarting IrDA: "
- irattach ${DEVICE} ${ARGS} > /dev/null 2>&1 &
- sleep 1
- killall irattach > /dev/null 2>&1
- echo "$NAME."
- ;;
+ echo -n "Restarting IrDA: "
+ irattach ${DEVICE} ${ARGS} > /dev/null 2>&1
+ sleep 1
+ killall irattach > /dev/null 2>&1
+ echo "$NAME."
+ ;;
*)
- N=/etc/init.d/$NAME
- echo "Usage: $N {start|stop|restart|force-reload}" >&2
- exit 1
- ;;
+ N=/etc/init.d/$NAME
+ echo "Usage: $N {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
esac
diff --git a/packages/irda-utils/irda-utils_0.9.16.bb b/packages/irda-utils/irda-utils_0.9.16.bb
index ee5580b1de..19bcdf397c 100644
--- a/packages/irda-utils/irda-utils_0.9.16.bb
+++ b/packages/irda-utils/irda-utils_0.9.16.bb
@@ -3,7 +3,7 @@ IrDA allows communication over Infrared with other devices \
such as phones and laptops."
SECTION = "base"
LICENSE = "GPL"
-PR = "r7"
+PR = "r8"
SRC_URI = "${SOURCEFORGE_MIRROR}/irda/irda-utils-${PV}.tar.gz \
file://configure.patch;patch=1 \
@@ -12,7 +12,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/irda/irda-utils-${PV}.tar.gz \
export SYS_INCLUDES="-I${STAGING_INCDIR}"
-inherit autotools update-rc.d
+inherit autotools
INITSCRIPT_NAME = "irattach"
INITSCRIPT_PARAMS = "defaults 20"
diff --git a/packages/libwpd/libwpd_0.8.4.bb b/packages/libwpd/libwpd_0.8.4.bb
index 46a59e8dc8..4e6ee91a4f 100644
--- a/packages/libwpd/libwpd_0.8.4.bb
+++ b/packages/libwpd/libwpd_0.8.4.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "libwpd is a C++ library designed to help process WordPerfect docu
HOMEPAGE = "http://libwpd.sourceforge.net/index.html"
SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${P}.tar.gz"
-
+DEPENDS = "libgsf"
inherit autotools pkgconfig
diff --git a/packages/libwpd/libwpd_0.8.6.bb b/packages/libwpd/libwpd_0.8.6.bb
index 46a59e8dc8..4e6ee91a4f 100644
--- a/packages/libwpd/libwpd_0.8.6.bb
+++ b/packages/libwpd/libwpd_0.8.6.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "libwpd is a C++ library designed to help process WordPerfect docu
HOMEPAGE = "http://libwpd.sourceforge.net/index.html"
SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${P}.tar.gz"
-
+DEPENDS = "libgsf"
inherit autotools pkgconfig
diff --git a/packages/linux/linux-smdk2440-2.6.19/smdk2440-touchscreen-r2.patch b/packages/linux/linux-smdk2440-2.6.19/smdk2440-touchscreen-r2.patch
deleted file mode 100644
index d785cb885f..0000000000
--- a/packages/linux/linux-smdk2440-2.6.19/smdk2440-touchscreen-r2.patch
+++ /dev/null
@@ -1,532 +0,0 @@
-Index: linux-2.6.19/drivers/input/touchscreen/s3c2410_ts.c
-===================================================================
---- /dev/null
-+++ linux-2.6.19/drivers/input/touchscreen/s3c2410_ts.c
-@@ -0,0 +1,351 @@
-+/*
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+ *
-+ * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org>
-+ * iPAQ H1940 touchscreen support
-+ *
-+ * ChangeLog
-+ *
-+ * 2004-09-05: Herbert Pƶtzl <herbert@13thfloor.at>
-+ * - added clock (de-)allocation code
-+ *
-+ * 2005-03-06: Arnaud Patard <arnaud.patard@rtp-net.org>
-+ * - h1940_ -> s3c2410 (this driver is now also used on the n30
-+ * machines :P)
-+ * - Debug messages are now enabled with the config option
-+ * TOUCHSCREEN_S3C2410_DEBUG
-+ * - Changed the way the value are read
-+ * - Input subsystem should now work
-+ * - Use ioremap and readl/writel
-+ *
-+ * 2005-03-23: Arnaud Patard <arnaud.patard@rtp-net.org>
-+ * - Make use of some undocumented features of the touchscreen
-+ * controller
-+ *
-+ */
-+
-+#include <linux/errno.h>
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/slab.h>
-+#include <linux/input.h>
-+#include <linux/init.h>
-+#include <linux/serio.h>
-+#include <linux/delay.h>
-+#include <linux/platform_device.h>
-+#include <linux/clk.h>
-+#include <asm/io.h>
-+#include <asm/irq.h>
-+
-+#include <asm/arch/regs-adc.h>
-+#include <asm/arch/regs-gpio.h>
-+#include <asm/arch/ts.h>
-+
-+/* For ts.dev.id.version */
-+#define S3C2410TSVERSION 0x0101
-+
-+#define WAIT4INT(x) (((x)<<8) | \
-+ S3C2410_ADCTSC_YM_SEN | S3C2410_ADCTSC_YP_SEN | S3C2410_ADCTSC_XP_SEN | \
-+ S3C2410_ADCTSC_XY_PST(3))
-+
-+#define AUTOPST (S3C2410_ADCTSC_YM_SEN | S3C2410_ADCTSC_YP_SEN | S3C2410_ADCTSC_XP_SEN | \
-+ S3C2410_ADCTSC_AUTO_PST | S3C2410_ADCTSC_XY_PST(0))
-+
-+#define DEBUG_LVL KERN_DEBUG
-+
-+MODULE_AUTHOR("Arnaud Patard <arnaud.patard@rtp-net.org>");
-+MODULE_DESCRIPTION("s3c2410 touchscreen driver");
-+MODULE_LICENSE("GPL");
-+
-+/*
-+ * Definitions & global arrays.
-+ */
-+
-+
-+static char *s3c2410ts_name = "s3c2410 TouchScreen";
-+
-+/*
-+ * Per-touchscreen data.
-+ */
-+
-+struct s3c2410ts {
-+ struct input_dev *dev;
-+ long xp;
-+ long yp;
-+ int count;
-+ int shift;
-+};
-+
-+static struct s3c2410ts ts;
-+static void __iomem *base_addr;
-+
-+static inline void s3c2410_ts_connect(void)
-+{
-+ s3c2410_gpio_cfgpin(S3C2410_GPG12, S3C2410_GPG12_XMON);
-+ s3c2410_gpio_cfgpin(S3C2410_GPG13, S3C2410_GPG13_nXPON);
-+ s3c2410_gpio_cfgpin(S3C2410_GPG14, S3C2410_GPG14_YMON);
-+ s3c2410_gpio_cfgpin(S3C2410_GPG15, S3C2410_GPG15_nYPON);
-+}
-+
-+static void touch_timer_fire(unsigned long data)
-+{
-+ unsigned long data0;
-+ unsigned long data1;
-+ int updown;
-+
-+ data0 = readl(base_addr+S3C2410_ADCDAT0);
-+ data1 = readl(base_addr+S3C2410_ADCDAT1);
-+
-+ updown = (!(data0 & S3C2410_ADCDAT0_UPDOWN)) && (!(data1 & S3C2410_ADCDAT0_UPDOWN));
-+
-+ if (updown) {
-+ if (ts.count != 0) {
-+ ts.xp >>= ts.shift;
-+ ts.yp >>= ts.shift;
-+
-+#ifdef CONFIG_TOUCHSCREEN_S3C2410_DEBUG
-+ {
-+ struct timeval tv;
-+ do_gettimeofday(&tv);
-+ printk(DEBUG_LVL "T: %06d, X: %03ld, Y: %03ld\n", (int)tv.tv_usec, ts.xp, ts.yp);
-+ }
-+#endif
-+
-+ input_report_abs(ts.dev, ABS_Y, ts.xp);
-+ input_report_abs(ts.dev, ABS_X, ts.yp);
-+
-+ input_report_key(ts.dev, BTN_TOUCH, 1);
-+ input_report_abs(ts.dev, ABS_PRESSURE, 1);
-+ input_sync(ts.dev);
-+ }
-+
-+ ts.count = 0;
-+
-+ writel(S3C2410_ADCTSC_PULL_UP_DISABLE | AUTOPST, base_addr+S3C2410_ADCTSC);
-+ writel(readl(base_addr+S3C2410_ADCCON) | S3C2410_ADCCON_ENABLE_START, base_addr+S3C2410_ADCCON);
-+ } else {
-+ ts.count = 0;
-+
-+ input_report_abs(ts.dev, ABS_Y, ts.xp);
-+ input_report_abs(ts.dev, ABS_X, ts.yp);
-+
-+ input_report_key(ts.dev, BTN_TOUCH, 0);
-+ input_report_abs(ts.dev, ABS_PRESSURE, 0);
-+ input_sync(ts.dev);
-+
-+ writel(WAIT4INT(0), base_addr+S3C2410_ADCTSC);
-+ }
-+}
-+
-+static struct timer_list touch_timer =
-+ TIMER_INITIALIZER(touch_timer_fire, 0, 0);
-+
-+static irqreturn_t stylus_updown(int irq, void *dev_id, struct pt_regs *regs)
-+{
-+ unsigned long data0;
-+ unsigned long data1;
-+ int updown;
-+
-+ data0 = readl(base_addr+S3C2410_ADCDAT0);
-+ data1 = readl(base_addr+S3C2410_ADCDAT1);
-+
-+ updown = (!(data0 & S3C2410_ADCDAT0_UPDOWN)) && (!(data1 & S3C2410_ADCDAT0_UPDOWN));
-+
-+ /* TODO we should never get an interrupt with updown set while
-+ * the timer is running, but maybe we ought to verify that the
-+ * timer isn't running anyways. */
-+
-+ if (updown)
-+ touch_timer_fire(0);
-+
-+ return IRQ_HANDLED;
-+}
-+
-+
-+static irqreturn_t stylus_action(int irq, void *dev_id, struct pt_regs *regs)
-+{
-+ unsigned long data0;
-+ unsigned long data1;
-+
-+ data0 = readl(base_addr+S3C2410_ADCDAT0);
-+ data1 = readl(base_addr+S3C2410_ADCDAT1);
-+
-+ ts.xp += data0 & S3C2410_ADCDAT0_XPDATA_MASK;
-+ ts.yp += data1 & S3C2410_ADCDAT1_YPDATA_MASK;
-+ ts.count++;
-+
-+ if (ts.count < (1<<ts.shift)) {
-+ writel(S3C2410_ADCTSC_PULL_UP_DISABLE | AUTOPST, base_addr+S3C2410_ADCTSC);
-+ writel(readl(base_addr+S3C2410_ADCCON) | S3C2410_ADCCON_ENABLE_START, base_addr+S3C2410_ADCCON);
-+ } else {
-+ mod_timer(&touch_timer, jiffies+1);
-+ writel(WAIT4INT(1), base_addr+S3C2410_ADCTSC);
-+ }
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static struct clk *adc_clock;
-+
-+/*
-+ * The functions for inserting/removing us as a module.
-+ */
-+
-+static int __init s3c2410ts_probe(struct platform_device *pdev)
-+{
-+ struct s3c2410_ts_mach_info *info;
-+ struct input_dev *input_dev;
-+
-+ info = ( struct s3c2410_ts_mach_info *)pdev->dev.platform_data;
-+
-+ if (!info)
-+ {
-+ printk(KERN_ERR "Hm... too bad : no platform data for ts\n");
-+ return -EINVAL;
-+ }
-+
-+#ifdef CONFIG_TOUCHSCREEN_S3C2410_DEBUG
-+ printk(DEBUG_LVL "Entering s3c2410ts_init\n");
-+#endif
-+
-+ adc_clock = clk_get(NULL, "adc");
-+ if (!adc_clock) {
-+ printk(KERN_ERR "failed to get adc clock source\n");
-+ return -ENOENT;
-+ }
-+ clk_enable(adc_clock);
-+
-+#ifdef CONFIG_TOUCHSCREEN_S3C2410_DEBUG
-+ printk(DEBUG_LVL "got and enabled clock\n");
-+#endif
-+
-+ base_addr=ioremap(S3C2410_PA_ADC,0x20);
-+ if (base_addr == NULL) {
-+ printk(KERN_ERR "Failed to remap register block\n");
-+ return -ENOMEM;
-+ }
-+
-+
-+ /* Configure GPIOs */
-+ s3c2410_ts_connect();
-+
-+ if ((info->presc&0xff) > 0)
-+ writel(S3C2410_ADCCON_PRSCEN | S3C2410_ADCCON_PRSCVL(info->presc&0xFF),\
-+ base_addr+S3C2410_ADCCON);
-+ else
-+ writel(0,base_addr+S3C2410_ADCCON);
-+
-+
-+ /* Initialise registers */
-+ if ((info->delay&0xffff) > 0)
-+ writel(info->delay & 0xffff, base_addr+S3C2410_ADCDLY);
-+
-+ writel(WAIT4INT(0), base_addr+S3C2410_ADCTSC);
-+
-+ /* Initialise input stuff */
-+ memset(&ts, 0, sizeof(struct s3c2410ts));
-+ input_dev = input_allocate_device();
-+
-+ if (!input_dev) {
-+ printk(KERN_ERR "Unable to allocate the input device !!\n");
-+ return -ENOMEM;
-+ }
-+
-+ ts.dev = input_dev;
-+ ts.dev->evbit[0] = BIT(EV_SYN) | BIT(EV_KEY) | BIT(EV_ABS);
-+ ts.dev->keybit[LONG(BTN_TOUCH)] = BIT(BTN_TOUCH);
-+ input_set_abs_params(ts.dev, ABS_X, 0x10, 0x3FF, 0, 0);
-+ input_set_abs_params(ts.dev, ABS_Y, 0x10, 0x3FF, 0, 0);
-+ input_set_abs_params(ts.dev, ABS_PRESSURE, 0, 1, 0, 0);
-+
-+ ts.dev->private = &ts;
-+ ts.dev->name = s3c2410ts_name;
-+ ts.dev->id.bustype = BUS_RS232;
-+ ts.dev->id.vendor = 0xDEAD;
-+ ts.dev->id.product = 0xBEEF;
-+ ts.dev->id.version = S3C2410TSVERSION;
-+
-+ ts.shift = info->oversampling_shift;
-+
-+ /* Get irqs */
-+ if (request_irq(IRQ_ADC, stylus_action, SA_SAMPLE_RANDOM,
-+ "s3c2410_action", ts.dev)) {
-+ printk(KERN_ERR "s3c2410_ts.c: Could not allocate ts IRQ_ADC !\n");
-+ iounmap(base_addr);
-+ return -EIO;
-+ }
-+ if (request_irq(IRQ_TC, stylus_updown, SA_SAMPLE_RANDOM,
-+ "s3c2410_action", ts.dev)) {
-+ printk(KERN_ERR "s3c2410_ts.c: Could not allocate ts IRQ_TC !\n");
-+ iounmap(base_addr);
-+ return -EIO;
-+ }
-+
-+ printk(KERN_INFO "%s successfully loaded\n", s3c2410ts_name);
-+
-+ /* All went ok, so register to the input system */
-+ input_register_device(ts.dev);
-+
-+ return 0;
-+}
-+
-+static int s3c2410ts_remove(struct platform_device *pdev)
-+{
-+ disable_irq(IRQ_ADC);
-+ disable_irq(IRQ_TC);
-+ free_irq(IRQ_TC,ts.dev);
-+ free_irq(IRQ_ADC,ts.dev);
-+
-+ if (adc_clock) {
-+ clk_disable(adc_clock);
-+ clk_put(adc_clock);
-+ adc_clock = NULL;
-+ }
-+
-+ input_unregister_device(ts.dev);
-+ iounmap(base_addr);
-+
-+ return 0;
-+}
-+
-+static struct platform_driver s3c2410ts_driver = {
-+ .driver = {
-+ .name = "s3c2410-ts",
-+ .owner = THIS_MODULE,
-+ },
-+ .probe = s3c2410ts_probe,
-+ .remove = s3c2410ts_remove,
-+};
-+
-+
-+static int __init s3c2410ts_init(void)
-+{
-+ return platform_driver_register(&s3c2410ts_driver);
-+}
-+
-+static void __exit s3c2410ts_exit(void)
-+{
-+ platform_driver_unregister(&s3c2410ts_driver);
-+}
-+
-+module_init(s3c2410ts_init);
-+module_exit(s3c2410ts_exit);
-+
-+/*
-+ Local variables:
-+ compile-command: "make ARCH=arm CROSS_COMPILE=/usr/local/arm/3.3.2/bin/arm-linux- -k -C ../../.."
-+ c-basic-offset: 8
-+ End:
-+*/
-Index: linux-2.6.19/arch/arm/mach-s3c2410/devs.c
-===================================================================
---- linux-2.6.19.orig/arch/arm/mach-s3c2410/devs.c
-+++ linux-2.6.19/arch/arm/mach-s3c2410/devs.c
-@@ -28,6 +28,7 @@
- #include <asm/irq.h>
-
- #include <asm/arch/regs-serial.h>
-+#include <asm/arch/ts.h>
-
- #include "devs.h"
- #include "cpu.h"
-@@ -204,6 +205,23 @@ struct platform_device s3c_device_nand =
-
- EXPORT_SYMBOL(s3c_device_nand);
-
-+/* Touchscreen */
-+struct platform_device s3c_device_ts = {
-+ .name = "s3c2410-ts",
-+ .id = -1,
-+};
-+
-+EXPORT_SYMBOL(s3c_device_ts);
-+
-+static struct s3c2410_ts_mach_info s3c2410ts_info;
-+
-+void __init set_s3c2410ts_info(struct s3c2410_ts_mach_info *hard_s3c2410ts_info)
-+{
-+ memcpy(&s3c2410ts_info,hard_s3c2410ts_info,sizeof(struct s3c2410_ts_mach_info));
-+ s3c_device_ts.dev.platform_data = &s3c2410ts_info;
-+}
-+EXPORT_SYMBOL(set_s3c2410ts_info);
-+
- /* USB Device (Gadget)*/
-
- static struct resource s3c_usbgadget_resource[] = {
-Index: linux-2.6.19/arch/arm/mach-s3c2410/devs.h
-===================================================================
---- linux-2.6.19.orig/arch/arm/mach-s3c2410/devs.h
-+++ linux-2.6.19/arch/arm/mach-s3c2410/devs.h
-@@ -41,6 +41,8 @@ extern struct platform_device s3c_device
- extern struct platform_device s3c_device_timer3;
-
- extern struct platform_device s3c_device_usbgadget;
-+extern struct platform_device s3c_device_ts;
-+
-
- /* s3c2440 specific devices */
-
-Index: linux-2.6.19/arch/arm/mach-s3c2410/mach-smdk2440.c
-===================================================================
---- linux-2.6.19.orig/arch/arm/mach-s3c2410/mach-smdk2440.c
-+++ linux-2.6.19/arch/arm/mach-s3c2410/mach-smdk2440.c
-@@ -38,6 +38,7 @@
-
- #include <asm/arch/idle.h>
- #include <asm/arch/fb.h>
-+#include <asm/arch/ts.h>
-
- #include "s3c2410.h"
- #include "s3c2440.h"
-@@ -177,6 +178,7 @@ static struct platform_device *smdk2440_
- &s3c_device_wdt,
- &s3c_device_i2c,
- &s3c_device_iis,
-+ &s3c_device_ts,
- };
-
- static struct s3c24xx_board smdk2440_board __initdata = {
-@@ -184,6 +186,13 @@ static struct s3c24xx_board smdk2440_boa
- .devices_count = ARRAY_SIZE(smdk2440_devices)
- };
-
-+static struct s3c2410_ts_mach_info smdk2440_ts_cfg __initdata = {
-+ .delay = 10000,
-+ .presc = 49,
-+ .oversampling_shift = 2,
-+};
-+
-+
- static void __init smdk2440_map_io(void)
- {
- s3c24xx_init_io(smdk2440_iodesc, ARRAY_SIZE(smdk2440_iodesc));
-@@ -195,6 +204,7 @@ static void __init smdk2440_map_io(void)
- static void __init smdk2440_machine_init(void)
- {
- s3c24xx_fb_set_platdata(&smdk2440_lcd_cfg);
-+ set_s3c2410ts_info(&smdk2440_ts_cfg);
-
- smdk_machine_init();
- }
-Index: linux-2.6.19/drivers/input/touchscreen/Kconfig
-===================================================================
---- linux-2.6.19.orig/drivers/input/touchscreen/Kconfig
-+++ linux-2.6.19/drivers/input/touchscreen/Kconfig
-@@ -49,6 +49,25 @@ config TOUCHSCREEN_CORGI
- To compile this driver as a module, choose M here: the
- module will be called corgi_ts.
-
-+config TOUCHSCREEN_S3C2410
-+ tristate "Samsung S3C2410 touchscreen input driver"
-+ depends on ARCH_S3C2410 && INPUT && INPUT_TOUCHSCREEN
-+ select SERIO
-+ help
-+ Say Y here if you have the s3c2410 touchscreen.
-+
-+ If unsure, say N.
-+
-+ To compile this driver as a module, choose M here: the
-+ module will be called s3c2410_ts.
-+
-+config TOUCHSCREEN_S3C2410_DEBUG
-+ boolean "Samsung S3C2410 touchscreen debug messages"
-+ depends on TOUCHSCREEN_S3C2410
-+ help
-+ Select this if you want debug messages
-+
-+
- config TOUCHSCREEN_GUNZE
- tristate "Gunze AHL-51S touchscreen"
- select SERIO
-Index: linux-2.6.19/drivers/input/touchscreen/Makefile
-===================================================================
---- linux-2.6.19.orig/drivers/input/touchscreen/Makefile
-+++ linux-2.6.19/drivers/input/touchscreen/Makefile
-@@ -15,3 +15,4 @@ obj-$(CONFIG_TOUCHSCREEN_HP600) += hp680
- obj-$(CONFIG_TOUCHSCREEN_PENMOUNT) += penmount.o
- obj-$(CONFIG_TOUCHSCREEN_TOUCHRIGHT) += touchright.o
- obj-$(CONFIG_TOUCHSCREEN_TOUCHWIN) += touchwin.o
-+obj-$(CONFIG_TOUCHSCREEN_S3C2410) += s3c2410_ts.o
-Index: linux-2.6.19/include/asm-arm/arch-s3c2410/ts.h
-===================================================================
---- /dev/null
-+++ linux-2.6.19/include/asm-arm/arch-s3c2410/ts.h
-@@ -0,0 +1,28 @@
-+/* linux/include/asm/arch-s3c2410/ts.h
-+ *
-+ * Copyright (c) 2005 Arnaud Patard <arnaud.patard@rtp-net.org>
-+ *
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ *
-+ *
-+ * Changelog:
-+ * 24-Mar-2005 RTP Created file
-+ * 03-Aug-2005 RTP Renamed to ts.h
-+ */
-+
-+#ifndef __ASM_ARM_TS_H
-+#define __ASM_ARM_TS_H
-+
-+struct s3c2410_ts_mach_info {
-+ int delay;
-+ int presc;
-+ int oversampling_shift;
-+};
-+
-+void __init set_s3c2410ts_info(struct s3c2410_ts_mach_info *hard_s3c2410ts_info);
-+
-+#endif /* __ASM_ARM_TS_H */
-+
-Index: linux-2.6.19/include/asm-arm/arch-s3c2410/regs-adc.h
-===================================================================
---- linux-2.6.19.orig/include/asm-arm/arch-s3c2410/regs-adc.h
-+++ linux-2.6.19/include/asm-arm/arch-s3c2410/regs-adc.h
-@@ -41,7 +41,7 @@
- #define S3C2410_ADCTSC_XP_SEN (1<<4)
- #define S3C2410_ADCTSC_PULL_UP_DISABLE (1<<3)
- #define S3C2410_ADCTSC_AUTO_PST (1<<2)
--#define S3C2410_ADCTSC_XY_PST (0x3<<0)
-+#define S3C2410_ADCTSC_XY_PST(x) (((x)&0x3)<<0)
-
- /* ADCDAT0 Bits */
- #define S3C2410_ADCDAT0_UPDOWN (1<<15)
diff --git a/packages/linux/linux-smdk2440-2.6.20+git/.mtn2git_empty b/packages/linux/linux-smdk2440-2.6.20+git/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/linux/linux-smdk2440-2.6.20+git/.mtn2git_empty
diff --git a/packages/linux/linux-smdk2440-2.6.20+git/0001-Enable-cs8900A-network-device-for-smdk2440-board.patch b/packages/linux/linux-smdk2440-2.6.20+git/0001-Enable-cs8900A-network-device-for-smdk2440-board.patch
new file mode 100644
index 0000000000..bf8a0081dd
--- /dev/null
+++ b/packages/linux/linux-smdk2440-2.6.20+git/0001-Enable-cs8900A-network-device-for-smdk2440-board.patch
@@ -0,0 +1,92 @@
+From 44c48cf15a3072185ce3541a127a89bfbb2b346f Mon Sep 17 00:00:00 2001
+From: Graeme Gregory <gg@gg-desktop.wolfsonmicro.main>
+Date: Fri, 6 Apr 2007 15:47:13 +0100
+Subject: [PATCH] Enable cs8900A network device for smdk2440 board.
+
+Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
+---
+ arch/arm/mach-s3c2440/mach-smdk2440.c | 7 ++++++-
+ drivers/net/cs89x0.c | 20 ++++++++++++++++++--
+ 2 files changed, 24 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/mach-s3c2440/mach-smdk2440.c b/arch/arm/mach-s3c2440/mach-smdk2440.c
+index c17eb5b..fb36665 100644
+--- a/arch/arm/mach-s3c2440/mach-smdk2440.c
++++ b/arch/arm/mach-s3c2440/mach-smdk2440.c
+@@ -69,7 +69,12 @@ static struct map_desc smdk2440_iodesc[] __initdata = {
+ .pfn = __phys_to_pfn(S3C2410_CS2 + (1<<24)),
+ .length = SZ_4M,
+ .type = MT_DEVICE,
+- }
++ }, {
++ .virtual = (u32)S3C2410_ADDR(0x04000000) ,
++ .pfn = __phys_to_pfn(S3C2410_CS3 + (1<<24)),
++ .length = SZ_16M,
++ .type = MT_DEVICE,
++ }
+ };
+
+ #define UCON S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK
+diff --git a/drivers/net/cs89x0.c b/drivers/net/cs89x0.c
+index 4612f71..534653e 100644
+--- a/drivers/net/cs89x0.c
++++ b/drivers/net/cs89x0.c
+@@ -187,6 +187,10 @@ static unsigned int cs8900_irq_map[] = {IRQ_IXDP2351_CS8900, 0, 0, 0};
+ #include <asm/irq.h>
+ static unsigned int netcard_portlist[] __initdata = {IXDP2X01_CS8900_VIRT_BASE, 0};
+ static unsigned int cs8900_irq_map[] = {IRQ_IXDP2X01_CS8900, 0, 0, 0};
++#elif defined(CONFIG_ARCH_S3C2440)
++static unsigned int netcard_portlist[] __initdata = {S3C2410_ADDR(0x04000000) + 0x300 , 0};
++static unsigned int cs8900_irq_map[] = {IRQ_EINT9, 0, 0, 0};
++static unsigned char cs8900_mac[] = {0xDE,0xAD,0xBE,0xEF,0x01,0x02};
+ #elif defined(CONFIG_ARCH_PNX010X)
+ #include <asm/irq.h>
+ #include <asm/arch/gpio.h>
+@@ -719,6 +723,14 @@ cs89x0_probe1(struct net_device *dev, int ioaddr, int modular)
+
+ printk( "[Cirrus EEPROM] ");
+ }
++#if defined(CONFIG_ARCH_S3C2440)
++ else
++ {
++ for (i=0; i < ETH_ALEN; i++) {
++ dev->dev_addr[i] = cs8900_mac[i];
++ }
++ }
++#endif
+
+ printk("\n");
+
+@@ -802,7 +814,7 @@ cs89x0_probe1(struct net_device *dev, int ioaddr, int modular)
+ } else {
+ i = lp->isa_config & INT_NO_MASK;
+ if (lp->chip_type == CS8900) {
+-#if defined(CONFIG_MACH_IXDP2351) || defined(CONFIG_ARCH_IXDP2X01) || defined(CONFIG_ARCH_PNX010X)
++#if defined(CONFIG_MACH_IXDP2351) || defined(CONFIG_ARCH_IXDP2X01) || defined(CONFIG_ARCH_PNX010X) || defined(CONFIG_ARCH_S3C2410)
+ i = cs8900_irq_map[0];
+ #else
+ /* Translate the IRQ using the IRQ mapping table. */
+@@ -1309,7 +1321,7 @@ net_open(struct net_device *dev)
+ else
+ #endif
+ {
+-#if !defined(CONFIG_MACH_IXDP2351) && !defined(CONFIG_ARCH_IXDP2X01) && !defined(CONFIG_ARCH_PNX010X)
++#if !defined(CONFIG_MACH_IXDP2351) && !defined(CONFIG_ARCH_IXDP2X01) && !defined(CONFIG_ARCH_PNX010X) && !defined(CONFIG_ARCH_S3C2410)
+ if (((1 << dev->irq) & lp->irq_map) == 0) {
+ printk(KERN_ERR "%s: IRQ %d is not in our map of allowable IRQs, which is %x\n",
+ dev->name, dev->irq, lp->irq_map);
+@@ -1324,7 +1336,11 @@ net_open(struct net_device *dev)
+ writereg(dev, PP_BusCTL, ENABLE_IRQ | MEMORY_ON);
+ #endif
+ write_irq(dev, lp->chip_type, dev->irq);
++#if !defined(CONFIG_ARCH_S3C2440)
+ ret = request_irq(dev->irq, &net_interrupt, 0, dev->name, dev);
++#else
++ ret = request_irq(dev->irq, &net_interrupt, IRQF_DISABLED | IRQF_TRIGGER_HIGH, dev->name, dev);
++#endif
+ if (ret) {
+ if (net_debug)
+ printk(KERN_DEBUG "cs89x0: request_irq(%d) failed\n", dev->irq);
+--
+1.5.1
+
diff --git a/packages/linux/linux-smdk2440/defconfig-smdk2440 b/packages/linux/linux-smdk2440/defconfig-smdk2440
index 5bdf67e850..8805af7413 100644
--- a/packages/linux/linux-smdk2440/defconfig-smdk2440
+++ b/packages/linux/linux-smdk2440/defconfig-smdk2440
@@ -1,11 +1,14 @@
#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.20-rc2
-# Thu Jan 4 13:31:25 2007
+# Linux kernel version: 2.6.21-rc6
+# Fri Apr 6 15:53:13 2007
#
CONFIG_ARM=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_GENERIC_GPIO=y
# CONFIG_GENERIC_TIME is not set
CONFIG_MMU=y
+CONFIG_NO_IOPORT=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_HARDIRQS_SW_RESEND=y
@@ -15,6 +18,7 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_ZONE_DMA=y
CONFIG_VECTORS_BASE=0xffff0000
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
@@ -33,6 +37,7 @@ CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not set
+CONFIG_SYSVIPC_SYSCTL=y
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
@@ -41,6 +46,7 @@ CONFIG_SYSVIPC=y
# CONFIG_IKCONFIG is not set
CONFIG_SYSFS_DEPRECATED=y
# CONFIG_RELAY is not set
+CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
@@ -120,6 +126,7 @@ CONFIG_DEFAULT_IOSCHED="anticipatory"
# CONFIG_ARCH_IXP2000 is not set
# CONFIG_ARCH_IXP23XX is not set
# CONFIG_ARCH_L7200 is not set
+# CONFIG_ARCH_NS9XXX is not set
# CONFIG_ARCH_PNX4008 is not set
# CONFIG_ARCH_PXA is not set
# CONFIG_ARCH_RPC is not set
@@ -128,55 +135,73 @@ CONFIG_ARCH_S3C2410=y
# CONFIG_ARCH_SHARK is not set
# CONFIG_ARCH_LH7A40X is not set
# CONFIG_ARCH_OMAP is not set
+CONFIG_PLAT_S3C24XX=y
+CONFIG_CPU_S3C244X=y
+CONFIG_PM_SIMTEC=y
+# CONFIG_S3C2410_BOOT_WATCHDOG is not set
+# CONFIG_S3C2410_BOOT_ERROR_RESET is not set
+# CONFIG_S3C2410_PM_DEBUG is not set
+# CONFIG_S3C2410_PM_CHECK is not set
+CONFIG_S3C2410_LOWLEVEL_UART_PORT=0
+CONFIG_S3C2410_DMA=y
+CONFIG_S3C2410_DMA_DEBUG=y
+CONFIG_MACH_SMDK=y
#
-# S3C24XX Implementations
+# S3C2400 Machines
#
-# CONFIG_MACH_AML_M5900 is not set
-CONFIG_MACH_ANUBIS=y
-CONFIG_MACH_OSIRIS=y
-CONFIG_ARCH_BAST=y
-CONFIG_BAST_PC104_IRQ=y
-CONFIG_PM_H1940=y
+CONFIG_CPU_S3C2410=y
+CONFIG_CPU_S3C2410_DMA=y
+CONFIG_S3C2410_PM=y
+CONFIG_S3C2410_GPIO=y
+CONFIG_S3C2410_CLOCK=y
+
+#
+# S3C2410 Machines
+#
+CONFIG_ARCH_SMDK2410=y
CONFIG_ARCH_H1940=y
+CONFIG_PM_H1940=y
CONFIG_MACH_N30=y
-CONFIG_MACH_SMDK=y
-CONFIG_ARCH_SMDK2410=y
-CONFIG_ARCH_S3C2440=y
-CONFIG_SMDK2440_CPU2440=y
-CONFIG_SMDK2440_CPU2442=y
-CONFIG_MACH_S3C2413=y
-CONFIG_MACH_SMDK2413=y
-CONFIG_MACH_VR1000=y
-CONFIG_MACH_RX3715=y
+CONFIG_ARCH_BAST=y
CONFIG_MACH_OTOM=y
-CONFIG_MACH_NEXCODER_2440=y
-# CONFIG_MACH_VSTMS is not set
-CONFIG_S3C2410_CLOCK=y
-CONFIG_S3C2410_PM=y
-CONFIG_CPU_S3C2410_DMA=y
-CONFIG_CPU_S3C2410=y
-CONFIG_S3C2412_PM=y
+# CONFIG_MACH_AML_M5900 is not set
+CONFIG_BAST_PC104_IRQ=y
+CONFIG_MACH_VR1000=y
+# CONFIG_MACH_QT2410 is not set
CONFIG_CPU_S3C2412=y
-CONFIG_CPU_S3C244X=y
+CONFIG_S3C2412_DMA=y
+CONFIG_S3C2412_PM=y
+
+#
+# S3C2412 Machines
+#
+CONFIG_MACH_SMDK2413=y
+CONFIG_MACH_S3C2413=y
+# CONFIG_MACH_VSTMS is not set
CONFIG_CPU_S3C2440=y
+CONFIG_S3C2440_DMA=y
+
+#
+# S3C2440 Machines
+#
+CONFIG_MACH_ANUBIS=y
+CONFIG_MACH_OSIRIS=y
+CONFIG_MACH_RX3715=y
+CONFIG_ARCH_S3C2440=y
+CONFIG_MACH_NEXCODER_2440=y
+CONFIG_SMDK2440_CPU2440=y
CONFIG_CPU_S3C2442=y
#
-# S3C2410 Boot
+# S3C2442 Machines
#
-# CONFIG_S3C2410_BOOT_WATCHDOG is not set
-# CONFIG_S3C2410_BOOT_ERROR_RESET is not set
+CONFIG_SMDK2440_CPU2442=y
#
-# S3C2410 Setup
+# S3C2443 Machines
#
-CONFIG_S3C2410_DMA=y
-CONFIG_S3C2410_DMA_DEBUG=y
-# CONFIG_S3C2410_PM_DEBUG is not set
-# CONFIG_S3C2410_PM_CHECK is not set
-CONFIG_PM_SIMTEC=y
-CONFIG_S3C2410_LOWLEVEL_UART_PORT=0
+# CONFIG_MACH_SMDK2443 is not set
#
# Processor Type
@@ -203,6 +228,7 @@ CONFIG_CPU_CP15_MMU=y
# CONFIG_CPU_DCACHE_DISABLE is not set
# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
+# CONFIG_OUTER_CACHE is not set
#
# Bus support
@@ -232,6 +258,7 @@ CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_SPLIT_PTLOCK_CPUS=4096
# CONFIG_RESOURCES_64BIT is not set
+CONFIG_ZONE_DMA_FLAG=1
CONFIG_ALIGNMENT_TRAP=y
#
@@ -241,6 +268,7 @@ CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_CMDLINE="root=/dev/nfs ip=auto rw init=/bin/bash console=ttySAC0"
# CONFIG_XIP_KERNEL is not set
+# CONFIG_KEXEC is not set
#
# Floating point emulation
@@ -268,7 +296,7 @@ CONFIG_PM=y
CONFIG_PM_LEGACY=y
# CONFIG_PM_DEBUG is not set
# CONFIG_PM_SYSFS_DEPRECATED is not set
-CONFIG_APM=y
+# CONFIG_APM_EMULATION is not set
#
# Networking
@@ -284,6 +312,7 @@ CONFIG_UNIX=y
CONFIG_XFRM=y
# CONFIG_XFRM_USER is not set
# CONFIG_XFRM_SUB_POLICY is not set
+# CONFIG_XFRM_MIGRATE is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
@@ -368,6 +397,7 @@ CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_FW_LOADER is not set
# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
#
@@ -393,6 +423,7 @@ CONFIG_MTD_CMDLINE_PARTS=y
# User Modules And Translation Layers
#
CONFIG_MTD_CHAR=y
+CONFIG_MTD_BLKDEVS=y
CONFIG_MTD_BLOCK=y
# CONFIG_FTL is not set
# CONFIG_NFTL is not set
@@ -486,6 +517,7 @@ CONFIG_PARPORT_1284=y
# Plug and Play support
#
# CONFIG_PNP is not set
+# CONFIG_PNPACPI is not set
#
# Block devices
@@ -499,7 +531,6 @@ CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
-CONFIG_BLK_DEV_INITRD=y
# CONFIG_CDROM_PKTCDVD is not set
CONFIG_ATA_OVER_ETH=m
@@ -528,7 +559,6 @@ CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_IDE_BAST=y
# CONFIG_IDE_CHIPSETS is not set
# CONFIG_BLK_DEV_IDEDMA is not set
-# CONFIG_IDEDMA_AUTO is not set
# CONFIG_BLK_DEV_HD is not set
#
@@ -665,6 +695,7 @@ CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_GPIO is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
@@ -675,8 +706,6 @@ CONFIG_MOUSE_PS2=y
# CONFIG_INPUT_JOYSTICK is not set
CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_ADS7846 is not set
-CONFIG_TOUCHSCREEN_S3C2410=y
-# CONFIG_TOUCHSCREEN_S3C2410_DEBUG is not set
# CONFIG_TOUCHSCREEN_GUNZE is not set
# CONFIG_TOUCHSCREEN_ELO is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
@@ -844,12 +873,13 @@ CONFIG_SPI_MASTER=y
#
CONFIG_SPI_BITBANG=y
# CONFIG_SPI_BUTTERFLY is not set
-CONFIG_SPI_S3C24XX_GPIO=y
# CONFIG_SPI_S3C24XX is not set
+CONFIG_SPI_S3C24XX_GPIO=y
#
# SPI Protocol Masters
#
+# CONFIG_SPI_AT25 is not set
#
# Dallas's 1-wire bus
@@ -865,6 +895,7 @@ CONFIG_HWMON_VID=m
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1029 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ADM9240 is not set
# CONFIG_SENSORS_ASB100 is not set
@@ -906,7 +937,11 @@ CONFIG_SENSORS_LM85=m
#
# Misc devices
#
-# CONFIG_TIFM_CORE is not set
+
+#
+# Multifunction device drivers
+#
+# CONFIG_MFD_SM501 is not set
#
# LED devices
@@ -935,8 +970,26 @@ CONFIG_SENSORS_LM85=m
#
# Graphics support
#
+# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
+CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
-# CONFIG_FB is not set
+# CONFIG_FB_DDC is not set
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+# CONFIG_FB_SVGALIB is not set
+# CONFIG_FB_MACMODES is not set
+# CONFIG_FB_BACKLIGHT is not set
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+
+#
+# Frambuffer hardware drivers
+#
+# CONFIG_FB_S1D13XXX is not set
+CONFIG_FB_S3C2410=y
+# CONFIG_FB_S3C2410_DEBUG is not set
+# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
@@ -944,7 +997,19 @@ CONFIG_FIRMWARE_EDID=y
# CONFIG_VGA_CONSOLE is not set
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+# CONFIG_FONTS is not set
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+
+#
+# Logo configuration
+#
+CONFIG_LOGO=y
+CONFIG_LOGO_LINUX_MONO=y
+CONFIG_LOGO_LINUX_VGA16=y
+CONFIG_LOGO_LINUX_CLUT224=y
#
# Sound
@@ -978,6 +1043,7 @@ CONFIG_SND_DEBUG_DETECT=y
# CONFIG_SND_MTS64 is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set
+# CONFIG_SND_PORTMAN2X4 is not set
#
# ALSA ARM devices
@@ -989,16 +1055,12 @@ CONFIG_SND_DEBUG_DETECT=y
# CONFIG_SND_USB_AUDIO is not set
#
-# SoC audio support
+# System on Chip audio support
#
CONFIG_SND_SOC=m
#
-# Soc Platforms
-#
-
-#
-# SoC Audio for the Intel PXA2xx
+# SoC Platforms
#
#
@@ -1006,7 +1068,7 @@ CONFIG_SND_SOC=m
#
#
-# SoC Audio for the Freescale i.MX
+# SoC Audio for the Intel PXA2xx
#
#
@@ -1015,26 +1077,12 @@ CONFIG_SND_SOC=m
CONFIG_SND_S3C24XX_SOC=m
CONFIG_SND_S3C24XX_SOC_I2S=m
CONFIG_SND_S3C24XX_SOC_SMDK2440=m
+# CONFIG_SND_S3C24XX_SOC_SMDK2440_WM8956 is not set
#
-# Soc Codecs
-#
-# CONFIG_SND_SOC_AC97_CODEC is not set
-CONFIG_SND_SOC_WM8711=m
-CONFIG_SND_SOC_WM8510=m
-CONFIG_SND_SOC_WM8731=m
-CONFIG_SND_SOC_WM8750=m
-CONFIG_SND_SOC_WM8753=m
-CONFIG_SND_SOC_WM8772=m
-CONFIG_SND_SOC_WM8971=m
-# CONFIG_SND_SOC_WM8956 is not set
-# CONFIG_SND_SOC_WM8976 is not set
-CONFIG_SND_SOC_WM8974=m
-CONFIG_SND_SOC_WM8980=m
-# CONFIG_SND_SOC_WM9713 is not set
-# CONFIG_SND_SOC_WM9712 is not set
+# SoC Audio for the Freescale i.MX
+#
CONFIG_SND_SOC_UDA1380=m
-CONFIG_SND_SOC_AK4535=m
#
# Open Sound System
@@ -1045,6 +1093,7 @@ CONFIG_SND_SOC_AK4535=m
# HID Devices
#
CONFIG_HID=y
+# CONFIG_HID_DEBUG is not set
#
# USB support
@@ -1059,10 +1108,8 @@ CONFIG_USB=y
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
-# CONFIG_USB_BANDWIDTH is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_SUSPEND is not set
-# CONFIG_USB_MULTITHREAD_PROBE is not set
# CONFIG_USB_OTG is not set
#
@@ -1070,7 +1117,8 @@ CONFIG_USB_DEVICEFS=y
#
# CONFIG_USB_ISP116X_HCD is not set
CONFIG_USB_OHCI_HCD=y
-# CONFIG_USB_OHCI_BIG_ENDIAN is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
# CONFIG_USB_SL811_HCD is not set
@@ -1093,7 +1141,7 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
# USB Input Devices
#
CONFIG_USB_HID=y
-# CONFIG_USB_HID_POWERBOOK is not set
+# CONFIG_USB_HIDINPUT_POWERBOOK is not set
# CONFIG_HID_FF is not set
# CONFIG_USB_HIDDEV is not set
# CONFIG_USB_AIPTEK is not set
@@ -1108,6 +1156,7 @@ CONFIG_USB_HID=y
# CONFIG_USB_ATI_REMOTE2 is not set
# CONFIG_USB_KEYSPAN_REMOTE is not set
# CONFIG_USB_APPLETOUCH is not set
+# CONFIG_USB_GTCO is not set
#
# USB Imaging devices
@@ -1145,6 +1194,7 @@ CONFIG_USB_MON=y
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
+# CONFIG_USB_BERRY_CHARGE is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not set
@@ -1154,6 +1204,7 @@ CONFIG_USB_MON=y
# CONFIG_USB_APPLEDISPLAY is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
# CONFIG_USB_TEST is not set
#
@@ -1368,15 +1419,16 @@ CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_FS is not set
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
+# CONFIG_DEBUG_SHIRQ is not set
CONFIG_LOG_BUF_SHIFT=16
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_SCHEDSTATS is not set
+# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_MUTEXES=y
-# CONFIG_DEBUG_RWSEMS is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
@@ -1387,6 +1439,7 @@ CONFIG_DEBUG_INFO=y
CONFIG_FRAME_POINTER=y
CONFIG_FORCED_INLINING=y
# CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_FAULT_INJECTION is not set
CONFIG_DEBUG_USER=y
# CONFIG_DEBUG_ERRORS is not set
CONFIG_DEBUG_LL=y
@@ -1416,4 +1469,4 @@ CONFIG_CRC32=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_PLIST=y
-CONFIG_IOMAP_COPY=y
+CONFIG_HAS_IOMEM=y
diff --git a/packages/linux/linux-smdk2440/smdk2440-touchscreen-r3.patch b/packages/linux/linux-smdk2440/smdk2440-touchscreen-r3.patch
deleted file mode 100644
index d03fd94017..0000000000
--- a/packages/linux/linux-smdk2440/smdk2440-touchscreen-r3.patch
+++ /dev/null
@@ -1,529 +0,0 @@
-Index: linux-2.6.19/arch/arm/mach-s3c2410/devs.c
-===================================================================
---- linux-2.6.19.orig/arch/arm/mach-s3c2410/devs.c
-+++ linux-2.6.19/arch/arm/mach-s3c2410/devs.c
-@@ -26,6 +26,7 @@
- #include <asm/hardware.h>
- #include <asm/io.h>
- #include <asm/irq.h>
-+#include <asm/arch/ts.h>
-
- #include <asm/arch/regs-serial.h>
-
-@@ -204,6 +205,23 @@ struct platform_device s3c_device_nand =
-
- EXPORT_SYMBOL(s3c_device_nand);
-
-+/* Touchscreen */
-+struct platform_device s3c_device_ts = {
-+ .name = "s3c2410-ts",
-+ .id = -1,
-+};
-+
-+EXPORT_SYMBOL(s3c_device_ts);
-+
-+static struct s3c2410_ts_mach_info s3c2410ts_info;
-+
-+void __init set_s3c2410ts_info(struct s3c2410_ts_mach_info *hard_s3c2410ts_info)
-+{
-+ memcpy(&s3c2410ts_info,hard_s3c2410ts_info,sizeof(struct s3c2410_ts_mach_info));
-+ s3c_device_ts.dev.platform_data = &s3c2410ts_info;
-+}
-+EXPORT_SYMBOL(set_s3c2410ts_info);
-+
- /* USB Device (Gadget)*/
-
- static struct resource s3c_usbgadget_resource[] = {
-Index: linux-2.6.19/arch/arm/mach-s3c2410/devs.h
-===================================================================
---- linux-2.6.19.orig/arch/arm/mach-s3c2410/devs.h
-+++ linux-2.6.19/arch/arm/mach-s3c2410/devs.h
-@@ -41,6 +41,7 @@ extern struct platform_device s3c_device
- extern struct platform_device s3c_device_timer3;
-
- extern struct platform_device s3c_device_usbgadget;
-+extern struct platform_device s3c_device_ts;
-
- /* s3c2440 specific devices */
-
-Index: linux-2.6.19/drivers/input/touchscreen/Kconfig
-===================================================================
---- linux-2.6.19.orig/drivers/input/touchscreen/Kconfig
-+++ linux-2.6.19/drivers/input/touchscreen/Kconfig
-@@ -49,6 +49,24 @@ config TOUCHSCREEN_CORGI
- To compile this driver as a module, choose M here: the
- module will be called corgi_ts.
-
-+config TOUCHSCREEN_S3C2410
-+ tristate "Samsung S3C2410 touchscreen input driver"
-+ depends on ARCH_S3C2410 && INPUT && INPUT_TOUCHSCREEN
-+ select SERIO
-+ help
-+ Say Y here if you have the s3c2410 touchscreen.
-+
-+ If unsure, say N.
-+
-+ To compile this driver as a module, choose M here: the
-+ module will be called s3c2410_ts.
-+
-+config TOUCHSCREEN_S3C2410_DEBUG
-+ boolean "Samsung S3C2410 touchscreen debug messages"
-+ depends on TOUCHSCREEN_S3C2410
-+ help
-+ Select this if you want debug messages
-+
- config TOUCHSCREEN_GUNZE
- tristate "Gunze AHL-51S touchscreen"
- select SERIO
-Index: linux-2.6.19/drivers/input/touchscreen/Makefile
-===================================================================
---- linux-2.6.19.orig/drivers/input/touchscreen/Makefile
-+++ linux-2.6.19/drivers/input/touchscreen/Makefile
-@@ -15,3 +15,5 @@ obj-$(CONFIG_TOUCHSCREEN_HP600) += hp680
- obj-$(CONFIG_TOUCHSCREEN_PENMOUNT) += penmount.o
- obj-$(CONFIG_TOUCHSCREEN_TOUCHRIGHT) += touchright.o
- obj-$(CONFIG_TOUCHSCREEN_TOUCHWIN) += touchwin.o
-+obj-$(CONFIG_TOUCHSCREEN_S3C2410) += s3c2410_ts.o
-+
-Index: linux-2.6.19/drivers/input/touchscreen/s3c2410_ts.c
-===================================================================
---- /dev/null
-+++ linux-2.6.19/drivers/input/touchscreen/s3c2410_ts.c
-@@ -0,0 +1,350 @@
-+/*
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+ *
-+ * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org>
-+ * iPAQ H1940 touchscreen support
-+ *
-+ * ChangeLog
-+ *
-+ * 2004-09-05: Herbert Pƶtzl <herbert@13thfloor.at>
-+ * - added clock (de-)allocation code
-+ *
-+ * 2005-03-06: Arnaud Patard <arnaud.patard@rtp-net.org>
-+ * - h1940_ -> s3c2410 (this driver is now also used on the n30
-+ * machines :P)
-+ * - Debug messages are now enabled with the config option
-+ * TOUCHSCREEN_S3C2410_DEBUG
-+ * - Changed the way the value are read
-+ * - Input subsystem should now work
-+ * - Use ioremap and readl/writel
-+ *
-+ * 2005-03-23: Arnaud Patard <arnaud.patard@rtp-net.org>
-+ * - Make use of some undocumented features of the touchscreen
-+ * controller
-+ *
-+ */
-+
-+#include <linux/errno.h>
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/slab.h>
-+#include <linux/input.h>
-+#include <linux/init.h>
-+#include <linux/serio.h>
-+#include <linux/delay.h>
-+#include <linux/platform_device.h>
-+#include <linux/clk.h>
-+#include <asm/io.h>
-+#include <asm/irq.h>
-+
-+#include <asm/arch/regs-adc.h>
-+#include <asm/arch/regs-gpio.h>
-+#include <asm/arch/ts.h>
-+
-+/* For ts.dev.id.version */
-+#define S3C2410TSVERSION 0x0101
-+
-+#define WAIT4INT(x) (((x)<<8) | \
-+ S3C2410_ADCTSC_YM_SEN | S3C2410_ADCTSC_YP_SEN | S3C2410_ADCTSC_XP_SEN | \
-+ S3C2410_ADCTSC_XY_PST(3))
-+
-+#define AUTOPST (S3C2410_ADCTSC_YM_SEN | S3C2410_ADCTSC_YP_SEN | S3C2410_ADCTSC_XP_SEN | \
-+ S3C2410_ADCTSC_AUTO_PST | S3C2410_ADCTSC_XY_PST(0))
-+
-+#define DEBUG_LVL KERN_DEBUG
-+
-+MODULE_AUTHOR("Arnaud Patard <arnaud.patard@rtp-net.org>");
-+MODULE_DESCRIPTION("s3c2410 touchscreen driver");
-+MODULE_LICENSE("GPL");
-+
-+/*
-+ * Definitions & global arrays.
-+ */
-+
-+
-+static char *s3c2410ts_name = "s3c2410 TouchScreen";
-+
-+/*
-+ * Per-touchscreen data.
-+ */
-+
-+struct s3c2410ts {
-+ struct input_dev *dev;
-+ long xp;
-+ long yp;
-+ int count;
-+ int shift;
-+};
-+
-+static struct s3c2410ts ts;
-+static void __iomem *base_addr;
-+
-+static inline void s3c2410_ts_connect(void)
-+{
-+ s3c2410_gpio_cfgpin(S3C2410_GPG12, S3C2410_GPG12_XMON);
-+ s3c2410_gpio_cfgpin(S3C2410_GPG13, S3C2410_GPG13_nXPON);
-+ s3c2410_gpio_cfgpin(S3C2410_GPG14, S3C2410_GPG14_YMON);
-+ s3c2410_gpio_cfgpin(S3C2410_GPG15, S3C2410_GPG15_nYPON);
-+}
-+
-+static void touch_timer_fire(unsigned long data)
-+{
-+ unsigned long data0;
-+ unsigned long data1;
-+ int updown;
-+
-+ data0 = readl(base_addr+S3C2410_ADCDAT0);
-+ data1 = readl(base_addr+S3C2410_ADCDAT1);
-+
-+ updown = (!(data0 & S3C2410_ADCDAT0_UPDOWN)) && (!(data1 & S3C2410_ADCDAT0_UPDOWN));
-+
-+ if (updown) {
-+ if (ts.count != 0) {
-+ ts.xp >>= ts.shift;
-+ ts.yp >>= ts.shift;
-+
-+#ifdef CONFIG_TOUCHSCREEN_S3C2410_DEBUG
-+ {
-+ struct timeval tv;
-+ do_gettimeofday(&tv);
-+ printk(DEBUG_LVL "T: %06d, X: %03ld, Y: %03ld\n", (int)tv.tv_usec, ts.xp, ts.yp);
-+ }
-+#endif
-+
-+ input_report_abs(ts.dev, ABS_X, ts.xp);
-+ input_report_abs(ts.dev, ABS_Y, ts.yp);
-+
-+ input_report_key(ts.dev, BTN_TOUCH, 1);
-+ input_report_abs(ts.dev, ABS_PRESSURE, 1);
-+ input_sync(ts.dev);
-+ }
-+
-+ ts.xp = 0;
-+ ts.yp = 0;
-+ ts.count = 0;
-+
-+ writel(S3C2410_ADCTSC_PULL_UP_DISABLE | AUTOPST, base_addr+S3C2410_ADCTSC);
-+ writel(readl(base_addr+S3C2410_ADCCON) | S3C2410_ADCCON_ENABLE_START, base_addr+S3C2410_ADCCON);
-+ } else {
-+ ts.count = 0;
-+
-+ input_report_key(ts.dev, BTN_TOUCH, 0);
-+ input_report_abs(ts.dev, ABS_PRESSURE, 0);
-+ input_sync(ts.dev);
-+
-+ writel(WAIT4INT(0), base_addr+S3C2410_ADCTSC);
-+ }
-+}
-+
-+static struct timer_list touch_timer =
-+ TIMER_INITIALIZER(touch_timer_fire, 0, 0);
-+
-+static irqreturn_t stylus_updown(int irq, void *dev_id, struct pt_regs *regs)
-+{
-+ unsigned long data0;
-+ unsigned long data1;
-+ int updown;
-+
-+ data0 = readl(base_addr+S3C2410_ADCDAT0);
-+ data1 = readl(base_addr+S3C2410_ADCDAT1);
-+
-+ updown = (!(data0 & S3C2410_ADCDAT0_UPDOWN)) && (!(data1 & S3C2410_ADCDAT0_UPDOWN));
-+
-+ /* TODO we should never get an interrupt with updown set while
-+ * the timer is running, but maybe we ought to verify that the
-+ * timer isn't running anyways. */
-+
-+ if (updown)
-+ touch_timer_fire(0);
-+
-+ return IRQ_HANDLED;
-+}
-+
-+
-+static irqreturn_t stylus_action(int irq, void *dev_id, struct pt_regs *regs)
-+{
-+ unsigned long data0;
-+ unsigned long data1;
-+
-+ data0 = readl(base_addr+S3C2410_ADCDAT0);
-+ data1 = readl(base_addr+S3C2410_ADCDAT1);
-+
-+ ts.xp += data0 & S3C2410_ADCDAT0_XPDATA_MASK;
-+ ts.yp += data1 & S3C2410_ADCDAT1_YPDATA_MASK;
-+ ts.count++;
-+
-+ if (ts.count < (1<<ts.shift)) {
-+ writel(S3C2410_ADCTSC_PULL_UP_DISABLE | AUTOPST, base_addr+S3C2410_ADCTSC);
-+ writel(readl(base_addr+S3C2410_ADCCON) | S3C2410_ADCCON_ENABLE_START, base_addr+S3C2410_ADCCON);
-+ } else {
-+ mod_timer(&touch_timer, jiffies+1);
-+ writel(WAIT4INT(1), base_addr+S3C2410_ADCTSC);
-+ }
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static struct clk *adc_clock;
-+
-+/*
-+ * The functions for inserting/removing us as a module.
-+ */
-+
-+static int __init s3c2410ts_probe(struct platform_device *pdev)
-+{
-+ struct s3c2410_ts_mach_info *info;
-+ struct input_dev *input_dev;
-+
-+ info = ( struct s3c2410_ts_mach_info *)pdev->dev.platform_data;
-+
-+ if (!info)
-+ {
-+ printk(KERN_ERR "Hm... too bad : no platform data for ts\n");
-+ return -EINVAL;
-+ }
-+
-+#ifdef CONFIG_TOUCHSCREEN_S3C2410_DEBUG
-+ printk(DEBUG_LVL "Entering s3c2410ts_init\n");
-+#endif
-+
-+ adc_clock = clk_get(NULL, "adc");
-+ if (!adc_clock) {
-+ printk(KERN_ERR "failed to get adc clock source\n");
-+ return -ENOENT;
-+ }
-+ clk_enable(adc_clock);
-+
-+#ifdef CONFIG_TOUCHSCREEN_S3C2410_DEBUG
-+ printk(DEBUG_LVL "got and enabled clock\n");
-+#endif
-+
-+ base_addr=ioremap(S3C2410_PA_ADC,0x20);
-+ if (base_addr == NULL) {
-+ printk(KERN_ERR "Failed to remap register block\n");
-+ return -ENOMEM;
-+ }
-+
-+
-+ /* Configure GPIOs */
-+ s3c2410_ts_connect();
-+
-+ if ((info->presc&0xff) > 0)
-+ writel(S3C2410_ADCCON_PRSCEN | S3C2410_ADCCON_PRSCVL(info->presc&0xFF),\
-+ base_addr+S3C2410_ADCCON);
-+ else
-+ writel(0,base_addr+S3C2410_ADCCON);
-+
-+
-+ /* Initialise registers */
-+ if ((info->delay&0xffff) > 0)
-+ writel(info->delay & 0xffff, base_addr+S3C2410_ADCDLY);
-+
-+ writel(WAIT4INT(0), base_addr+S3C2410_ADCTSC);
-+
-+ /* Initialise input stuff */
-+ memset(&ts, 0, sizeof(struct s3c2410ts));
-+ input_dev = input_allocate_device();
-+
-+ if (!input_dev) {
-+ printk(KERN_ERR "Unable to allocate the input device !!\n");
-+ return -ENOMEM;
-+ }
-+
-+ ts.dev = input_dev;
-+ ts.dev->evbit[0] = BIT(EV_SYN) | BIT(EV_KEY) | BIT(EV_ABS);
-+ ts.dev->keybit[LONG(BTN_TOUCH)] = BIT(BTN_TOUCH);
-+ input_set_abs_params(ts.dev, ABS_X, 0, 0x3FF, 0, 0);
-+ input_set_abs_params(ts.dev, ABS_Y, 0, 0x3FF, 0, 0);
-+ input_set_abs_params(ts.dev, ABS_PRESSURE, 0, 1, 0, 0);
-+
-+ ts.dev->private = &ts;
-+ ts.dev->name = s3c2410ts_name;
-+ ts.dev->id.bustype = BUS_RS232;
-+ ts.dev->id.vendor = 0xDEAD;
-+ ts.dev->id.product = 0xBEEF;
-+ ts.dev->id.version = S3C2410TSVERSION;
-+
-+ ts.shift = info->oversampling_shift;
-+
-+ /* Get irqs */
-+ if (request_irq(IRQ_ADC, stylus_action, SA_SAMPLE_RANDOM,
-+ "s3c2410_action", ts.dev)) {
-+ printk(KERN_ERR "s3c2410_ts.c: Could not allocate ts IRQ_ADC !\n");
-+ iounmap(base_addr);
-+ return -EIO;
-+ }
-+ if (request_irq(IRQ_TC, stylus_updown, SA_SAMPLE_RANDOM,
-+ "s3c2410_action", ts.dev)) {
-+ printk(KERN_ERR "s3c2410_ts.c: Could not allocate ts IRQ_TC !\n");
-+ iounmap(base_addr);
-+ return -EIO;
-+ }
-+
-+ printk(KERN_INFO "%s successfully loaded\n", s3c2410ts_name);
-+
-+ /* All went ok, so register to the input system */
-+ input_register_device(ts.dev);
-+
-+ return 0;
-+}
-+
-+static int s3c2410ts_remove(struct platform_device *pdev)
-+{
-+ disable_irq(IRQ_ADC);
-+ disable_irq(IRQ_TC);
-+ free_irq(IRQ_TC,ts.dev);
-+ free_irq(IRQ_ADC,ts.dev);
-+
-+ if (adc_clock) {
-+ clk_disable(adc_clock);
-+ clk_put(adc_clock);
-+ adc_clock = NULL;
-+ }
-+
-+ input_unregister_device(ts.dev);
-+ iounmap(base_addr);
-+
-+ return 0;
-+}
-+
-+static struct platform_driver s3c2410ts_driver = {
-+ .driver = {
-+ .name = "s3c2410-ts",
-+ .owner = THIS_MODULE,
-+ },
-+ .probe = s3c2410ts_probe,
-+ .remove = s3c2410ts_remove,
-+};
-+
-+
-+static int __init s3c2410ts_init(void)
-+{
-+ return platform_driver_register(&s3c2410ts_driver);
-+}
-+
-+static void __exit s3c2410ts_exit(void)
-+{
-+ platform_driver_unregister(&s3c2410ts_driver);
-+}
-+
-+module_init(s3c2410ts_init);
-+module_exit(s3c2410ts_exit);
-+
-+/*
-+ Local variables:
-+ compile-command: "make ARCH=arm CROSS_COMPILE=/usr/local/arm/3.3.2/bin/arm-linux- -k -C ../../.."
-+ c-basic-offset: 8
-+ End:
-+*/
-Index: linux-2.6.19/include/asm-arm/arch-s3c2410/regs-adc.h
-===================================================================
---- linux-2.6.19.orig/include/asm-arm/arch-s3c2410/regs-adc.h
-+++ linux-2.6.19/include/asm-arm/arch-s3c2410/regs-adc.h
-@@ -41,7 +41,7 @@
- #define S3C2410_ADCTSC_XP_SEN (1<<4)
- #define S3C2410_ADCTSC_PULL_UP_DISABLE (1<<3)
- #define S3C2410_ADCTSC_AUTO_PST (1<<2)
--#define S3C2410_ADCTSC_XY_PST (0x3<<0)
-+#define S3C2410_ADCTSC_XY_PST(x) (((x)&0x3)<<0)
-
- /* ADCDAT0 Bits */
- #define S3C2410_ADCDAT0_UPDOWN (1<<15)
-Index: linux-2.6.19/include/asm-arm/arch-s3c2410/ts.h
-===================================================================
---- /dev/null
-+++ linux-2.6.19/include/asm-arm/arch-s3c2410/ts.h
-@@ -0,0 +1,28 @@
-+/* linux/include/asm/arch-s3c2410/ts.h
-+ *
-+ * Copyright (c) 2005 Arnaud Patard <arnaud.patard@rtp-net.org>
-+ *
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ *
-+ *
-+ * Changelog:
-+ * 24-Mar-2005 RTP Created file
-+ * 03-Aug-2005 RTP Renamed to ts.h
-+ */
-+
-+#ifndef __ASM_ARM_TS_H
-+#define __ASM_ARM_TS_H
-+
-+struct s3c2410_ts_mach_info {
-+ int delay;
-+ int presc;
-+ int oversampling_shift;
-+};
-+
-+void __init set_s3c2410ts_info(struct s3c2410_ts_mach_info *hard_s3c2410ts_info);
-+
-+#endif /* __ASM_ARM_TS_H */
-+
-Index: linux-2.6.19/arch/arm/mach-s3c2410/mach-smdk2440.c
-===================================================================
---- linux-2.6.19.orig/arch/arm/mach-s3c2410/mach-smdk2440.c
-+++ linux-2.6.19/arch/arm/mach-s3c2410/mach-smdk2440.c
-@@ -35,6 +35,7 @@
- #include <asm/arch/regs-serial.h>
- #include <asm/arch/regs-gpio.h>
- #include <asm/arch/regs-lcd.h>
-+#include <asm/arch/ts.h>
-
- #include <asm/arch/idle.h>
- #include <asm/arch/fb.h>
-@@ -177,6 +178,7 @@ static struct platform_device *smdk2440_
- &s3c_device_wdt,
- &s3c_device_i2c,
- &s3c_device_iis,
-+ &s3c_device_ts,
- };
-
- static struct s3c24xx_board smdk2440_board __initdata = {
-@@ -184,6 +186,12 @@ static struct s3c24xx_board smdk2440_boa
- .devices_count = ARRAY_SIZE(smdk2440_devices)
- };
-
-+static struct s3c2410_ts_mach_info qt2410_ts_cfg = {
-+ .delay = 10000,
-+ .presc = 49,
-+ .oversampling_shift = 2,
-+};
-+
- static void __init smdk2440_map_io(void)
- {
- s3c24xx_init_io(smdk2440_iodesc, ARRAY_SIZE(smdk2440_iodesc));
-@@ -195,6 +203,7 @@ static void __init smdk2440_map_io(void)
- static void __init smdk2440_machine_init(void)
- {
- s3c24xx_fb_set_platdata(&smdk2440_lcd_cfg);
-+ set_s3c2410ts_info(&qt2410_ts_cfg);
-
- smdk_machine_init();
- }
diff --git a/packages/linux/linux-smdk2440_2.6.19.bb b/packages/linux/linux-smdk2440_2.6.20+git.bb
index 6b839bddf8..ea9cbfb91a 100644
--- a/packages/linux/linux-smdk2440_2.6.19.bb
+++ b/packages/linux/linux-smdk2440_2.6.20+git.bb
@@ -5,13 +5,11 @@ PR = "r1"
GGSRC = "http://www.xora.org.uk/oe/patches/"
-SRC_URI = "ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2 \
- ${GGSRC}smdk2440-cs89x0-r1.patch;patch=1 \
- file://smdk2440-touchscreen-r3.patch;patch=1 \
- http://opensource.wolfsonmicro.com/~lg/asoc/asoc-v0.12.6.patch;patch=1 \
+SRC_URI = "git://opensource.wolfsonmicro.com/linux-2.6-asoc-ggdev;protocol=git;tag=asoc-merge-0002 \
+ file://0001-Enable-cs8900A-network-device-for-smdk2440-board.patch;patch=1 \
file://defconfig-smdk2440"
-S = "${WORKDIR}/linux-${PV}"
+S = "${WORKDIR}/git"
inherit kernel
@@ -30,10 +28,11 @@ do_deploy() {
install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME}.bin
rm -f ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin
ln -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME}.bin ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin
- tar -cvzf ${DEPLOY_DIR_IMAGE}/modules-${KERNEL_VERSION}-${MACHINE}.tgz -C ${D} lib
+ tar -cvzf ${DEPLOY_DIR_IMAGE}/modules-${KERNEL_RELEASE}-${MACHINE}.tgz -C ${D} lib
}
do_deploy[dirs] = "${S}"
addtask deploy before do_package after do_install
+KERNEL_RELEASE = "2.6.21"
diff --git a/packages/meta/meta-sdk-sbox.bb b/packages/meta/meta-sdk-sbox.bb
index 98fb6053c0..1e96e76d5a 100644
--- a/packages/meta/meta-sdk-sbox.bb
+++ b/packages/meta/meta-sdk-sbox.bb
@@ -1,7 +1,7 @@
DESCRIPTION = "Meta package for a Scratchbox SDK"
LICENSE = "MIT"
PACKAGES = ""
-PR = "r4"
+PR = "r5"
inherit rootfs_ipk sdk meta
@@ -16,10 +16,7 @@ FILES_${PN} = "${prefix}"
TARGET_INSTALL = "\
task-sdk-base \
task-sdk-sbox \
- task-sdk-x11 \
- task-sdk-x11-ext \
- task-sdk-gpe \
- task-sdk-gpephone"
+ "
DEPENDS = "ipkg-native ipkg-utils-native fakeroot-native sed-native"
RDEPENDS = "${TARGET_INSTALL}"
diff --git a/packages/meta/meta-sdk.bb b/packages/meta/meta-sdk.bb
index e49858398f..86bb212214 100644
--- a/packages/meta/meta-sdk.bb
+++ b/packages/meta/meta-sdk.bb
@@ -1,7 +1,7 @@
DESCRIPTION = "Meta package for SDK including GPE and Opie"
LICENSE = "MIT"
DEPENDS = "ipkg-native ipkg-utils-native fakeroot-native sed-native"
-PR = "r11"
+PR = "r12"
inherit sdk meta
@@ -19,10 +19,7 @@ HOST_INSTALL = "\
TARGET_INSTALL = "\
task-sdk-base \
- task-sdk-opie \
- task-sdk-x11 \
- task-sdk-x11-ext \
- task-sdk-gpe"
+ "
RDEPENDS = "${TARGET_INSTALL} ${HOST_INSTALL}"
@@ -73,22 +70,22 @@ EOF
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${SDK_OUTPUT}/${prefix}/${TARGET_SYS}/lib/libc.so
# remove unwanted housekeeping files
- mv ${SDK_OUTPUT}${libdir}/../arm-linux/lib/ipkg/status ${SDK_OUTPUT}/${prefix}/package-status
+ mv ${SDK_OUTPUT}${libdir}/../${TARGET_ARCH}-${TARGET_OS}/lib/ipkg/status ${SDK_OUTPUT}/${prefix}/package-status
rm -rf ${SDK_OUTPUT}${libdir}/ipkg
# remove unwanted executables
rm -rf ${SDK_OUTPUT}/${prefix}/sbin ${SDK_OUTPUT}/${prefix}/etc
# remove broken .la files
- rm ${SDK_OUTPUT}/${prefix}/arm-linux/lib/*.la
+ rm ${SDK_OUTPUT}/${prefix}/${TARGET_ARCH}-${TARGET_OS}/lib/*.la
# fix pkgconfig data files
- cd ${SDK_OUTPUT}/${prefix}/arm-linux/lib/pkgconfig
+ cd ${SDK_OUTPUT}/${prefix}/${TARGET_ARCH}-${TARGET_OS}/lib/pkgconfig
for f in *.pc ; do
- sed -i 's%=/usr%=${prefix}/arm-linux%g' "$f"
+ sed -i 's%=/usr%=${prefix}/${TARGET_ARCH}-${TARGET_OS}%g' "$f"
done
for f in *.pc ; do
- sed -i 's%${STAGING_DIR}%/usr/local/arm/oe%g' "$f"
+ sed -i 's%${STAGING_DIR}%/usr/local/${TARGET_ARCH}/oe%g' "$f"
done
mkdir -p ${SDK_DEPLOY}
diff --git a/packages/meta/slugos-packages.bb b/packages/meta/slugos-packages.bb
index 287a8166af..917df6876c 100644
--- a/packages/meta/slugos-packages.bb
+++ b/packages/meta/slugos-packages.bb
@@ -5,7 +5,7 @@
DESCRIPTION = "Packages that are compatible with the SlugOS firmware"
HOMEPAGE = "http://www.nslu2-linux.org"
LICENSE = "MIT"
-PR = "r30"
+PR = "r32"
CONFLICTS = "db3"
COMPATIBLE_MACHINE = "nslu2"
@@ -104,7 +104,6 @@ SLUGOS_PACKAGES = "\
lsof \
lvm2 \
m4 \
- madfu \
madplay \
madwifi-ng \
mailx \
@@ -163,7 +162,6 @@ SLUGOS_PACKAGES = "\
streamripper \
sysfsutils \
tar \
- task-native-sdk \
task-mokogateway-everything \
thttpd \
tiff \
@@ -195,6 +193,7 @@ SLUGOS_BROKEN_PACKAGES = "\
irssi \
libgphoto2 \
logrotate \
+ madfu \
mediatomb \
mpd \
netpbm \
@@ -206,6 +205,7 @@ SLUGOS_BROKEN_PACKAGES = "\
unionfs-utils \
lirc \
pwc \
+ task-native-sdk \
zd1211 \
mysql \
wview-sim-mysql wview-vpro-mysql \
diff --git a/packages/mplayer/files/mplayer-imageon-svn.patch b/packages/mplayer/files/mplayer-imageon-svn.patch
new file mode 100644
index 0000000000..c8bb8709cd
--- /dev/null
+++ b/packages/mplayer/files/mplayer-imageon-svn.patch
@@ -0,0 +1,366 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+Index: trunk/configure
+===================================================================
+--- trunk.orig/configure
++++ trunk/configure
+@@ -519,6 +519,7 @@ _svga=auto
+ _vesa=auto
+ _fbdev=auto
+ _w100=no
++_imageon=no
+ _dvb=auto
+ _dvbhead=auto
+ _dxr2=auto
+@@ -820,6 +821,8 @@ for ac_option do
+ --disable-fbdev) _fbdev=no ;;
+ --enable-w100) _w100=yes ;;
+ --disable-w100) _w100=no ;;
++ --enable-imageon) _imageon=yes ;;
++ --disable-imageon) _imageon=no ;;
+ --enable-dvb) _dvb=yes ;;
+ --disable-dvb) _dvb=no ;;
+ --enable-dvbhead) _dvbhead=yes ;;
+@@ -4329,6 +4332,18 @@ else
+ fi
+ echores "$_w100"
+
++echocheck "ATI Imageon 100 (imageon)"
++if test "$_imageon" = yes ; then
++ _def_imageon='#define HAVE_IMAGEON 1'
++ _ld_imageon='-lw100'
++ _vosrc="$_vosrc vo_imageon.c"
++ _vomodules="imageon $_vomodules"
++else
++ _def_imageon='#undef HAVE_IMAGEON'
++ _novomodules="imageon $_novomodules"
++fi
++echores "$_imageon"
++
+
+ echocheck "DVB"
+ if test "$_dvb" = auto ; then
+@@ -8355,6 +8370,7 @@ $_def_xmga
+ $_def_syncfb
+ $_def_fbdev
+ $_def_w100
++$_def_imageon
+ $_def_dxr2
+ $_def_dxr3
+ $_def_ivtv
+Index: trunk/libvo/vo_imageon.c
+===================================================================
+--- /dev/null
++++ trunk/libvo/vo_imageon.c
+@@ -0,0 +1,308 @@
++#include <stdio.h>
++#include <stdlib.h>
++#include <inttypes.h>
++#include <string.h>
++
++#include <mp_msg.h>
++#include <video_out.h>
++#include <video_out_internal.h>
++
++static vo_info_t info =
++{
++ "ATI IMAGEON 100 driver",
++ "imageon",
++ "Manuel Teira",
++ "C760-Openzaurus Testing version"
++};
++
++LIBVO_EXTERN(imageon)
++
++#include <acapi.h>
++
++static struct w100privdata_t {
++ uint8_t config;
++ ac_device_t *dev;
++ uint16_t xres;
++ uint16_t yres;
++ uint16_t ovwidth;
++ uint16_t ovheight;
++ ac_surface_t insurface;
++ ac_surface_t ovsurface;
++ uint16_t srcwidth;
++ uint16_t srcheight;
++ uint8_t rotate;
++ uint8_t scale;
++ ac_point_t ovdst;
++ ac_point_t dstpos;
++ ac_overlayprops_t ovprops;
++ uint32_t format;
++} w100_privdata;
++
++static int preinit(const char *arg)
++{
++ //Perhaps libw100 should include some code to query the framebuffer
++ struct w100privdata_t *pdata = &w100_privdata;
++
++ pdata->config = 0;
++ pdata->xres = 640;
++ pdata->yres = 480;
++ pdata->dev = ac_init(pdata->xres, pdata->yres, AC_ROT90);
++ if (pdata->dev) {
++ return 0;
++ } else {
++ //Put a log message here
++ return 1;
++ }
++}
++
++
++static void draw_osd(void)
++{
++}
++
++void check_events(void)
++{
++ mp_msg(MSGT_VO, MSGL_V, "check_events got called\n");
++}
++
++static int config(uint32_t srcwidth, uint32_t srcheight,
++ uint32_t dstwidth, uint32_t dstheight,
++ uint32_t flags, char *title, uint32_t format)
++{
++ struct w100privdata_t *pdata = &w100_privdata;
++ uint8_t xscale, yscale;
++ uint16_t scaledwidth, scaledheight;
++
++ mp_msg(MSGT_VO, MSGL_V,
++ "vo_imageon: srcwidth:%d, srcheight:%d, "
++ "dstwidth:%d, dstheight:%d\n",
++ srcwidth, srcheight, dstwidth, dstheight);
++
++ if (pdata->config) {
++ ac_overlay_disable(pdata->dev);
++ ac_free_surface(pdata->dev, &pdata->insurface);
++ ac_free_surface(pdata->dev, &pdata->ovsurface);
++ }
++
++ pdata->srcwidth = srcwidth;
++ pdata->srcheight = srcheight;
++
++ //By the moment, only YUV420 supported
++ pdata->ovprops.format = OVLFORMAT_YUV420;
++ pdata->ovprops.portrait_mode = 0;
++ pdata->ovprops.inv_hor = 0;
++ pdata->ovprops.inv_ver = 0;
++ pdata->ovprops.yuv2rgb = 0;
++
++ pdata->rotate = AC_ROT90;
++
++ if (flags & VOFLAG_FULLSCREEN) {
++ pdata->ovwidth = 240;
++ pdata->ovheight = 320;
++ xscale = ac_get_scaler(pdata->ovheight, srcwidth);
++ yscale = ac_get_scaler(pdata->ovwidth, srcheight);
++ pdata->scale = (xscale > yscale) ? xscale : yscale;
++ pdata->ovdst.x = 0;
++ pdata->ovdst.y = 0;
++ pdata->ovprops.video_hor_exp = 1;
++ pdata->ovprops.video_ver_exp = 1;
++ } else {
++ pdata->ovwidth = (dstheight + 0xf) & ~0xf;
++ pdata->ovheight = (dstwidth + 0xf) & ~0xf;
++ xscale = ac_get_scaler(dstwidth, srcwidth);
++ yscale = ac_get_scaler(dstheight, srcheight);
++ pdata->ovdst.x = (pdata->xres - pdata->ovheight) / 2;
++ pdata->ovdst.y = (pdata->yres - pdata->ovwidth) / 2;
++ pdata->ovprops.video_hor_exp = 0;
++ pdata->ovprops.video_ver_exp = 0;
++ }
++
++ pdata->scale = (xscale > yscale) ? xscale : yscale;
++ scaledwidth = ac_apply_scaler(srcwidth, pdata->scale);
++ scaledheight = ac_apply_scaler(srcheight, pdata->scale);
++ pdata->dstpos.x = (pdata->ovwidth - scaledheight) / 2;
++ pdata->dstpos.y = (pdata->ovheight - scaledwidth) / 2;
++
++ if (ac_alloc_surface(pdata->dev, &pdata->ovsurface,
++ FMT_YUV420,
++ pdata->ovwidth,
++ pdata->ovheight,
++ AC_MEM_INTERNAL) == NULL) {
++ mp_msg(MSGT_VO, MSGL_FATAL, "Unable to allocate ov surface\n");
++ return -1;
++ }
++
++ if (ac_alloc_surface(pdata->dev, &pdata->insurface,
++ FMT_YUV420, srcwidth, srcheight,
++ AC_MEM_INTERNAL) == NULL) {
++ mp_msg(MSGT_VO, MSGL_WARN,
++ "No room in internal memory for insurface\n");
++ if (ac_alloc_surface(pdata->dev, &pdata->insurface,
++ FMT_YUV420, srcwidth, srcheight,
++ AC_MEM_EXTERNAL) == NULL) {
++ mp_msg(MSGT_VO, MSGL_FATAL,
++ "Unable to allocate surface\n");
++ ac_free_surface(pdata->dev, &pdata->ovsurface);
++ return -1;
++ }
++ }
++
++ ac_clear_surface(pdata->dev, &pdata->ovsurface);
++ ac_clear_surface(pdata->dev, &pdata->insurface);
++
++
++ mp_msg(MSGT_VO, MSGL_V,
++ "vo_imageon: rotate:%d scale:%d ovwidth:%d, ovheight:%d, "
++ "ovdst(x:%d, y:%d) dstpos(x:%d,y:%d)\n",
++ pdata->rotate,
++ pdata->scale,
++ pdata->ovwidth,
++ pdata->ovheight,
++ pdata->ovdst.x,
++ pdata->ovdst.y,
++ pdata->dstpos.x,
++ pdata->dstpos.y);
++
++ ac_overlay_setup(pdata->dev, &pdata->ovsurface, &pdata->ovsurface.rect,
++ &pdata->ovprops, 0);
++ ac_overlay_setpos(pdata->dev, &pdata->ovdst);
++ ac_overlay_enable(pdata->dev);
++
++ pdata->config = 1;
++ return 0;
++}
++
++static int draw_slice(uint8_t *image[], int stride[],
++ int w, int h, int x, int y)
++{
++ struct w100privdata_t *pdata = &w100_privdata;
++ ac_rect_t dstrect;
++ ac_surface_t *dstsurface = &pdata->insurface;
++ int plane;
++ mp_msg(MSGT_VO, MSGL_V,
++ "vo_imageon: draw_slice(w:%d,h:%d,x:%d,y:%d)\n",
++ w, h, x, y);
++
++ ac_reset_ctx(pdata->dev);
++ for (plane = 0; plane <= V_PLANE; plane++) {
++ mp_msg(MSGT_VO, MSGL_V, "Plane: %d, Stride: %d\n",
++ plane, stride[plane]);
++ dstrect.x = x;
++ dstrect.y = y;
++ dstrect.w = w;
++ dstrect.h = h;
++ ac_host2planerect(pdata->dev,
++ image[plane],
++ &dstrect,
++ &pdata->insurface,
++ plane);
++ }
++ return 0;
++}
++
++static int draw_frame(uint8_t *frame[])
++{
++ struct w100privdata_t *pdata = &w100_privdata;
++ mp_msg(MSGT_VO, MSGL_V, "vo_imageon: draw_frame() not implemented!\n");
++
++}
++
++static void flip_page(void)
++{
++ struct w100privdata_t *pdata = &w100_privdata;
++ int plane;
++ ac_rect_t srcrect;
++ ac_point_t dstpoint;
++ ac_surface_t *insurface = &pdata->insurface;
++ ac_surface_t *ovsurface = &pdata->ovsurface;
++ ac_surfspec_t *surfspec = &ac_surfspecs[ovsurface->format];
++
++ mp_msg(MSGT_VO, MSGL_V, "vo_imageon: flip_page\n");
++
++ srcrect.x = 0;
++ srcrect.y = 0;
++
++ ac_reset_ctx(pdata->dev);
++ if (pdata->rotate != AC_ROT0) {
++ ac_set_xform(pdata->dev, pdata->rotate, AC_NOMIRROR);
++ }
++ ac_disable_dbuf_update(pdata->dev);
++ ac_waitidle(pdata->dev);
++ for (plane = Y_PLANE; plane < surfspec->nplanes; plane++) {
++ ac_setsrcplane(pdata->dev, insurface, plane);
++ ac_setdstplane(pdata->dev, ovsurface, plane);
++ ac_prepare_scaleblt(pdata->dev, DP_DST_8BPP);
++ srcrect.w = pdata->srcwidth / surfspec->planes[plane].xsubsampling;
++ srcrect.h = pdata->srcheight / surfspec->planes[plane].ysubsampling;
++ dstpoint.x = pdata->dstpos.x / surfspec->planes[plane].xsubsampling;
++ dstpoint.y = pdata->dstpos.y / surfspec->planes[plane].ysubsampling;
++ mp_msg(MSGT_VO, MSGL_V,
++ "vo_imageon: scaleblt src(x:%d,y:%d,w:%d,h:%d)"
++ "dst(%d,%d)"
++ "scale(%d)\n",
++ srcrect.x, srcrect.y,
++ srcrect.w, srcrect.h,
++ dstpoint.x, dstpoint.y,
++ pdata->scale);
++ ac_scaleblt(pdata->dev, &srcrect, &dstpoint,
++ pdata->scale, pdata->scale);
++ }
++ ac_enable_dbuf_update(pdata->dev);
++}
++
++static void uninit(void)
++{
++ struct w100privdata_t *pdata = &w100_privdata;
++ ac_overlay_disable(pdata->dev);
++ ac_finish(pdata->dev);
++}
++
++static int control(uint32_t request, void *data, ...)
++{
++ struct w100privdata_t *pdata = &w100_privdata;
++ switch (request) {
++ case VOCTRL_QUERY_FORMAT:
++ return query_format(*((uint32_t *)data));
++ case VOCTRL_FULLSCREEN:
++ mp_msg(MSGT_VO, MSGL_V, "vo_imageon: Asked for fullscreen\n");
++ }
++ return VO_NOTIMPL;
++}
++
++static int query_format(uint32_t format)
++{
++ mp_msg(MSGT_VO, MSGL_V,
++ "vo_imageon: query_format was called: %x (%s)\n",
++ format, vo_format_name(format));
++
++ if (IMGFMT_IS_RGB(format)) {
++ return 0;
++
++ switch (IMGFMT_RGB_DEPTH(format)) {
++ case 16:
++ return VFCAP_CSP_SUPPORTED | VFCAP_CSP_SUPPORTED_BY_HW |
++ VFCAP_HWSCALE_UP | VFCAP_HWSCALE_DOWN |
++ VFCAP_OSD | VFCAP_ACCEPT_STRIDE;
++ break;
++ }
++ } else {
++ /* Planar YUV Formats */
++ switch (format) {
++ case IMGFMT_YV12:
++ case IMGFMT_IYUV:
++ case IMGFMT_I420:
++ case IMGFMT_YVU9:
++ case IMGFMT_IF09:
++ case IMGFMT_Y8:
++ case IMGFMT_Y800:
++ return VFCAP_CSP_SUPPORTED | VFCAP_CSP_SUPPORTED_BY_HW |
++ VFCAP_HWSCALE_UP | VFCAP_HWSCALE_DOWN |
++ VFCAP_OSD | VFCAP_ACCEPT_STRIDE;
++ break;
++ }
++ }
++
++ return 0;
++}
++
++
diff --git a/packages/tasks/task-sdk-extra.bb b/packages/tasks/task-sdk-extra.bb
new file mode 100644
index 0000000000..805974c9b5
--- /dev/null
+++ b/packages/tasks/task-sdk-extra.bb
@@ -0,0 +1,57 @@
+DESCRIPTION = "SDK packages"
+PR = "r7"
+LICENSE = "MIT"
+ALLOW_EMPTY = "1"
+
+PACKAGES = "\
+ task-sdk-x11 \
+ task-sdk-x11-ext \
+ task-sdk-gpe"
+
+RDEPENDS_task-sdk-x11 := "\
+ atk-dev \
+ cairo-dev \
+ gconf-dbus-dev \
+ gtk+-dev \
+ gtk-engines-dev \
+ libsvg-cairo-dev \
+ libmatchbox-dev \
+ matchbox-desktop-dev \
+ pango-dev \
+ startup-notification-dev"
+
+RDEPENDS_task-sdk-x11-ext := "\
+ libxcursor-dev \
+ libxdmcp-dev \
+ libxft-dev \
+ libxrandr-dev \
+ libxrender-dev \
+ libxsettings-client-dev \
+ randrext-dev \
+ resourceext-dev \
+ libx11-dev \
+ libxau-dev \
+ libxcalibrate-dev \
+ xcalibrateext-dev \
+ libxcomposite-dev \
+ libxdamage-dev \
+ libxext-dev \
+ xextproto-dev \
+ libxfont-dev \
+ libxpm-dev \
+ xproto-dev \
+ libxt-dev \
+ xtrans-dev \
+ libxtst-dev"
+
+
+RDEPENDS_task-sdk-gpe := "\
+ libcontactsdb-dev \
+ esound-dev \
+ libeventdb-dev \
+ libgpepimc-dev \
+ libgpevtype-dev \
+ libgpelaunch-dev \
+ libgpewidget-dev \
+ libhandoff-dev"
+
diff --git a/packages/tasks/task-sdk-sbox.bb b/packages/tasks/task-sdk-sbox.bb
index 67d5ed47f4..3b1051f570 100644
--- a/packages/tasks/task-sdk-sbox.bb
+++ b/packages/tasks/task-sdk-sbox.bb
@@ -1,22 +1,12 @@
DESCRIPTION = "SDK task for Scratchbox rootstraps"
-PR = "r4"
+PR = "r5"
LICENSE = "MIT"
ALLOW_EMPTY = "1"
RDEPENDS := "\
- glib-2.0-utils \
- gdk-pixbuf-loader-png \
- gdk-pixbuf-loader-jpeg \
- gdk-pixbuf-loader-gif \
- gdk-pixbuf-loader-xpm \
- intltool \
- intltool-dev \
strace \
gdb \
sbrsh \
fakeroot \
- matchbox-wm \
- dbus \
- joe \
ipkg \
- " \ No newline at end of file
+ "
diff --git a/packages/tasks/task-sdk.bb b/packages/tasks/task-sdk.bb
index 7039077516..ab64de941c 100644
--- a/packages/tasks/task-sdk.bb
+++ b/packages/tasks/task-sdk.bb
@@ -1,14 +1,12 @@
DESCRIPTION = "SDK packages"
-PR = "r6"
+PR = "r7"
LICENSE = "MIT"
ALLOW_EMPTY = "1"
PACKAGES = "\
task-sdk-bare \
task-sdk-base \
- task-sdk-x11 \
- task-sdk-x11-ext \
- task-sdk-gpe"
+ "
RDEPENDS_task-sdk-bare := "\
glibc \
@@ -20,92 +18,6 @@ RDEPENDS_task-sdk-base := "\
glibc \
glibc-dev \
libgcc1 \
- alsa-dev \
- audiofile-dev \
- bluez-libs-dev \
- dbus-dev \
- expat-dev \
- fontconfig-dev \
- freetype-dev \
- glib-2.0-dev \
- gstreamer-dev \
- libice-dev \
ipkg-dev \
- jpeg-dev \
- libapm-dev \
- alsa-lib-dev \
- libdisplaymigration-dev \
- libetpan-dev \
- libgcrypt-dev \
- libglade-dev \
- gnutls-dev \
- libgpg-error-dev \
- libidl-dev \
- libiw-dev \
- libmimedir-dev \
- libpcap-dev \
- libpixman-dev \
- libpng-dev \
- libschedule-dev \
- libsm-dev \
- libsoundgen-dev \
- libsoup-dev \
- libsvg-dev \
- libtododb-dev \
- libts-dev \
- libxml2-dev \
- ncurses-dev \
- openobex-dev \
- popt-dev \
- readline-dev \
- libsqlite-dev \
- zlib-dev \
- libxmu-dev"
-
-RDEPENDS_task-sdk-x11 := "\
- atk-dev \
- cairo-dev \
- gconf-dbus-dev \
- gtk+-dev \
- gtk-engines-dev \
- libsvg-cairo-dev \
- libmatchbox-dev \
- matchbox-desktop-dev \
- pango-dev \
- startup-notification-dev"
-
-RDEPENDS_task-sdk-x11-ext := "\
- libxcursor-dev \
- libxdmcp-dev \
- libxft-dev \
- libxrandr-dev \
- libxrender-dev \
- libxsettings-client-dev \
- randrext-dev \
- resourceext-dev \
- libx11-dev \
- libxau-dev \
- libxcalibrate-dev \
- xcalibrateext-dev \
- libxcomposite-dev \
- libxdamage-dev \
- libxext-dev \
- xextproto-dev \
- libxfont-dev \
- libxpm-dev \
- xproto-dev \
- libxt-dev \
- xtrans-dev \
- libxtst-dev"
-
-
-RDEPENDS_task-sdk-gpe := "\
- libcontactsdb-dev \
- esound-dev \
- libeventdb-dev \
- libgpepimc-dev \
- libgpevtype-dev \
- libgpelaunch-dev \
- libgpewidget-dev \
- libhandoff-dev"
+ "
diff --git a/packages/tzcode/tzcode-native_2007d.bb b/packages/tzcode/tzcode-native_2007e.bb
index 8e721d6d9a..8e721d6d9a 100644
--- a/packages/tzcode/tzcode-native_2007d.bb
+++ b/packages/tzcode/tzcode-native_2007e.bb
diff --git a/packages/tzdata/tzdata_2007d.bb b/packages/tzdata/tzdata_2007e.bb
index 46d941c269..46d941c269 100644
--- a/packages/tzdata/tzdata_2007d.bb
+++ b/packages/tzdata/tzdata_2007e.bb
diff --git a/packages/xorg-xserver/xserver-kdrive-common.inc b/packages/xorg-xserver/xserver-kdrive-common.inc
index 8674a55e21..02df9d2d4e 100644
--- a/packages/xorg-xserver/xserver-kdrive-common.inc
+++ b/packages/xorg-xserver/xserver-kdrive-common.inc
@@ -107,9 +107,6 @@ KDRIVE_COMMON_PATCHES = " \
SRC_URI_append_mnci = " file://onlyfb.patch;patch=1"
SRC_URI_append_poodle = " file://xserver-kdrive-poodle.patch;patch=1"
PACKAGE_ARCH_poodle = "poodle"
-PACKAGE_ARCH_palmtx = "palmtx"
-PACKAGE_ARCH_palmld = "palmld"
-PACKAGE_ARCH_palmz72 = "palmz72"
inherit autotools pkgconfig
diff --git a/packages/xorg-xserver/xserver-kdrive/w100-fix-offscreen-bmp.patch b/packages/xorg-xserver/xserver-kdrive/w100-fix-offscreen-bmp.patch
new file mode 100644
index 0000000000..39bc22c6b3
--- /dev/null
+++ b/packages/xorg-xserver/xserver-kdrive/w100-fix-offscreen-bmp.patch
@@ -0,0 +1,15 @@
+Patch suggested by Manuel Teira to actually enable offscreen pixmap
+acceleration in Xw100. Value 16 is empirical, works well on hx4700,
+but in case of issues, consider double it (other accelerated drivers
+use bigger values than 16).
+
+--- xorg-server-1.2.0/hw/kdrive/w100/ati_draw.c.org 2007-04-04 10:28:57.000000000 +0000
++++ xorg-server-1.2.0/hw/kdrive/w100/ati_draw.c 2007-04-06 14:43:40.000000000 +0000
+@@ -433,6 +433,7 @@
+ * or kaaPixmapUseScreen. But this is probably caused by some bug in this
+ * driver... */
+ atis->kaa.flags |= KAA_OFFSCREEN_PIXMAPS;
++ atis->kaa.pitchAlign = 16;
+ if (!kaaDrawInit(pScreen, &atis->kaa))
+ return FALSE;
+
diff --git a/packages/xorg-xserver/xserver-kdrive_1.2.0.bb b/packages/xorg-xserver/xserver-kdrive_1.2.0.bb
index cb58eee8a3..2ba1b09923 100644
--- a/packages/xorg-xserver/xserver-kdrive_1.2.0.bb
+++ b/packages/xorg-xserver/xserver-kdrive_1.2.0.bb
@@ -3,12 +3,13 @@ require xserver-kdrive-common.inc
DEPENDS += "libxkbfile libxcalibrate"
PE = "1"
-PR = "r5"
+PR = "r6"
SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \
${KDRIVE_COMMON_PATCHES} \
file://enable-xcalibrate.patch;patch=1 \
file://w100.patch;patch=1 \
+ file://w100-fix-offscreen-bmp.patch;patch=1 \
"
S = "${WORKDIR}/xorg-server-${PV}"
diff --git a/packages/xserver-common/xserver-common_1.16.bb b/packages/xserver-common/xserver-common_1.16.bb
new file mode 100644
index 0000000000..48320ba006
--- /dev/null
+++ b/packages/xserver-common/xserver-common_1.16.bb
@@ -0,0 +1,18 @@
+DESCRIPTION = "Common X11 scripts and support files"
+LICENSE = "GPL"
+SECTION = "x11"
+RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo"
+PR = "r2"
+
+PACKAGE_ARCH = "all"
+
+# we are using a gpe-style Makefile
+inherit gpe
+
+SRC_URI_append = " file://setDPI.sh \
+ file://xserver-imageon.patch;patch=1 \
+ file://calibrate-only-if-ts.patch;patch=1"
+
+do_install_append() {
+ install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi"
+}