summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/dsplink/codec-engine_2.10.bb5
-rw-r--r--packages/dsplink/dsplink_1.50.bb2
-rw-r--r--packages/dsplink/files/ticel-config53
-rw-r--r--packages/ffmpeg/ffmpeg_git.bb6
-rw-r--r--packages/ffmpeg/omapfbplay_git.bb4
-rw-r--r--packages/freesmartphone/frameworkd_git.bb10
-rw-r--r--packages/gypsy/gypsy.inc2
-rw-r--r--packages/gypsy/gypsy_svn.bb8
-rw-r--r--packages/images/fso-image-console.bb13
-rw-r--r--packages/linux/linux-kaiser_2.6.24+git.bb5
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/01-gptimer_maintain_tldr_lt_0xffffffff64
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/02-gptimer_clear_tocr98
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/03-gptimer_double_write_tocr25
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug105
-rw-r--r--packages/linux/linux-omap2-git/beagleboard/serialfix.diff18
-rw-r--r--packages/linux/linux-omap2_git.bb7
-rw-r--r--packages/linux/linux-rp-2.6.26/zaurus-i2c-init.patch73
-rw-r--r--packages/linux/linux-rp_2.6.26.bb2
-rw-r--r--packages/swfdec/swfdec-mozilla_0.7.4.bb19
-rw-r--r--packages/swfdec/swfdec_0.7.4.bb26
-rw-r--r--packages/u-boot/u-boot_git.bb4
21 files changed, 414 insertions, 135 deletions
diff --git a/packages/dsplink/codec-engine_2.10.bb b/packages/dsplink/codec-engine_2.10.bb
index 83102a0afe..0e85d38a82 100644
--- a/packages/dsplink/codec-engine_2.10.bb
+++ b/packages/dsplink/codec-engine_2.10.bb
@@ -14,7 +14,6 @@ PV = "2.10"
SRC_URI = "http://install.tarball.in.source.dir/codec_engine_2_10_01.tar.gz \
file://xdcpaths.mak \
- file://ticel-config \
"
S = "${WORKDIR}/codec_engine_2_10_01"
@@ -137,10 +136,6 @@ do_stage() {
cp -pPr $header ${STAGING_INCDIR}/codec-engine/$(echo $header | sed s:${S}::g)
done
- sed -i -e s:SEDME_CFLAGS:"-I${TITOOLSDIR}/${TIBIOSDIR}/xdctools/packages -I${STAGING_INCDIR}/codec-engine/packages -I${STAGING_INCDIR}/codec-engine/cetools/packages/":g \
- -e s:SEDME_STAGINGLIBDIR:${STAGING_LIBDIR}:g \
- ${WORKDIR}/ticel-config
- install -m 0755 ${WORKDIR}/ticel-config ${STAGING_BINDIR_CROSS}
}
pkg_postinst_${PN}-module () {
diff --git a/packages/dsplink/dsplink_1.50.bb b/packages/dsplink/dsplink_1.50.bb
index 965c735798..62a352e43c 100644
--- a/packages/dsplink/dsplink_1.50.bb
+++ b/packages/dsplink/dsplink_1.50.bb
@@ -1,6 +1,6 @@
require dsplink.inc
-PR = "r9"
+PR = "r10"
PE = "1"
PV = "1.50"
diff --git a/packages/dsplink/files/ticel-config b/packages/dsplink/files/ticel-config
deleted file mode 100644
index 75ebddae75..0000000000
--- a/packages/dsplink/files/ticel-config
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-
-LIBS=""
-for lib in \
- TraceUtil.a \
- bioslog.a \
- video.a \
- audio.a \
- speech.a \
- ce.a \
- Algorithm_noOS.a \
- alg.a \
- osal_linux_470.a \
- dman3Cfg.a \
- acpy3.a \
- cmem.a \
- dsplink.lib \
- XdmUtils.a \
- gt.a
-do
- LIBS="${LIBS} SEDME_STAGINGLIBDIR/${lib}"
-done
-
-CFLAGS="SEDME_CFLAGS"
-
-usage()
-{
- echo "Usage : $0 [--cflags] [--libs]"
- exit 1
-}
-
-test "$#" = 0 && usage
-
-OUT=""
-while test "$#" -gt 0;
-do
- case "$1" in
- "--cflags")
- OUT="${OUT} ${CFLAGS}"
- ;;
- "--libs")
- OUT="${OUT} ${LIBDIRS} ${LIBS}"
- ;;
- *)
- usage
- ;;
- esac
-
- shift
-done
-
-echo "${OUT}"
-exit 0
diff --git a/packages/ffmpeg/ffmpeg_git.bb b/packages/ffmpeg/ffmpeg_git.bb
index e45ea4b6e6..e94f8698f7 100644
--- a/packages/ffmpeg/ffmpeg_git.bb
+++ b/packages/ffmpeg/ffmpeg_git.bb
@@ -3,16 +3,18 @@ require ffmpeg.inc
DEPENDS += "libgsm"
PV = "0.4.9+${PR}+gitr${SRCREV}"
-PR = "r18"
+PR = "r19"
DEFAULT_PREFERENCE = "-1"
+DEFAULT_PREFERENCE_armv5te = "1"
+DEFAULT_PREFERENCE_armv6 = "1"
DEFAULT_PREFERENCE_armv7a = "1"
FFBRANCH_arm = "arm-neon"
FFBRANCH ?= "master"
SRCREV = "3692b8de9fae73860be636606cb6344f26e28b1a"
-SRCREV_arm = "c6bbb0c33f6f681b8265a43f8744735de5a9d45e"
+SRCREV_arm = "a3f0e289611cb79254ea8ba01923a6693422679d"
SRC_URI = "git://git.mansr.com/ffmpeg.mru;protocol=git;branch=${FFBRANCH} \
"
diff --git a/packages/ffmpeg/omapfbplay_git.bb b/packages/ffmpeg/omapfbplay_git.bb
index 1260c0ecc1..890ed31e20 100644
--- a/packages/ffmpeg/omapfbplay_git.bb
+++ b/packages/ffmpeg/omapfbplay_git.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "Simple ffmpeg-based player that uses the omapfb overlays"
DEPENDS = "bzip2 lame ffmpeg virtual/kernel"
LICENSE = "MIT"
-PR = "r8"
+PR = "r9"
inherit module-base
@@ -15,7 +15,7 @@ SRC_URI = "git://git.mansr.com/${PN};protocol=git \
S = "${WORKDIR}/git"
-CFLAGS += " -static -I${STAGING_KERNEL_DIR}/include "
+CFLAGS += " -I${STAGING_KERNEL_DIR}/include "
do_compile() {
oe_runmake -e
diff --git a/packages/freesmartphone/frameworkd_git.bb b/packages/freesmartphone/frameworkd_git.bb
index 08c43f907a..040c483c76 100644
--- a/packages/freesmartphone/frameworkd_git.bb
+++ b/packages/freesmartphone/frameworkd_git.bb
@@ -4,8 +4,8 @@ AUTHOR = "Michael 'Mickey' Lauer <mlauer@vanille-media.de> et. al."
SECTION = "console/network"
DEPENDS = "python-cython-native python-pyrex-native"
LICENSE = "GPL"
-PV = "0.8.1+gitr${SRCREV}"
-PR = "r12"
+PV = "0.8.2+gitr${SRCREV}"
+PR = "r0"
inherit distutils update-rc.d
@@ -21,8 +21,6 @@ do_install_append() {
install -d ${D}${sysconfdir}/init.d/
install -m 0755 ${WORKDIR}/frameworkd ${D}${sysconfdir}/init.d/
install -m 0644 ${WORKDIR}/frameworkd.conf ${D}${sysconfdir}
- install -d ${D}${sysconfdir}/dbus-1/system.d/
- mv -f ${D}${datadir}/etc/dbus-1/system.d/frameworkd.conf ${D}${sysconfdir}/dbus-1/system.d/
}
RDEPENDS_${PN} += "\
@@ -42,8 +40,8 @@ RDEPENDS_${PN} += "\
PACKAGES =+ "${PN}-config"
PACKAGE_ARCH_${PN}-config = "${MACHINE_ARCH}"
-FILES_${PN}-config = "${sysconfdir}"
+FILES_${PN}-config = "${sysconfdir}/frameworkd.conf"
PACKAGE_ARCH_${PN} = "${BASE_PACKAGE_ARCH}"
-FILES_${PN} += "${datadir}"
+FILES_${PN} += "${sysconfdir}/dbus-1 ${sysconfdir}/freesmartphone ${sysconfdir}/init.d ${datadir}"
FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/framework/subsystems/*/.debug"
diff --git a/packages/gypsy/gypsy.inc b/packages/gypsy/gypsy.inc
index 57f88dc3bd..df5e1c7da3 100644
--- a/packages/gypsy/gypsy.inc
+++ b/packages/gypsy/gypsy.inc
@@ -1,7 +1,7 @@
DESCRIPTION = "GPS Controlling Daemon"
LICENSE = "GPL"
SECTION = "x11"
-DEPENDS = "glib-2.0 dbus bluez-libs"
+DEPENDS = "glib-2.0 dbus-glib bluez-libs libxslt-native"
inherit autotools pkgconfig
diff --git a/packages/gypsy/gypsy_svn.bb b/packages/gypsy/gypsy_svn.bb
index ed5d45537b..1fcc47e828 100644
--- a/packages/gypsy/gypsy_svn.bb
+++ b/packages/gypsy/gypsy_svn.bb
@@ -1,13 +1,9 @@
require gypsy.inc
-DEFAULT_PREFERENCE = "-1"
-
SRC_URI = "svn://svn.o-hand.com/repos/${PN}/trunk;module=${PN};proto=http \
file://fixups.patch;patch=1;maxrev=107 \
file://docs-reference-am.patch;patch=1;minrev=134"
-
-PR = "1"
-PV = "0.0+svnr${SRCREV}"
S = "${WORKDIR}/${PN}"
-DEPENDS = "libxslt-native"
+PV = "0.0+svnr${SRCREV}"
+PR = "r1"
diff --git a/packages/images/fso-image-console.bb b/packages/images/fso-image-console.bb
deleted file mode 100644
index 8e0e360f9c..0000000000
--- a/packages/images/fso-image-console.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-#------------------------------------------------------
-# freesmartphone.org Console Image Recipe
-#------------------------------------------------------
-
-require fso-image.bb
-
-IMAGE_INSTALL = "\
- ${BASE_INSTALL} \
- ${AUDIO_INSTALL} \
- ${TOOLS_INSTALL} \
- ${PYTHON_INSTALL} \
-"
-
diff --git a/packages/linux/linux-kaiser_2.6.24+git.bb b/packages/linux/linux-kaiser_2.6.24+git.bb
index 758cbdcc0b..879c6e23be 100644
--- a/packages/linux/linux-kaiser_2.6.24+git.bb
+++ b/packages/linux/linux-kaiser_2.6.24+git.bb
@@ -4,13 +4,14 @@ PV = "2.6.24+git${SRCREV}"
PR = "r1"
COMPATIBLE_MACHINE = "htckaiser"
+COMPATIBLE_MACHINE = "htcpolaris"
+
SRC_URI = "git://git.linuxtogo.org/home/groups/mobile-linux/kernel.git;branch=htc-msm;protocol=git"
S = "${WORKDIR}/git"
do_configure_prepend() {
- cp arch/arm/configs/htckaiser_defconfig ../defconfig
+ cp arch/arm/configs/${MACHINE}_defconfig ../defconfig
}
-
diff --git a/packages/linux/linux-omap2-git/beagleboard/01-gptimer_maintain_tldr_lt_0xffffffff b/packages/linux/linux-omap2-git/beagleboard/01-gptimer_maintain_tldr_lt_0xffffffff
new file mode 100644
index 0000000000..f80f899dee
--- /dev/null
+++ b/packages/linux/linux-omap2-git/beagleboard/01-gptimer_maintain_tldr_lt_0xffffffff
@@ -0,0 +1,64 @@
+OMAP2/3 GPTIMER: don't load GPTIMER with 0xffffffff
+
+From: Paul Walmsley <paul@pwsan.com>
+
+3430 TRM 16.2.4.2 states:
+
+ Do not put the overflow value (0xFFFFFFFF) in the GPTi.TLDR register
+ because it can lead to undesired results.
+
+3430 TRM 16.2.4.7 states:
+
+ In the non-PWM mode, GTPi.TLDR must be maintained at less than or
+ equal to 0xFFFF FFFE.
+
+This patch contains some debugging code, and so is not yet intended for
+merging into linux-omap.
+---
+
+ arch/arm/mach-omap2/timer-gp.c | 17 ++++++++++++++++-
+ 1 files changed, 16 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c
+index 557603f..edc0c9e 100644
+--- a/arch/arm/mach-omap2/timer-gp.c
++++ b/arch/arm/mach-omap2/timer-gp.c
+@@ -59,6 +59,11 @@ static struct irqaction omap2_gp_timer_irq = {
+ static int omap2_gp_timer_set_next_event(unsigned long cycles,
+ struct clock_event_device *evt)
+ {
++ if (cycles == 0) {
++ pr_err("*** cycles = 0! fixing\n");
++ cycles = 1;
++ }
++
+ omap_dm_timer_set_load_start(gptimer, 0, 0xffffffff - cycles);
+
+ return 0;
+@@ -76,6 +81,15 @@ static void omap2_gp_timer_set_mode(enum clock_event_mode mode,
+ period = clk_get_rate(omap_dm_timer_get_fclk(gptimer)) / HZ;
+ period -= 1;
+
++ /*
++ * Unlikely that this will ever be hit since periodic
++ * mode is rarely used
++ */
++ if (period == 0) {
++ pr_err("*** period = 0! fixing\n");
++ period = 1;
++ }
++
+ omap_dm_timer_set_load_start(gptimer, 1, 0xffffffff - period);
+ break;
+ case CLOCK_EVT_MODE_ONESHOT:
+@@ -117,8 +131,9 @@ static void __init omap2_gp_clockevent_init(void)
+ clockevent_gpt.shift);
+ clockevent_gpt.max_delta_ns =
+ clockevent_delta2ns(0xffffffff, &clockevent_gpt);
++ /* per 3430 TRM table 16-11 */
+ clockevent_gpt.min_delta_ns =
+- clockevent_delta2ns(1, &clockevent_gpt);
++ clockevent_delta2ns(2, &clockevent_gpt);
+
+ clockevent_gpt.cpumask = cpumask_of_cpu(0);
+ clockevents_register_device(&clockevent_gpt);
diff --git a/packages/linux/linux-omap2-git/beagleboard/02-gptimer_clear_tocr b/packages/linux/linux-omap2-git/beagleboard/02-gptimer_clear_tocr
new file mode 100644
index 0000000000..433608132e
--- /dev/null
+++ b/packages/linux/linux-omap2-git/beagleboard/02-gptimer_clear_tocr
@@ -0,0 +1,98 @@
+OMAP2/3 GPTIMER: clear TOCR register after timer overflow interrupt and during load
+
+From: Paul Walmsley <paul@pwsan.com>
+
+There appears to be a hardware bug in the 1-ms tick generation section
+of the GPTIMER blocks on some OMAP3530 chips. TOCR is sometimes
+incremented when a a timer overflow event occurs and TPIR = TPNR =
+TOWR = TOCR = 0, in contradiction of 34xx TRM 16.2.4.2.1. When TOCR
+is incremented under these conditions, the timer will not generate any
+further overflow interrupts. (The kernel currently relies on overflow
+interrupts to generate ticks and drive the scheduler.)
+
+This patch works around the bug by clearing TOCR in the GPTIMER
+overflow ISR and in the timer load functions.
+
+The precise sequence of hardware events needed to reproduce this bug
+is still unknown. Without this patch, the bug is consistently
+observable on several BeagleBoards (including mine and Koen's) within
+a few minutes of boot. It's not clear whether this bug is present on
+all OMAP3 revisions, or whether it is simply specific to certain
+OMAP3530ES2.2 lots.
+
+This patch fixes the "serial hangs" reported by some BeagleBoard
+users. During these hangs, characters are still received from the
+serial port, so magic SysRq will still work; but characters are never
+delivered on to the underlying line discipline. The 8250 serial code
+calls tty_flip_buffer_push(), which calls schedule_delayed_work() to
+defer passing the input buffer to the line discipline, but since no
+timer tick ever arrives, the delayed work function is never called .
+
+The patch should also fix some other sporadic boot hangs reported by
+BeagleBoard users that are due to timer interrupt non-delivery.
+---
+
+ arch/arm/mach-omap2/timer-gp.c | 1 +
+ arch/arm/plat-omap/dmtimer.c | 9 ++++++++-
+ include/asm-arm/arch-omap/dmtimer.h | 2 ++
+ 3 files changed, 11 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c
+index edc0c9e..869fe14 100644
+--- a/arch/arm/mach-omap2/timer-gp.c
++++ b/arch/arm/mach-omap2/timer-gp.c
+@@ -44,6 +44,7 @@ static irqreturn_t omap2_gp_timer_interrupt(int irq, void *dev_id)
+ struct omap_dm_timer *gpt = (struct omap_dm_timer *)dev_id;
+ struct clock_event_device *evt = &clockevent_gpt;
+
++ omap_dm_timer_clear_ovf_cnt(gpt);
+ omap_dm_timer_write_status(gpt, OMAP_TIMER_INT_OVERFLOW);
+
+ evt->event_handler(evt);
+diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
+index f22506a..18a1e68 100644
+--- a/arch/arm/plat-omap/dmtimer.c
++++ b/arch/arm/plat-omap/dmtimer.c
+@@ -543,6 +543,8 @@ void omap_dm_timer_set_load(struct omap_dm_timer *timer, int autoreload,
+ while (readl(timer->io_base + (OMAP_TIMER_WRITE_PEND_REG & 0xff)))
+ cpu_relax();
+
++ omap_dm_timer_clear_ovf_cnt(timer);
++
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_TRIGGER_REG, 0);
+ }
+
+@@ -561,6 +563,7 @@ void omap_dm_timer_set_load_start(struct omap_dm_timer *timer, int autoreload,
+
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_COUNTER_REG, load);
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_LOAD_REG, load);
++ omap_dm_timer_clear_ovf_cnt(timer);
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_CTRL_REG, l);
+ }
+
+@@ -611,7 +614,11 @@ void omap_dm_timer_set_int_enable(struct omap_dm_timer *timer,
+ unsigned int value)
+ {
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_INT_EN_REG, value);
+- omap_dm_timer_write_reg(timer, OMAP_TIMER_WAKEUP_EN_REG, value);
++}
++
++void omap_dm_timer_clear_ovf_cnt(struct omap_dm_timer *timer)
++{
++ omap_dm_timer_write_reg(timer, OMAP_TIMER_TICK_INT_MASK_SET_REG, 0);
+ }
+
+ unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer)
+diff --git a/include/asm-arm/arch-omap/dmtimer.h b/include/asm-arm/arch-omap/dmtimer.h
+index 02b29e8..7b1138b 100644
+--- a/include/asm-arm/arch-omap/dmtimer.h
++++ b/include/asm-arm/arch-omap/dmtimer.h
+@@ -73,6 +73,8 @@ void omap_dm_timer_set_prescaler(struct omap_dm_timer *timer, int prescaler);
+
+ void omap_dm_timer_set_int_enable(struct omap_dm_timer *timer, unsigned int value);
+
++void omap_dm_timer_clear_ovf_cnt(struct omap_dm_timer *timer);
++
+ unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer);
+ void omap_dm_timer_write_status(struct omap_dm_timer *timer, unsigned int value);
+ unsigned int omap_dm_timer_read_counter(struct omap_dm_timer *timer);
diff --git a/packages/linux/linux-omap2-git/beagleboard/03-gptimer_double_write_tocr b/packages/linux/linux-omap2-git/beagleboard/03-gptimer_double_write_tocr
new file mode 100644
index 0000000000..4b3d757bdc
--- /dev/null
+++ b/packages/linux/linux-omap2-git/beagleboard/03-gptimer_double_write_tocr
@@ -0,0 +1,25 @@
+OMAP3 GPTIMER: TOCR clears sometimes require two writes
+
+From: Paul Walmsley <paul@pwsan.com>
+
+Some GPTIMER register changes do not take effect with a single write;
+they require two writes for some reason. Could be related to the
+existing 3430 errata "GPTimer 1,2, and 10: first write access to TCRR
+register discarded"
+---
+
+ arch/arm/plat-omap/dmtimer.c | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
+index 18a1e68..4a5ada7 100644
+--- a/arch/arm/plat-omap/dmtimer.c
++++ b/arch/arm/plat-omap/dmtimer.c
+@@ -619,6 +619,7 @@ void omap_dm_timer_set_int_enable(struct omap_dm_timer *timer,
+ void omap_dm_timer_clear_ovf_cnt(struct omap_dm_timer *timer)
+ {
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_TICK_INT_MASK_SET_REG, 0);
++ omap_dm_timer_write_reg(timer, OMAP_TIMER_TICK_INT_MASK_SET_REG, 0);
+ }
+
+ unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer)
diff --git a/packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug b/packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug
new file mode 100644
index 0000000000..8ae6a6f22e
--- /dev/null
+++ b/packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug
@@ -0,0 +1,105 @@
+Add extra debug for the q_d_w_o() when work fn is already active.
+
+From: Paul Walmsley <paul@pwsan.com>
+
+
+---
+
+ arch/arm/mach-omap2/timer-gp.c | 3 ++-
+ arch/arm/plat-omap/dmtimer.c | 18 ++++++++++++++++++
+ include/asm-arm/arch-omap/dmtimer.h | 1 +
+ kernel/workqueue.c | 12 ++++++++++++
+ 4 files changed, 33 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c
+index 869fe14..4db3252 100644
+--- a/arch/arm/mach-omap2/timer-gp.c
++++ b/arch/arm/mach-omap2/timer-gp.c
+@@ -37,6 +37,7 @@
+ #include <asm/arch/dmtimer.h>
+
+ static struct omap_dm_timer *gptimer;
++struct omap_dm_timer *gptimer_pub;
+ static struct clock_event_device clockevent_gpt;
+
+ static irqreturn_t omap2_gp_timer_interrupt(int irq, void *dev_id)
+@@ -114,7 +115,7 @@ static void __init omap2_gp_clockevent_init(void)
+ {
+ u32 tick_rate;
+
+- gptimer = omap_dm_timer_request_specific(1);
++ gptimer = gptimer_pub = omap_dm_timer_request_specific(1);
+ BUG_ON(gptimer == NULL);
+
+ #if defined(CONFIG_OMAP_32K_TIMER)
+diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
+index 4a5ada7..3242495 100644
+--- a/arch/arm/plat-omap/dmtimer.c
++++ b/arch/arm/plat-omap/dmtimer.c
+@@ -622,6 +622,24 @@ void omap_dm_timer_clear_ovf_cnt(struct omap_dm_timer *timer)
+ omap_dm_timer_write_reg(timer, OMAP_TIMER_TICK_INT_MASK_SET_REG, 0);
+ }
+
++void omap_dm_timer_dump_int_enable(struct omap_dm_timer *timer)
++{
++ u32 l;
++ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_COUNTER_REG);
++ pr_err("GPT TCRR: %08x\n", l);
++ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_STAT_REG);
++ pr_err("GPT TISR: %08x\n", l);
++ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_TICK_INT_MASK_SET_REG);
++ pr_err("GPT TOCR: %08x\n", l);
++ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_TICK_INT_MASK_COUNT_REG);
++ pr_err("GPT TOWR: %08x\n", l);
++ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_TICK_POS_REG);
++ pr_err("GPT TPIR: %08x\n", l);
++ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_TICK_NEG_REG);
++ pr_err("GPT TNIR: %08x\n", l);
++}
++
++
+ unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer)
+ {
+ unsigned int l;
+diff --git a/include/asm-arm/arch-omap/dmtimer.h b/include/asm-arm/arch-omap/dmtimer.h
+index 7b1138b..db57015 100644
+--- a/include/asm-arm/arch-omap/dmtimer.h
++++ b/include/asm-arm/arch-omap/dmtimer.h
+@@ -73,6 +73,7 @@ void omap_dm_timer_set_prescaler(struct omap_dm_timer *timer, int prescaler);
+
+ void omap_dm_timer_set_int_enable(struct omap_dm_timer *timer, unsigned int value);
+
++void omap_dm_timer_dump_int_enable(struct omap_dm_timer *timer);
+ void omap_dm_timer_clear_ovf_cnt(struct omap_dm_timer *timer);
+
+ unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer);
+diff --git a/kernel/workqueue.c b/kernel/workqueue.c
+index ce77995..65b3b9a 100644
+--- a/kernel/workqueue.c
++++ b/kernel/workqueue.c
+@@ -33,6 +33,9 @@
+ #include <linux/kallsyms.h>
+ #include <linux/debug_locks.h>
+ #include <linux/lockdep.h>
++#include <asm/arch/dmtimer.h>
++
++extern struct omap_dm_timer *gptimer_pub;
+
+ /*
+ * The per-CPU workqueue (if single thread, we always use the first
+@@ -235,6 +238,15 @@ int queue_delayed_work_on(int cpu, struct workqueue_struct *wq,
+ else
+ add_timer(timer);
+ ret = 1;
++ } else {
++ s64 texp;
++ u64 now = ktime_to_ns(ktime_get());
++ u64 ens = jiffies_to_usecs(dwork->timer.expires) * 1000;
++ texp = ens - now;
++ if (texp < 0) {
++ pr_err("** Timer workaround\n");
++ omap_dm_timer_dump_int_enable(gptimer_pub);
++ }
+ }
+ return ret;
+ }
diff --git a/packages/linux/linux-omap2-git/beagleboard/serialfix.diff b/packages/linux/linux-omap2-git/beagleboard/serialfix.diff
deleted file mode 100644
index 74c2ebaa69..0000000000
--- a/packages/linux/linux-omap2-git/beagleboard/serialfix.diff
+++ /dev/null
@@ -1,18 +0,0 @@
---- /tmp/pm34xx.c 2008-07-14 18:09:08.000000000 +0200
-+++ git/arch/arm/mach-omap2/pm34xx.c 2008-07-14 18:09:42.453198000 +0200
-@@ -398,13 +398,13 @@
- INT_34XX_PRCM_MPU_IRQ);
- goto err1;
- }
--
-+/*
- ret = pwrdm_for_each(pwrdms_setup);
- if (ret) {
- printk(KERN_ERR "Failed to setup powerdomains\n");
- goto err2;
- }
--
-+*/
- mpu_pwrdm = pwrdm_lookup("mpu_pwrdm");
- if (mpu_pwrdm == NULL) {
- printk(KERN_ERR "Failed to get mpu_pwrdm\n");
diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb
index 589f1d1458..22643987b4 100644
--- a/packages/linux/linux-omap2_git.bb
+++ b/packages/linux/linux-omap2_git.bb
@@ -6,7 +6,7 @@ SRCREV = "d3b3ae0fe6c71641da19c8de466ec366d39847e3"
PV = "2.6.26"
#PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}"
-PR = "r50"
+PR = "r52"
SRC_URI = "git://source.mvista.com/git/linux-omap-2.6.git;protocol=git \
file://defconfig"
@@ -29,7 +29,6 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \
file://06-ensure-fclk.diff;patch=1 \
file://07-set-burst-size.diff;patch=1 \
file://cache-display-fix.patch;patch=1 \
- file://serialfix.diff;patch=1 \
file://i2c-omap-race-fix.diff;patch=1 \
file://TWL4030-01.patch;patch=1 \
file://TWL4030-02.patch;patch=1 \
@@ -46,6 +45,10 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \
file://4bitmmc.diff;patch=1 \
file://400khz-i2c.diff;patch=1 \
file://no-cortex-deadlock.patch;patch=1 \
+ file://01-gptimer_maintain_tldr_lt_0xffffffff;patch=1 \
+ file://02-gptimer_clear_tocr;patch=1 \
+ file://03-gptimer_double_write_tocr;patch=1 \
+ file://04-gptimer_add_debug;patch=1 \
"
SRC_URI_append_omap3evm = " file://no-harry-potter.diff;patch=1 \
diff --git a/packages/linux/linux-rp-2.6.26/zaurus-i2c-init.patch b/packages/linux/linux-rp-2.6.26/zaurus-i2c-init.patch
index 40214e42b0..e0db0746cd 100644
--- a/packages/linux/linux-rp-2.6.26/zaurus-i2c-init.patch
+++ b/packages/linux/linux-rp-2.6.26/zaurus-i2c-init.patch
@@ -14,15 +14,42 @@ Stanislav.
Reported-by: Stanislav Brabec <utx@penguin.cz>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
---
+ arch/arm/mach-pxa/corgi.c | 2 ++
arch/arm/mach-pxa/poodle.c | 2 ++
arch/arm/mach-pxa/spitz.c | 2 ++
- 2 files changed, 4 insertions(+), 0 deletions(-)
+ 3 files changed, 6 insertions(+)
-diff --git a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c
-index 39612cf..510018b 100644
---- a/arch/arm/mach-pxa/poodle.c
-+++ b/arch/arm/mach-pxa/poodle.c
-@@ -36,6 +36,7 @@
+--- linux-2.6.26.orig/arch/arm/mach-pxa/corgi.c
++++ linux-2.6.26/arch/arm/mach-pxa/corgi.c
+@@ -38,10 +38,11 @@
+ #include <asm/arch/pxa-regs.h>
+ #include <asm/arch/pxa2xx-gpio.h>
+ #include <asm/arch/irda.h>
+ #include <asm/arch/mmc.h>
+ #include <asm/arch/udc.h>
++#include <asm/arch/i2c.h>
+ #include <asm/arch/corgi.h>
+ #include <asm/arch/sharpsl.h>
+
+ #include <asm/mach/sharpsl_param.h>
+ #include <asm/hardware/scoop.h>
+@@ -529,10 +530,11 @@ static void __init corgi_init(void)
+ pxa_gpio_mode(CORGI_GPIO_HSYNC | GPIO_IN);
+
+ pxa_set_udc_info(&udc_info);
+ pxa_set_mci_info(&corgi_mci_platform_data);
+ pxa_set_ficp_info(&corgi_ficp_platform_data);
++ pxa_set_i2c_info(NULL);
+
+ platform_scoop_config = &corgi_pcmcia_config;
+
+ platform_add_devices(devices, ARRAY_SIZE(devices));
+ }
+--- linux-2.6.26.orig/arch/arm/mach-pxa/poodle.c
++++ linux-2.6.26/arch/arm/mach-pxa/poodle.c
+@@ -33,10 +33,11 @@
+
+ #include <asm/arch/pxa-regs.h>
#include <asm/arch/pxa2xx-gpio.h>
#include <asm/arch/mmc.h>
#include <asm/arch/udc.h>
@@ -30,7 +57,11 @@ index 39612cf..510018b 100644
#include <asm/arch/irda.h>
#include <asm/arch/poodle.h>
#include <asm/arch/pxafb.h>
-@@ -387,6 +388,7 @@ static void __init poodle_init(void)
+ #include <asm/arch/sharpsl.h>
+ #include <asm/arch/ssp.h>
+@@ -386,10 +387,11 @@ static void __init poodle_init(void)
+ pxa_gpio_mode(POODLE_GPIO_USB_PULLUP | GPIO_OUT);
+ pxa_gpio_mode(POODLE_GPIO_IR_ON | GPIO_OUT);
pxa_set_udc_info(&udc_info);
pxa_set_mci_info(&poodle_mci_platform_data);
pxa_set_ficp_info(&poodle_ficp_platform_data);
@@ -38,11 +69,13 @@ index 39612cf..510018b 100644
platform_scoop_config = &poodle_pcmcia_config;
-diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c
-index 35616a5..e2bde09 100644
---- a/arch/arm/mach-pxa/spitz.c
-+++ b/arch/arm/mach-pxa/spitz.c
-@@ -38,6 +38,7 @@
+ ret = platform_add_devices(devices, ARRAY_SIZE(devices));
+ if (ret) {
+--- linux-2.6.26.orig/arch/arm/mach-pxa/spitz.c
++++ linux-2.6.26/arch/arm/mach-pxa/spitz.c
+@@ -36,10 +36,11 @@
+ #include <asm/mach/irq.h>
+
#include <asm/arch/pxa-regs.h>
#include <asm/arch/pxa2xx-regs.h>
#include <asm/arch/pxa2xx-gpio.h>
@@ -50,7 +83,11 @@ index 35616a5..e2bde09 100644
#include <asm/arch/irda.h>
#include <asm/arch/mmc.h>
#include <asm/arch/ohci.h>
-@@ -572,6 +573,7 @@ static void __init common_init(void)
+ #include <asm/arch/udc.h>
+ #include <asm/arch/pxafb.h>
+@@ -579,10 +580,11 @@ static void __init common_init(void)
+ pxa_set_mci_info(&spitz_mci_platform_data);
+ pxa_set_ohci_info(&spitz_ohci_platform_data);
pxa_set_ficp_info(&spitz_ficp_platform_data);
set_pxa_fb_parent(&spitzssp_device.dev);
set_pxa_fb_info(&spitz_pxafb_info);
@@ -58,11 +95,5 @@ index 35616a5..e2bde09 100644
}
#if defined(CONFIG_MACH_SPITZ) || defined(CONFIG_MACH_BORZOI)
---
-1.5.6.2
-
-
--------------------------------------------------------------------
-List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
-FAQ: http://www.arm.linux.org.uk/mailinglists/faq.php
-Etiquette: http://www.arm.linux.org.uk/mailinglists/etiquette.php
+ static void spitz_bl_set_intensity(int intensity)
+ {
diff --git a/packages/linux/linux-rp_2.6.26.bb b/packages/linux/linux-rp_2.6.26.bb
index 012721fd5c..f871bedfee 100644
--- a/packages/linux/linux-rp_2.6.26.bb
+++ b/packages/linux/linux-rp_2.6.26.bb
@@ -1,6 +1,6 @@
require linux-rp.inc
-PR = "r1"
+PR = "r2"
DEFAULT_PREFERENCE = "-1"
DEFAULT_PREFERENCE_qemuarm = "-1"
diff --git a/packages/swfdec/swfdec-mozilla_0.7.4.bb b/packages/swfdec/swfdec-mozilla_0.7.4.bb
new file mode 100644
index 0000000000..2bc6a00a84
--- /dev/null
+++ b/packages/swfdec/swfdec-mozilla_0.7.4.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "Swfdec plugin for browsers using NPAPI. Swfdec is a decoder/renderer for Macromedia Flash animations."
+LICENSE = "LGPL"
+
+DEPENDS = "gst-ffmpeg swfdec gstreamer libsoup-2.4 pango cairo liboil zlib libmad gtk+ alsa-lib"
+RDEPENDS = "gst-ffmpeg"
+
+SRC_URI = "http://swfdec.freedesktop.org/download/swfdec-mozilla/0.7/${P}.tar.gz \
+"
+
+inherit autotools pkgconfig
+
+do_stage() {
+ autotools_stage_all
+}
+
+FILES_${PN} += "${libdir}/mozilla/plugins/*.so"
+FILES_${PN}-dev += "${libdir}/mozilla/plugins/*a"
+FILES_${PN}-dbg += "${libdir}/mozilla/plugins/.debug"
+
diff --git a/packages/swfdec/swfdec_0.7.4.bb b/packages/swfdec/swfdec_0.7.4.bb
new file mode 100644
index 0000000000..05d4977eae
--- /dev/null
+++ b/packages/swfdec/swfdec_0.7.4.bb
@@ -0,0 +1,26 @@
+DESCRIPTION = "Swfdec is a decoder/renderer for Macromedia Flash animations."
+LICENSE = "LGPL"
+
+DEPENDS = "gstreamer libsoup-2.4 pango cairo liboil zlib libmad gtk+ alsa-lib"
+
+SRC_URI = "http://swfdec.freedesktop.org/download/swfdec/0.7/${P}.tar.gz \
+"
+
+inherit autotools pkgconfig
+
+do_install_append() {
+ install -d ${D}/${bindir}
+ install -m 0755 ${S}/player/.libs/swfplay ${D}/${bindir}
+}
+
+do_stage() {
+ autotools_stage_all
+}
+
+PACKAGES =+ "libswfdecgtk libswfdec"
+
+FILES_${PN} += "${datadir}/icons"
+FILES_libswfdec = "${libdir}/libswfdec-0.7.so.*"
+FILES_libswfdecgtk = "${libdir}/libswfdec-gtk-0.7.so*"
+
+
diff --git a/packages/u-boot/u-boot_git.bb b/packages/u-boot/u-boot_git.bb
index 6ccc6f2614..54c5f81b45 100644
--- a/packages/u-boot/u-boot_git.bb
+++ b/packages/u-boot/u-boot_git.bb
@@ -1,8 +1,8 @@
require u-boot.inc
PR="r11"
-SRCREV_davinci-sffsdr = "699f05125509249072a0b865c8d35520d97cd501"
-SRCREV_davinci-dvevm = "699f05125509249072a0b865c8d35520d97cd501"
+SRCREV_davinci-sffsdr = "4b50cd12a3b3c644153c4cf393f4a4c12289e5aa"
+SRCREV_davinci-dvevm = "4b50cd12a3b3c644153c4cf393f4a4c12289e5aa"
SRCREV_beagleboard = "bde63587622c4b830a27d1ddf7265843de9e994f"
SRCREV_neuros-osd2 = "70ee511d37ca99afee00edc27be36d0af2832bbc"