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, |
