summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorThomas Kunze <thommycheck@gmx.de>2008-08-15 23:26:52 +0000
committerThomas Kunze <thommycheck@gmx.de>2008-08-15 23:26:52 +0000
commitd7227f99b10c4dae4bb5a9ac778d6e8ed95cb9c5 (patch)
tree2cb6cedd52d0c05da488a64633f9523b99f5a790 /packages
parentc0c8fce62731669a30d7e54256a2717bc4a071ca (diff)
parenta0f8f7ba45003db8d68b7844e535d3ae6020d7ce (diff)
merge of 'a54a6607517e20ec074b70c4070cfa9d989624e1'
and 'df64369ee8c68fc382142171ee6ae2a6494e7e74'
Diffstat (limited to 'packages')
-rw-r--r--packages/atd/atd_0.80.bb14
-rw-r--r--packages/busybox/busybox.inc2
-rw-r--r--packages/busybox/busybox_1.9.2.bb2
-rw-r--r--packages/classpath/classpath.inc8
-rw-r--r--packages/dhcp/dhcp_3.0.1.bb5
-rw-r--r--packages/dhcp/dhcp_3.0.2.bb5
-rw-r--r--packages/gpsbabel/gpsbabel_1.3.5.bb (renamed from packages/gpsbabel/gpsbabel_1.3.3.bb)2
-rw-r--r--packages/gtk-webcore/midori_0.0.19.bb5
-rw-r--r--packages/guile/files/configure-lossage.patch28
-rw-r--r--packages/guile/files/gcc4.patch16
-rw-r--r--packages/guile/guile_1.6.4.bb132
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch275
-rw-r--r--packages/linux/linux-omap2_git.bb3
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-akita2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-bootcdx862
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-c7x02
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-hx20002
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-poodle2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-qemuarm2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-qemux862
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-spitz2
-rw-r--r--packages/linux/linux-rp-2.6.26/defconfig-zylonite2
-rw-r--r--packages/lzma/lzma-native_4.17.bb5
-rw-r--r--packages/nandlogical/nandlogical-static_1.0.0.bb5
-rw-r--r--packages/nandlogical/nandlogical_1.0.0.bb6
-rw-r--r--packages/openmoko2/openmoko-appmanager2_svn.bb5
-rw-r--r--packages/phoneme/.mtn2git_empty0
-rw-r--r--packages/phoneme/files/.mtn2git_empty0
-rw-r--r--packages/phoneme/files/phoneme-makefile-fix.patch144
-rw-r--r--packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb26
-rw-r--r--packages/phoneme/phoneme-advanced.inc160
-rw-r--r--packages/portaudio/portaudio-v19_20071207.bb27
-rw-r--r--packages/portaudio/portaudio-v19_svn.bb29
-rw-r--r--packages/portaudio/portaudio_0.0.19.bb87
-rw-r--r--packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty0
-rw-r--r--packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch42
-rw-r--r--packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff70
-rw-r--r--packages/povray/povray_3.6.1+3.7.0-beta25b.bb42
-rw-r--r--packages/python/python-ptrace_0.3.2.bb10
-rw-r--r--packages/rdesktop/rdesktop_1.6.0.bb13
-rw-r--r--packages/tangogps/files/0004-Update-fix-timestamp-from-gypsy.patch18
-rw-r--r--packages/tangogps/tangogps-fso_0.9.2.bb3
-rw-r--r--packages/tasks/task-python-everything.bb3
-rw-r--r--packages/xorg-lib/pixman/.mtn2git_empty0
-rw-r--r--packages/xorg-lib/pixman/pixman-arm.patch310
-rw-r--r--packages/xorg-lib/pixman_0.11.8.bb18
46 files changed, 1222 insertions, 316 deletions
diff --git a/packages/atd/atd_0.80.bb b/packages/atd/atd_0.80.bb
new file mode 100644
index 0000000000..f3adbd7cb3
--- /dev/null
+++ b/packages/atd/atd_0.80.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Lightweight At Daemon"
+SECTION = "base"
+LICENSE = "GPLV2"
+RCONFLICTS = "at"
+RREPLACES = "at"
+
+PR = "r0"
+
+SRC_URI = "http://projects.linuxtogo.org/frs/download.php/222/${P}.tar.gz"
+
+inherit autotools update-rc.d
+
+INITSCRIPT_NAME = "atd"
+INITSCRIPT_PARAMS = "defaults 97"
diff --git a/packages/busybox/busybox.inc b/packages/busybox/busybox.inc
index 04decf61b2..cc196ad767 100644
--- a/packages/busybox/busybox.inc
+++ b/packages/busybox/busybox.inc
@@ -35,7 +35,7 @@ PACKAGES =+ "${PN}-httpd ${PN}-udhcpd"
# We need this RRECOMMENDS because libc dlopens libgcc
# and shlib mechanism can not detect it because its not
# listed in the NEEDED field.
-RDEPENDS += "libgcc"
+RRECOMMENDS += "libgcc"
FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
FILES_${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd"
diff --git a/packages/busybox/busybox_1.9.2.bb b/packages/busybox/busybox_1.9.2.bb
index c9440e7b4f..37cd2a86be 100644
--- a/packages/busybox/busybox_1.9.2.bb
+++ b/packages/busybox/busybox_1.9.2.bb
@@ -1,5 +1,5 @@
require busybox.inc
-PR = "r1"
+PR = "r2"
SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.gz \
file://udhcpscript.patch;patch=1 \
diff --git a/packages/classpath/classpath.inc b/packages/classpath/classpath.inc
index cfb9f1c089..cee09857e4 100644
--- a/packages/classpath/classpath.inc
+++ b/packages/classpath/classpath.inc
@@ -30,6 +30,14 @@ EXTRA_OECONF = "\
inherit autotools
+# hack to get config.rpath in, it comes from gettext
+do_configure_prepend () {
+
+ ${@['','cp ${STAGING_DATADIR_NATIVE}/automake-1.10/config.rpath ${S}'][bb.data.getVar('PREFERRED_VERSION_automake-native',d,1) == '1.10']}
+
+}
+
+
do_stage() {
install -d ${STAGING_INCDIR}/classpath
install -m 0644 include/jni* ${STAGING_INCDIR}/classpath
diff --git a/packages/dhcp/dhcp_3.0.1.bb b/packages/dhcp/dhcp_3.0.1.bb
index 650de1391d..7d55dc3a03 100644
--- a/packages/dhcp/dhcp_3.0.1.bb
+++ b/packages/dhcp/dhcp_3.0.1.bb
@@ -2,7 +2,7 @@ SECTION = "console/network"
DESCRIPTION = "Internet Software Consortium DHCP package"
HOMEPAGE = "http://www.isc.org/"
LICENSE = "BSD"
-PR = "r2"
+PR = "r3"
SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-3.0-history/dhcp-${PV}.tar.gz \
file://noattrmode.patch;patch=1 \
file://fixincludes.patch;patch=1 \
@@ -33,12 +33,13 @@ do_install() {
install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server
install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf
install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf
+ install -d ${D}/var/lib/dhcp
}
PACKAGES = "${PN}-dbg dhcp-server dhcp-client dhcp-relay dhcp-omshell dhcp-dev dhcp-doc"
FILES_dhcp-server = "${sbindir}/dhcpd /etc/init.d/dhcp-server /etc/default/dhcp-server /etc/dhcp/dhcpd.conf"
FILES_dhcp-relay = "${sbindir}/dhcrelay /etc/init.d/dhcp-relay /etc/default/dhcp-relay"
-FILES_dhcp-client = "/sbin/ /etc/dhcp/dhclient.conf"
+FILES_dhcp-client = "/sbin/ /etc/dhcp/dhclient.conf /var/lib/dhcp"
FILES_dhcp-omshell = "${bindir}/omshell"
CONFFILES_dhcp-server_nylon = "/etc/dhcp/dhcpd.conf"
diff --git a/packages/dhcp/dhcp_3.0.2.bb b/packages/dhcp/dhcp_3.0.2.bb
index 851ae5ca95..6b0f9de1bf 100644
--- a/packages/dhcp/dhcp_3.0.2.bb
+++ b/packages/dhcp/dhcp_3.0.2.bb
@@ -2,7 +2,7 @@ SECTION = "console/network"
DESCRIPTION = "Internet Software Consortium DHCP package"
HOMEPAGE = "http://www.isc.org/"
LICENSE = "BSD"
-PR = "r5"
+PR = "r6"
SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-3.0-history/dhcp-${PV}.tar.gz \
file://noattrmode.patch;patch=1 \
file://fixincludes.patch;patch=1 \
@@ -34,6 +34,7 @@ do_install() {
install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server
install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf
install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf
+ install -d ${D}/var/lib/dhcp
}
PACKAGES += "dhcp-server dhcp-client dhcp-relay dhcp-omshell"
@@ -41,7 +42,7 @@ FILES_${PN} = ""
FILES_dhcp-server = "${sbindir}/dhcpd ${sysconfdir}/init.d/dhcp-server ${sysconfdir}/default/dhcp-server ${sysconfdir}/dhcp/dhcpd.conf"
FILES_dhcp-relay = "${sbindir}/dhcrelay ${sysconfdir}/init.d/dhcp-relay ${sysconfdir}/default/dhcp-relay"
-FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf"
+FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf /var/lib/dhcp"
RDEPENDS_dhcp-client = "bash"
FILES_dhcp-omshell = "${bindir}/omshell"
diff --git a/packages/gpsbabel/gpsbabel_1.3.3.bb b/packages/gpsbabel/gpsbabel_1.3.5.bb
index b5ff6a8510..c46b9df81d 100644
--- a/packages/gpsbabel/gpsbabel_1.3.3.bb
+++ b/packages/gpsbabel/gpsbabel_1.3.5.bb
@@ -6,7 +6,7 @@ LICENSE = "GPL"
PR = "r1"
-SRC_URI = "${SOURCEFORGE_MIRROR}/gpsbabel/gpsbabel-${PV}.tar.gz"
+SRC_URI = "http://www.gpsbabel.org/plan9.php?dl=gpsbabel-${PV}.tar.gz"
inherit autotools pkgconfig
diff --git a/packages/gtk-webcore/midori_0.0.19.bb b/packages/gtk-webcore/midori_0.0.19.bb
new file mode 100644
index 0000000000..ec81d7fd23
--- /dev/null
+++ b/packages/gtk-webcore/midori_0.0.19.bb
@@ -0,0 +1,5 @@
+require midori.inc
+
+SRC_URI = "http://software.twotoasts.de/media/midori/midori-${PV}.tar.bz2"
+
+
diff --git a/packages/guile/files/configure-lossage.patch b/packages/guile/files/configure-lossage.patch
deleted file mode 100644
index da1d0de6e7..0000000000
--- a/packages/guile/files/configure-lossage.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- guile-1.6.4/configure.in~configure-lossage
-+++ guile-1.6.4/configure.in
-@@ -462,7 +462,9 @@
- # explicitly to LIBOBJS to make sure that it is translated to
- # `alloca.lo' for libtool later on. This can and should be done more cleanly.
- AC_FUNC_ALLOCA
--if test "$ALLOCA" = "alloca.o"; then AC_LIBOBJ([alloca]); fi
-+if test "$ALLOCA" = "alloca.o"; then
-+ AC_LIBOBJ([alloca])
-+fi
-
- AC_CHECK_MEMBERS([struct stat.st_rdev])
- AC_CHECK_MEMBERS([struct stat.st_blksize])
---- guile-1.6.4/guile-readline/configure.in~configure-lossage
-+++ guile-1.6.4/guile-readline/configure.in
-@@ -2,6 +2,7 @@
-
- AC_INIT
- AC_CONFIG_SRCDIR([readline.c])
-+AC_CONFIG_AUX_DIR([..])
- . $srcdir/../GUILE-VERSION
- PACKAGE=guile-readline
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
diff --git a/packages/guile/files/gcc4.patch b/packages/guile/files/gcc4.patch
deleted file mode 100644
index 2168683ad5..0000000000
--- a/packages/guile/files/gcc4.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-
-#
-# Signed off by Michael 'Mickey' Lauer <mickey@Vanille.de>
-#
-
---- guile-1.6.4/libguile/guile.c~gcc4
-+++ guile-1.6.4/libguile/guile.c
-@@ -88,7 +88,7 @@
- {
- #ifdef DYNAMIC_LINKING
- /* libtool automagically inserts this variable into your executable... */
-- extern const scm_lt_dlsymlist lt_preloaded_symbols[];
-+ extern const scm_lt_dlsymlist *lt_preloaded_symbols;
- scm_lt_dlpreload_default (lt_preloaded_symbols);
- #endif
- scm_boot_guile (argc, argv, inner_main, 0);
diff --git a/packages/guile/guile_1.6.4.bb b/packages/guile/guile_1.6.4.bb
deleted file mode 100644
index 092a44c27d..0000000000
--- a/packages/guile/guile_1.6.4.bb
+++ /dev/null
@@ -1,132 +0,0 @@
-DESCRIPTION = "Guile is an interpreter for the Scheme programming language, \
-packaged as a library which can be incorporated into your programs."
-HOMEPAGE = "http://www.gnu.org/software/guile/guile.html"
-SECTION = "devel/scheme"
-DEPENDS = "guile-native"
-LICENSE = "GPL"
-PR = "r1"
-
-SRC_URI = "http://ftp.gnu.org/pub/gnu/guile/guile-${PV}.tar.gz \
- file://configure-lossage.patch;patch=1 \
- file://gcc4.patch;patch=1"
-
-inherit autotools
-
-acpaths = "-I ${S}/guile-config"
-
-do_compile() {
- (cd libguile; oe_runmake CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" LDFLAGS="${BUILD_LDFLAGS}" guile_filter_doc_snarfage)
- oe_runmake preinstguile="`which guile`"
-}
-
-LIBGUILE_HEADERS = "\
-__scm.h \
-alist.h \
-arbiters.h \
-async.h \
-backtrace.h \
-boolean.h \
-chars.h \
-continuations.h \
-coop-defs.h \
-debug-malloc.h \
-debug.h \
-deprecation.h \
-dynl.h \
-dynwind.h \
-environments.h \
-eq.h \
-error.h \
-eval.h \
-evalext.h \
-extensions.h \
-feature.h \
-filesys.h \
-fluids.h \
-fports.h \
-gc.h \
-gdb_interface.h \
-gdbint.h \
-goops.h \
-gsubr.h \
-guardians.h \
-hash.h \
-hashtab.h \
-hooks.h \
-init.h \
-ioext.h \
-iselect.h \
-keywords.h \
-lang.h \
-list.h \
-load.h \
-macros.h \
-mallocs.h \
-modules.h \
-net_db.h \
-numbers.h \
-objects.h \
-objprop.h \
-options.h \
-pairs.h \
-ports.h \
-posix.h \
-print.h \
-procprop.h \
-procs.h \
-properties.h \
-ramap.h \
-random.h \
-rdelim.h \
-read.h \
-regex-posix.h \
-root.h \
-rw.h \
-scmconfig.h \
-scmsigs.h \
-script.h \
-simpos.h \
-smob.h \
-snarf.h \
-socket.h \
-sort.h \
-srcprop.h \
-stackchk.h \
-stacks.h \
-stime.h \
-strings.h \
-strop.h \
-strorder.h \
-strports.h \
-struct.h \
-symbols.h \
-tags.h \
-threads.h \
-throw.h \
-unif.h \
-validate.h \
-values.h \
-variable.h \
-vectors.h \
-version.h \
-vports.h \
-weaks.h \
-"
-
-do_stage() {
- install -d ${STAGING_INCDIR}/libguile
- for i in ${LIBGUILE_HEADERS}; do
- install -m 0644 libguile/$i ${STAGING_INCDIR}/libguile/$i
- done
- install -m 0644 libguile.h ${STAGING_INCDIR}/libguile.h
- install -d ${STAGING_INCDIR}/guile
- install -m 0644 libguile/gh.h ${STAGING_INCDIR}/guile/
- install -d ${STAGING_INCDIR}/guile/srfi
- install -d ${STAGING_INCDIR}/guile-readline
- install -m 0644 guile-readline/readline.h ${STAGING_INCDIR}/guile-readline/
- install -d ${STAGING_DATADIR}/aclocal
- install -m 0644 guile-config/guile.m4 ${STAGING_DATADIR}/aclocal
- oe_libinstall -C libguile -so -a libguile ${STAGING_LIBDIR}
- oe_libinstall -C guile-readline -so -a libguilereadline-v-12 ${STAGING_LIBDIR}
- oe_libinstall -C libguile-ltdl -so -a libguile-ltdl ${STAGING_LIBDIR}
-}
diff --git a/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch b/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch
new file mode 100644
index 0000000000..968cc6cf73
--- /dev/null
+++ b/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch
@@ -0,0 +1,275 @@
+From: Gadiyar, Anand <gadiyar@ti.com>
+Date: Wed, 13 Aug 2008 07:05:29 +0000 (+0530)
+Subject: MUSB: Workaround for simultaneous TX and RX usage
+X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=2e6aa4efb0e14c51ff0427927b1b38136911fa93
+
+MUSB: Workaround for simultaneous TX and RX usage
+
+MUSB: Workaround for simultaneous TX and RX usage
+
+MUSB RTL V1.4 has a hardware issue which results in a DMA controller
+hang when TX and RX DMA channels are simultaneously enabled. This
+affects at least OMAP2430 and OMAP34XX.
+
+Since RX transfers are in Mode 0 and anyway result in one DMA interrupt
+per packet, we can use System DMA to unload the RX fifos. MUSB DMA can
+be used for all TX channels as before.
+
+Tested with full-duplex TX and RX transfers using g_ether. Runs for 24
+hours without a hang. Without this patch, the hang occurs within minutes.
+
+This issue was first reported by Jon Hunter on [1]
+
+[1] http://marc.info/?l=linux-omap&m=119634480534453&w=2
+
+Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
+---
+
+diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
+index a485a86..8583e54 100644
+--- a/drivers/usb/musb/Kconfig
++++ b/drivers/usb/musb/Kconfig
+@@ -150,6 +150,14 @@ config USB_INVENTRA_DMA
+ help
+ Enable DMA transfers using Mentor's engine.
+
++config MUSB_USE_SYSTEM_DMA_RX
++ bool 'Use System DMA for RX endpoints'
++ depends on USB_MUSB_HDRC && USB_INVENTRA_DMA
++ help
++ MUSB RTL version 1.4 has a hardware issue when TX and RX DMA
++ channels are simultaneously enabled. To work around this issue,
++ you can choose to use System DMA for RX channels.
++
+ config USB_TI_CPPI_DMA
+ bool
+ depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY
+diff --git a/drivers/usb/musb/musbhsdma.c b/drivers/usb/musb/musbhsdma.c
+index 32bb1e2..d1c1ea0 100644
+--- a/drivers/usb/musb/musbhsdma.c
++++ b/drivers/usb/musb/musbhsdma.c
+@@ -34,6 +34,7 @@
+ #include <linux/interrupt.h>
+ #include <linux/platform_device.h>
+ #include "musb_core.h"
++#include <asm/arch/dma.h>
+
+ #if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430)
+ #include "omap2430.h"
+@@ -64,6 +65,9 @@
+
+ #define MUSB_HSDMA_CHANNELS 8
+
++#define MUSB_FIFO_ADDRESS(epnum) \
++ ((unsigned long) (OMAP_HSOTG_BASE + MUSB_FIFO_OFFSET(epnum)))
++
+ struct musb_dma_controller;
+
+ struct musb_dma_channel {
+@@ -75,6 +79,8 @@ struct musb_dma_channel {
+ u8 bIndex;
+ u8 epnum;
+ u8 transmit;
++
++ int sysdma_channel;
+ };
+
+ struct musb_dma_controller {
+@@ -93,6 +99,42 @@ static int dma_controller_start(struct dma_controller *c)
+ return 0;
+ }
+
++#ifdef CONFIG_MUSB_USE_SYSTEM_DMA_RX
++static void musb_sysdma_completion(int lch, u16 ch_status, void *data)
++{
++ u32 dwAddress;
++ unsigned long flags;
++
++ struct dma_channel *pChannel;
++
++ struct musb_dma_channel *pImplChannel =
++ (struct musb_dma_channel *) data;
++ struct musb_dma_controller *controller = pImplChannel->controller;
++ struct musb *musb = controller->pDmaPrivate;
++ pChannel = &pImplChannel->Channel;
++
++ DBG(2, "lch = 0x%d, ch_status = 0x%x\n", lch, ch_status);
++ spin_lock_irqsave(&musb->lock, flags);
++
++ dwAddress = (u32) omap_get_dma_dst_pos(pImplChannel->sysdma_channel);
++ pChannel->actual_len = dwAddress - pImplChannel->dwStartAddress;
++
++ DBG(2, "ch %p, 0x%x -> 0x%x (%d / %d) %s\n",
++ pChannel, pImplChannel->dwStartAddress, dwAddress,
++ pChannel->actual_len, pImplChannel->len,
++ (pChannel->actual_len < pImplChannel->len) ?
++ "=> reconfig 0": "=> complete");
++
++ pChannel->status = MUSB_DMA_STATUS_FREE;
++ musb_dma_completion(musb, pImplChannel->epnum, pImplChannel->transmit);
++
++ spin_unlock_irqrestore(&musb->lock, flags);
++ return;
++}
++#else
++#define musb_sysdma_completion NULL
++#endif
++
+ static void dma_channel_release(struct dma_channel *pChannel);
+
+ static int dma_controller_stop(struct dma_controller *c)
+@@ -144,6 +186,29 @@ static struct dma_channel *dma_channel_allocate(struct dma_controller *c,
+ /* Tx => mode 1; Rx => mode 0 */
+ pChannel->desired_mode = transmit;
+ pChannel->actual_len = 0;
++ pImplChannel->sysdma_channel = -1;
++
++#ifdef CONFIG_MUSB_USE_SYSTEM_DMA_RX
++ if (!transmit) {
++ int ret;
++ ret = omap_request_dma(OMAP24XX_DMA_NO_DEVICE,
++ "MUSB SysDMA", musb_sysdma_completion,
++ (void *) pImplChannel,
++ &(pImplChannel->sysdma_channel));
++
++ if (ret) {
++ printk(KERN_ERR "request_dma failed:"
++ " %d\n", ret);
++ controller->bmUsedChannels &=
++ ~(1 << bBit);
++ pChannel->status =
++ MUSB_DMA_STATUS_UNKNOWN;
++ pImplChannel->sysdma_channel = -1;
++ pChannel = NULL;
++ }
++ }
++#endif
++
+ break;
+ }
+ }
+@@ -163,6 +228,12 @@ static void dma_channel_release(struct dma_channel *pChannel)
+ ~(1 << pImplChannel->bIndex);
+
+ pChannel->status = MUSB_DMA_STATUS_UNKNOWN;
++
++ if (pImplChannel->sysdma_channel != -1) {
++ omap_stop_dma(pImplChannel->sysdma_channel);
++ omap_free_dma(pImplChannel->sysdma_channel);
++ pImplChannel->sysdma_channel = -1;
++ }
+ }
+
+ static void configure_channel(struct dma_channel *pChannel,
+@@ -179,41 +250,69 @@ static void configure_channel(struct dma_channel *pChannel,
+ DBG(4, "%p, pkt_sz %d, addr 0x%x, len %d, mode %d\n",
+ pChannel, packet_sz, dma_addr, len, mode);
+
+- if (mode) {
+- csr |= 1 << MUSB_HSDMA_MODE1_SHIFT;
+- BUG_ON(len < packet_sz);
++ if (pImplChannel->sysdma_channel != -1) {
++ /* System DMA */
++ /* RX: set src = FIFO */
++
++ omap_set_dma_transfer_params(pImplChannel->sysdma_channel,
++ OMAP_DMA_DATA_TYPE_S8,
++ len, 1, /* One frame */
++ OMAP_DMA_SYNC_ELEMENT,
++ OMAP24XX_DMA_NO_DEVICE,
++ 0); /* Src Sync */
++
++ omap_set_dma_src_params(pImplChannel->sysdma_channel, 0,
++ OMAP_DMA_AMODE_CONSTANT,
++ MUSB_FIFO_ADDRESS(pImplChannel->epnum),
++ 0, 0);
+
+- if (packet_sz >= 64) {
+- csr |= MUSB_HSDMA_BURSTMODE_INCR16
++ omap_set_dma_dest_params(pImplChannel->sysdma_channel, 0,
++ OMAP_DMA_AMODE_POST_INC, dma_addr,
++ 0, 0);
++
++ omap_set_dma_dest_data_pack(pImplChannel->sysdma_channel, 1);
++ omap_set_dma_dest_burst_mode(pImplChannel->sysdma_channel,
++ OMAP_DMA_DATA_BURST_16);
++
++ omap_start_dma(pImplChannel->sysdma_channel);
++
++ } else { /* Mentor DMA */
++ if (mode) {
++ csr |= 1 << MUSB_HSDMA_MODE1_SHIFT;
++ BUG_ON(len < packet_sz);
++
++ if (packet_sz >= 64) {
++ csr |= MUSB_HSDMA_BURSTMODE_INCR16
+ << MUSB_HSDMA_BURSTMODE_SHIFT;
+- } else if (packet_sz >= 32) {
+- csr |= MUSB_HSDMA_BURSTMODE_INCR8
++ } else if (packet_sz >= 32) {
++ csr |= MUSB_HSDMA_BURSTMODE_INCR8
+ << MUSB_HSDMA_BURSTMODE_SHIFT;
+- } else if (packet_sz >= 16) {
+- csr |= MUSB_HSDMA_BURSTMODE_INCR4
++ } else if (packet_sz >= 16) {
++ csr |= MUSB_HSDMA_BURSTMODE_INCR4
+ << MUSB_HSDMA_BURSTMODE_SHIFT;
++ }
+ }
+- }
+
+- csr |= (pImplChannel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT)
+- | (1 << MUSB_HSDMA_ENABLE_SHIFT)
+- | (1 << MUSB_HSDMA_IRQENABLE_SHIFT)
+- | (pImplChannel->transmit
+- ? (1 << MUSB_HSDMA_TRANSMIT_SHIFT)
+- : 0);
+-
+- /* address/count */
+- musb_writel(mbase,
+- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_ADDRESS),
+- dma_addr);
+- musb_writel(mbase,
+- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_COUNT),
+- len);
+-
+- /* control (this should start things) */
+- musb_writew(mbase,
+- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_CONTROL),
+- csr);
++ csr |= (pImplChannel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT)
++ | (1 << MUSB_HSDMA_ENABLE_SHIFT)
++ | (1 << MUSB_HSDMA_IRQENABLE_SHIFT)
++ | (pImplChannel->transmit
++ ? (1 << MUSB_HSDMA_TRANSMIT_SHIFT)
++ : 0);
++
++ /* address/count */
++ musb_writel(mbase,
++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_ADDRESS),
++ dma_addr);
++ musb_writel(mbase,
++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_COUNT),
++ len);
++
++ /* control (this should start things) */
++ musb_writew(mbase,
++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_CONTROL),
++ csr);
++ } /* Mentor DMA */
+ }
+
+ static int dma_channel_program(struct dma_channel *pChannel,
+@@ -265,6 +364,12 @@ static int dma_channel_abort(struct dma_channel *pChannel)
+ MUSB_EP_OFFSET(pImplChannel->epnum, MUSB_TXCSR),
+ csr);
+ } else {
++ if (pImplChannel->sysdma_channel != -1) {
++ omap_stop_dma(pImplChannel->sysdma_channel);
++ omap_free_dma(pImplChannel->sysdma_channel);
++ pImplChannel->sysdma_channel = -1;
++ }
++
+ csr = musb_readw(mbase,
+ MUSB_EP_OFFSET(pImplChannel->epnum, MUSB_RXCSR));
+ csr &= ~(MUSB_RXCSR_AUTOCLEAR |
diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb
index 8682c33404..f032f076e8 100644
--- a/packages/linux/linux-omap2_git.bb
+++ b/packages/linux/linux-omap2_git.bb
@@ -6,7 +6,7 @@ SRCREV = "d6daf8d8cc5ccf90247def5551ee9c3e8555e848"
PV = "2.6.26"
#PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}"
-PR = "r60"
+PR = "r61"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git;protocol=git \
file://defconfig"
@@ -52,6 +52,7 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \
file://02-postrate-notifier.eml;patch=1 \
file://01-omap3-cpufreq.eml;patch=1 \
file://01-beagle-cpufreq.diff;patch=1 \
+ file://musb-dmafix.patch;patch=1 \
"
SRC_URI_append_omap3evm = " file://no-harry-potter.diff;patch=1 \
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-akita b/packages/linux/linux-rp-2.6.26/defconfig-akita
index e630a9abff..27f5dcb781 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-akita
+++ b/packages/linux/linux-rp-2.6.26/defconfig-akita
@@ -1255,7 +1255,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-# CONFIG_USB_SERIAL_CP2101 is not set
+CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
diff --git a/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 b/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86
index 35e9b5cd22..397468a366 100644
--- a/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86
+++ b/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86
@@ -1612,7 +1612,7 @@ CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m