diff options
author | Rolf Leggewie <oe-devel@rolf.leggewie.biz> | 2007-04-07 06:31:31 +0000 |
---|---|---|
committer | Rolf Leggewie <oe-devel@rolf.leggewie.biz> | 2007-04-07 06:31:31 +0000 |
commit | d57ad0d30ce194627146ebb970493d6947a0a744 (patch) | |
tree | 6c7e45a63eebf83755b9d0bb2a87fb0a627751c5 /packages | |
parent | a80e9ebf17143da2f5c5349e1615068ac2032df2 (diff) | |
parent | fdc7fdcb290bc46bc52e2b5b40c0cf1b9fcac8b1 (diff) |
merge of '351a1d2f8971414b26915d2d5c883576729b53f9'
and 'c6346a6de5d825ca4ddd2b7129cbcaeaf371c86a'
Diffstat (limited to 'packages')
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§ion=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" +} |