diff --git a/packages/3rdparty/lib/xine-lib/build b/packages/3rdparty/lib/xine-lib/build
deleted file mode 100755
index cde604a63a..0000000000
--- a/packages/3rdparty/lib/xine-lib/build
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/bin/sh
-
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-. config/options $1
-
-VDR_GUI_ADDON_DIR="/storage/.xbmc/addons/script.video.vdr-gui"
-
-cd $PKG_BUILD
-
-strip_lto
-
-./autogen.sh --host=$TARGET_NAME \
- --build=$HOST_NAME \
- --with-external-ffmpeg \
- --disable-dxr3 \
- --disable-aalib \
- --disable-vcd \
- --disable-musepack
-
-sed -i "s|XINE_PLUGINDIR .*|XINE_PLUGINDIR \"$VDR_GUI_ADDON_DIR/lib/xine/plugins/2.1\"|" include/configure.h
-sed -i "s|XINE_PLUGINROOT .*|XINE_PLUGINROOT \"$VDR_GUI_ADDON_DIR/lib/xine/plugins/2\"|" include/configure.h
-
-# same for fonts and locales and copy them
-
-make
-$MAKEINSTALL
diff --git a/packages/3rdparty/lib/xine-lib/meta b/packages/3rdparty/lib/xine-lib/meta
deleted file mode 100644
index 1a6d579db2..0000000000
--- a/packages/3rdparty/lib/xine-lib/meta
+++ /dev/null
@@ -1,35 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="xine-lib"
-PKG_VERSION="1-2-25f276f9211a"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://www.xine-project.org/"
-PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS="ffmpeg"
-PKG_BUILD_DEPENDS="toolchain ffmpeg"
-PKG_PRIORITY="optional"
-PKG_SECTION="multimedia"
-PKG_SHORTDESC="xine is a high-performance, portable and reusable multimedia playback engine."
-PKG_LONGDESC="xine is a high-performance, portable and reusable multimedia playback engine."
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta
index 06be1b532c..663200826c 100644
--- a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta
+++ b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta
@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="vdr-plugin-dvbapi"
-PKG_VERSION="e87e15f"
+PKG_VERSION="cd93752"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-crosscompiling.patch b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-crosscompiling.patch
new file mode 100644
index 0000000000..a249ffc18f
--- /dev/null
+++ b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-crosscompiling.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index d18b016..278af2b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -156,7 +156,7 @@ libdvbapi-dvbufs9xx.so: device-ufs9xx.o
+
+ ifndef LIBDVBCSA
+ $(FFDECSA): $(FFDECSADIR)/*.c $(FFDECSADIR)/*.h
+- @$(MAKE) COMPILER="$(CXX)" FLAGS="$(CXXFLAGS) $(LDFLAGS) $(CSAFLAGS)" PARALLEL_MODE=$(PARALLEL) -C $(FFDECSADIR) all
++ @$(MAKE) COMPILER="$(CXX)" FLAGS="$(CXXFLAGS) $(LDFLAGS) $(CSAFLAGS)" PARALLEL_MODE=$(PARALLEL) -C $(FFDECSADIR) FFdecsa.o
+ endif
+
+ install-lib: $(SOFILE)
diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-ffdecsa.patch b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-ffdecsa.patch
new file mode 100644
index 0000000000..22f0684687
--- /dev/null
+++ b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-ffdecsa.patch
@@ -0,0 +1,16 @@
+diff --git a/Makefile b/Makefile
+index 278af2b..996dc77 100644
+--- a/Makefile
++++ b/Makefile
+@@ -85,8 +85,9 @@ OBJS = CAPMT.o DeCSA.o DeCsaTSBuffer.o dll.o DVBAPI.o DVBAPISetup.o SCDeviceProb
+
+ ifndef LIBDVBCSA
+ # FFdeCSA
+-PARALLEL ?= PARALLEL_128_SSE2
+-CSAFLAGS ?= -fexpensive-optimizations -funroll-loops -mmmx -msse -msse2 -msse3
++CPUOPT ?= pentium
++PARALLEL ?= PARALLEL_32_INT
++CSAFLAGS ?= -Wall -fPIC -g -O3 -mmmx -fomit-frame-pointer -fexpensive-optimizations -funroll-loops
+ FFDECSADIR = FFdecsa
+ FFDECSA = $(FFDECSADIR)/FFdecsa.o
+ DECSALIB = $(FFDECSA)
diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-crosscompiling.patch b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-crosscompiling.patch
deleted file mode 100644
index 7c9faef64e..0000000000
--- a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-crosscompiling.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur vdr-dvbapi-plugin-6e8cad7/Makefile vdr-dvbapi-plugin-6e8cad7.patch/Makefile
---- vdr-dvbapi-plugin-6e8cad7/Makefile 2011-12-25 14:24:33.000000000 +0100
-+++ vdr-dvbapi-plugin-6e8cad7.patch/Makefile 2011-12-29 18:59:21.847652339 +0100
-@@ -80,7 +80,7 @@
- gcc -O -fbuiltin -fomit-frame-pointer -fPIC -shared -o $@ $< -ldl
-
- $(FFDECSA): $(FFDECSADIR)/*.c $(FFDECSADIR)/*.h
-- @$(MAKE) COMPILER="$(CXX)" FLAGS="$(CSAFLAGS) -march=$(CPUOPT)" PARALLEL_MODE=$(PARALLEL) -C $(FFDECSADIR) all
-+ @$(MAKE) COMPILER="$(CXX)" FLAGS="$(CSAFLAGS)" PARALLEL_MODE=$(PARALLEL) -C $(FFDECSADIR) FFdecsa.o
-
- dist: clean
- @-rm -rf $(TMPDIR)/$(ARCHIVE)
diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-ffdecsa.patch b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-ffdecsa.patch
deleted file mode 100644
index ed4e806134..0000000000
--- a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-ffdecsa.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/Makefile b/Makefile
-index a8c7d97..6084cec 100644
---- a/Makefile
-+++ b/Makefile
-@@ -54,9 +54,9 @@ DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
- OBJS = CAPMT.o DeCSA.o DeCsaTSBuffer.o DVBAPI.o DVBAPISetup.o SCDeviceProbe.o SCDVBDevice.o UDPSocket.o SCCIAdapter.o Frame.o SCCAMSlot.o
-
- # FFdeCSA
--CPUOPT ?= athlon64
--PARALLEL ?= PARALLEL_128_SSE
--CSAFLAGS ?= -fPIC -O3 -fexpensive-optimizations -funroll-loops -mmmx -msse -msse2 -msse3
-+CPUOPT ?= pentium
-+PARALLEL ?= PARALLEL_32_INT
-+CSAFLAGS ?= -Wall -fPIC -g -O3 -mmmx -fomit-frame-pointer -fexpensive-optimizations -funroll-loops
- FFDECSADIR = FFdecsa
- FFDECSA = $(FFDECSADIR)/FFdecsa.o
- FFDECSATEST = $(FFDECSADIR)/FFdecsa_test.done
diff --git a/packages/3rdparty/multimedia/vdr-skinanthra_1280_OS/meta b/packages/3rdparty/multimedia/vdr-skinanthra_1280_OS/meta
deleted file mode 100644
index 1846d44355..0000000000
--- a/packages/3rdparty/multimedia/vdr-skinanthra_1280_OS/meta
+++ /dev/null
@@ -1,35 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="vdr-skinanthra_1280_OS"
-PKG_VERSION="1.0"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://anthra.justlinux.de/common/overview.html"
-PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS="vdr"
-PKG_BUILD_DEPENDS="toolchain vdr"
-PKG_PRIORITY="optional"
-PKG_SECTION="multimedia"
-PKG_SHORTDESC="anthra skin for text2skin plugin."
-PKG_LONGDESC="anthra skin for text2skin plugin."
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
diff --git a/packages/3rdparty/multimedia/vdr-text2skin/build b/packages/3rdparty/multimedia/vdr-text2skin/build
deleted file mode 100755
index 146cb34032..0000000000
--- a/packages/3rdparty/multimedia/vdr-text2skin/build
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-. config/options $1
-
-VDR_DIR=`basename $BUILD/vdr-[0-9]*`
-
-# you can not use GraphTFT together with Text2Skin if you use Imlib2!
-#IMAGELIB=imagemagick
-IMAGELIB=imlib2
-
-cd $PKG_BUILD
-
-make VDRDIR="../$VDR_DIR" \
- LIBDIR="." \
- LOCALEDIR="./locale" \
- IMAGELIB=$IMAGELIB
diff --git a/packages/3rdparty/multimedia/vdr-text2skin/meta b/packages/3rdparty/multimedia/vdr-text2skin/meta
deleted file mode 100644
index 47ddeef106..0000000000
--- a/packages/3rdparty/multimedia/vdr-text2skin/meta
+++ /dev/null
@@ -1,35 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="vdr-text2skin"
-PKG_VERSION="20120506"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://linuxtv.org/vdrwiki/index.php/Text2skin-plugin"
-PKG_URL="$DISTRO_SRC/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
-PKG_DEPENDS="vdr"
-PKG_BUILD_DEPENDS="toolchain vdr imlib2"
-PKG_PRIORITY="optional"
-PKG_SECTION="multimedia"
-PKG_SHORTDESC="text2skin is a plugin to make On Screen Display in VDR."
-PKG_LONGDESC="text2skin plugin is designed to load and interpret a set of files describing the layout of the On Screen Display and to make this "Skin" available to VDR via Setup -> OSD in the main menu."
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
diff --git a/packages/3rdparty/multimedia/vdr-xineliboutput/build b/packages/3rdparty/multimedia/vdr-xineliboutput/build
deleted file mode 100755
index 9d837432c1..0000000000
--- a/packages/3rdparty/multimedia/vdr-xineliboutput/build
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/bin/sh
-
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-. config/options $1
-
-VDR_DIR=$(basename $BUILD/vdr-[0-9]*)
-
-export PKG_CONFIG_PATH="${PKG_CONFIG_SYSROOT_DIR}/usr/local/lib/pkgconfig:${PKG_CONFIG_SYSROOT_DIR}buildd/lib/pkgconfig"
-
-cd $PKG_BUILD
-
-./configure --enable-x11 \
- --enable-vdr \
- --enable-libxine \
- --disable-dbus-glib-1 \
- --cc=$CC \
- --cxx=$CXX \
- --add-cflags="$CFLAGS"
-
-# mpg2c is running on host
-make mpg2c \
- CC="$HOST_CC" \
- CFLAGS="$HOST_CFLAGS" \
- LDFLAGS="$HOST_LDFLAGS" \
- VDRDIR="../$VDR_DIR" \
- LIBDIR="." \
- LOCALEDIR="./locale"
-
-make VDRDIR="../$VDR_DIR" \
- LIBDIR="." \
- LDFLAGS="-lm" \
- LOCALEDIR="./locale"
diff --git a/packages/3rdparty/multimedia/vdr-xineliboutput/meta b/packages/3rdparty/multimedia/vdr-xineliboutput/meta
deleted file mode 100644
index fa1099630b..0000000000
--- a/packages/3rdparty/multimedia/vdr-xineliboutput/meta
+++ /dev/null
@@ -1,35 +0,0 @@
-################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
-#
-# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
-# http://www.gnu.org/copyleft/gpl.html
-################################################################################
-
-PKG_NAME="vdr-xineliboutput"
-PKG_VERSION="20120506"
-PKG_REV="1"
-PKG_ARCH="any"
-PKG_LICENSE="GPL"
-PKG_SITE="http://sourceforge.net/projects/xineliboutput/"
-PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS="vdr xine-lib"
-PKG_BUILD_DEPENDS="toolchain vdr xine-lib"
-PKG_PRIORITY="optional"
-PKG_SECTION="multimedia"
-PKG_SHORTDESC="xine-lib based software output device for VDR."
-PKG_LONGDESC="xine-lib based software output device for VDR."
-PKG_IS_ADDON="no"
-PKG_AUTORECONF="no"
diff --git a/packages/addons/service/multimedia/vdr-addon/addon b/packages/addons/service/multimedia/vdr-addon/addon
index 0c4d26f258..d29f6b09f7 100755
--- a/packages/addons/service/multimedia/vdr-addon/addon
+++ b/packages/addons/service/multimedia/vdr-addon/addon
@@ -37,7 +37,6 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config
cp -PR $BUILD/vdr-live-*/live/* $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/live
cp $PKG_DIR/config.plugins/remote.conf $ADDON_BUILD/$PKG_ADDON_ID/config
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/epgsearch
- cp $PKG_DIR/config.plugins/commands.conf $ADDON_BUILD/$PKG_ADDON_ID/config
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins
cp $BUILD/rotorng-[0-9]*/examples/rotorng.conf $ADDON_BUILD/$PKG_ADDON_ID/config/plugins
@@ -62,8 +61,6 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/plugin
cp -PR $BUILD/vdr-control-*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
cp -PR $BUILD/vdr-epgsearch*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
cp -PR $BUILD/vdr-plugin-xmltv2vdr*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
- cp -PR $BUILD/vdr-xineliboutput-[0-9]*/libvdr*.so.1.7.27 $ADDON_BUILD/$PKG_ADDON_ID/plugin
- cp -PR $BUILD/vdr-text2skin-[0-9]*/libvdr*.so.1.7.27 $ADDON_BUILD/$PKG_ADDON_ID/plugin
# ENABLED_PLUGINS="cardclient constcw sc-conax sc-cryptoworks sc-irdeto sc-nagra sc-seca sc-viaccess sc-videoguard2"
# for plugin in $ENABLED_PLUGINS; do
@@ -89,18 +86,5 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib
cp -P $BUILD/libxslt-[0-9]*/libxslt/.libs/libxslt*.so* $ADDON_BUILD/$PKG_ADDON_ID/lib
cp -P $BUILD/libxslt-[0-9]*/libexslt/.libs/libexslt*.so* $ADDON_BUILD/$PKG_ADDON_ID/lib
-mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib/imlib2/loaders/
-mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib/imlib2/filters/
- cp $SYSROOT_PREFIX/usr/lib/libImlib2.so.1 $ADDON_BUILD/$PKG_ADDON_ID/lib/
- cp $SYSROOT_PREFIX/usr/lib/imlib2/loaders/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib/imlib2/loaders/
- cp $SYSROOT_PREFIX/usr/lib/imlib2/filters/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib/imlib2/filters/
-
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/streamdev-server
cp -PR $BUILD/vdr-plugin-streamdev-*/streamdev-server/streamdevhosts.conf $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/streamdev-server
-
-mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/text2skin/anthra_1280_OS/
- cp -PR $BUILD/vdr-skinanthra_1280_OS-*/* $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/text2skin/anthra_1280_OS/
- rm -fr $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/text2skin/anthra_1280_OS/themes
-
-mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/themes
- cp -P $BUILD/vdr-skinanthra_1280_OS-*/themes/* $ADDON_BUILD/$PKG_ADDON_ID/config/themes/
diff --git a/packages/addons/service/multimedia/vdr-addon/config.plugins/commands.conf b/packages/addons/service/multimedia/vdr-addon/config.plugins/commands.conf
deleted file mode 100644
index 1ad67aeae5..0000000000
--- a/packages/addons/service/multimedia/vdr-addon/config.plugins/commands.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-Exit -> XBMC : killall -9 vdr-sxfe
-Reboot : reboot
-PowerOff : poweroff -f
diff --git a/packages/addons/service/multimedia/vdr-addon/config/settings.xml b/packages/addons/service/multimedia/vdr-addon/config/settings.xml
index 868e2dce1f..f88770f309 100644
--- a/packages/addons/service/multimedia/vdr-addon/config/settings.xml
+++ b/packages/addons/service/multimedia/vdr-addon/config/settings.xml
@@ -18,7 +18,4 @@
-
-
-
diff --git a/packages/addons/service/multimedia/vdr-addon/meta b/packages/addons/service/multimedia/vdr-addon/meta
index aeb334f985..368c9637ce 100644
--- a/packages/addons/service/multimedia/vdr-addon/meta
+++ b/packages/addons/service/multimedia/vdr-addon/meta
@@ -27,7 +27,7 @@ PKG_LICENSE="GPL"
PKG_SITE="http://www.openelec.tv"
PKG_URL=""
PKG_DEPENDS=""
-PKG_BUILD_DEPENDS="toolchain attr libcap vdr vdr-plugin-xvdr vdr-plugin-vnsiserver vdr-iptv vdr-wirbelscan vdr-wirbelscancontrol vdr-sc vdr-plugin-dvbapi vdr-dynamite vdr-plugin-streamdev vdr-live rotorng vdr-control vdr-epgsearch vdr-plugin-xmltv2vdr vdr-xineliboutput vdr-text2skin vdr-skinanthra_1280_OS"
+PKG_BUILD_DEPENDS="toolchain attr libcap vdr vdr-plugin-xvdr vdr-plugin-vnsiserver vdr-iptv vdr-wirbelscan vdr-wirbelscancontrol vdr-sc vdr-plugin-dvbapi vdr-dynamite vdr-plugin-streamdev vdr-live rotorng vdr-control vdr-epgsearch vdr-plugin-xmltv2vdr"
PKG_PRIORITY="optional"
PKG_SECTION="service.multimedia"
PKG_SHORTDESC="vdr: A powerful DVB TV application"
diff --git a/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start b/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start
index b91d677310..13ab9acfb2 100755
--- a/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start
+++ b/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start
@@ -83,12 +83,6 @@ fi
if [ "$ENABLE_XMLTV2VDR" == "true" ] ; then
VDR_ARG="$VDR_ARG -P xmltv2vdr"
fi
-if [ "$ENABLE_XINELIBOUTPUT" == "true" ] ; then
- VDR_ARG="$VDR_ARG -P 'xineliboutput --local=none --remote=$XINELIBOUTPUT_PORT' -s $ADDON_HOME/vdr-shutdown.sh"
-fi
-if [ "$ENABLE_TEXT2SKIN" == "true" ] ; then
- VDR_ARG="$VDR_ARG -P text2skin"
-fi
# dynamite must be LAST loaded plugin
if [ "$ENABLE_DYNAMITE" == "true" ] ; then
VDR_ARG="$VDR_ARG -P dynamite"
@@ -110,21 +104,9 @@ fi
if [ -f "$ADDON_CONFIG_DIR/setup.conf" ]; then
sed -i -e '/^$/d' $ADDON_CONFIG_DIR/setup.conf
- sed -i -e '/^OSDHeight.*$/d' $ADDON_CONFIG_DIR/setup.conf
- sed -i -e '/^OSDSkin.*$/d' $ADDON_CONFIG_DIR/setup.conf
- sed -i -e '/^OSDTheme.*$/d' $ADDON_CONFIG_DIR/setup.conf
- sed -i -e '/^xineliboutput.OSD.Blending.*$/d' $ADDON_CONFIG_DIR/setup.conf
- sed -i -e '/^xineliboutput.OSD.Size.*$/d' $ADDON_CONFIG_DIR/setup.conf
- sed -i -e '/^xineliboutput.OSD.SoftOSD.*$/d' $ADDON_CONFIG_DIR/setup.conf
sed -i -e '/^epgsearch.SVDRPPort.*$/d' $ADDON_CONFIG_DIR/setup.conf
fi
cat >>$ADDON_CONFIG_DIR/setup.conf << MYDATA
-OSDHeight = 1080
-OSDSkin = anthra_1280_OS
-OSDTheme = yabluelight
-xineliboutput.OSD.Blending = 1
-xineliboutput.OSD.Size = 1280x720
-xineliboutput.OSD.SoftOSD = 1
epgsearch.SVDRPPort = 2004
MYDATA
diff --git a/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml b/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml
index ff5dbacfbe..afbdee613c 100644
--- a/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml
+++ b/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml
@@ -25,9 +25,6 @@
Enable plugin: xmltv2vdr
Enable epgdata.com
epgdata.com PIN
- Enable plugin: xineliboutput
- xineliboutput: listen on port
- Enable plugin: text2skin
VDR Configuration
VDR Video Dir
PVR plugin
diff --git a/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml b/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml
index 0ff09ec8c6..1f82adda78 100644
--- a/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml
+++ b/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml
@@ -30,9 +30,6 @@
-
-
-
diff --git a/packages/graphics/bcm2835-driver/meta b/packages/graphics/bcm2835-driver/meta
index 21990f3606..5a0dc3ba7d 100644
--- a/packages/graphics/bcm2835-driver/meta
+++ b/packages/graphics/bcm2835-driver/meta
@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="bcm2835-driver"
-PKG_VERSION="73d99ed"
+PKG_VERSION="f715140"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="nonfree"
diff --git a/packages/mediacenter/xbmc-addon-settings/source/resources/settings.xml b/packages/mediacenter/xbmc-addon-settings/source/resources/settings.xml
index c0bc00950a..3e906b7773 100644
--- a/packages/mediacenter/xbmc-addon-settings/source/resources/settings.xml
+++ b/packages/mediacenter/xbmc-addon-settings/source/resources/settings.xml
@@ -12,7 +12,7 @@
-
+
diff --git a/packages/mediacenter/xbmc-addon-xvdr/meta b/packages/mediacenter/xbmc-addon-xvdr/meta
index b466f6534c..a25bd44993 100644
--- a/packages/mediacenter/xbmc-addon-xvdr/meta
+++ b/packages/mediacenter/xbmc-addon-xvdr/meta
@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="xbmc-addon-xvdr"
-PKG_VERSION="0b3b2d4"
+PKG_VERSION="34070b5"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
diff --git a/packages/mediacenter/xbmc/patches/xbmc-990.10-PR2208.patch b/packages/mediacenter/xbmc/patches/xbmc-990.10-PR2208.patch
new file mode 100644
index 0000000000..6ca8eeea6b
--- /dev/null
+++ b/packages/mediacenter/xbmc/patches/xbmc-990.10-PR2208.patch
@@ -0,0 +1,58 @@
+From c1cc1b3dd1065c7a1dea33cf57fbbcae19b38c3b Mon Sep 17 00:00:00 2001
+From: Andy Maloney
+Date: Sun, 10 Feb 2013 08:31:51 -0500
+Subject: [PATCH] Fix memory leaks & Use correct "delete" for arrays
+
+---
+ xbmc/network/AirTunesServer.cpp | 6 +++++-
+ xbmc/visualizations/Vortex/VortexVis/Core/Renderer.cpp | 2 +-
+ xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp | 2 +-
+ 3 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/xbmc/network/AirTunesServer.cpp b/xbmc/network/AirTunesServer.cpp
+index fe3d78d..2f30773 100644
+--- a/xbmc/network/AirTunesServer.cpp
++++ b/xbmc/network/AirTunesServer.cpp
+@@ -339,8 +339,12 @@ ao_device* CAirTunesServer::AudioOutputFunctions::ao_open_live(int driver_id, ao
+ header.durationMs = 0;
+
+ if (device->pipe->Write(&header, sizeof(header)) == 0)
++ {
++ delete device->pipe;
++ delete device;
+ return 0;
+-
++ }
++
+ ThreadMessage tMsg = { TMSG_MEDIA_STOP };
+ CApplicationMessenger::Get().SendMessage(tMsg, true);
+
+diff --git a/xbmc/visualizations/Vortex/VortexVis/Core/Renderer.cpp b/xbmc/visualizations/Vortex/VortexVis/Core/Renderer.cpp
+index 2191505..ffd39b9 100644
+--- a/xbmc/visualizations/Vortex/VortexVis/Core/Renderer.cpp
++++ b/xbmc/visualizations/Vortex/VortexVis/Core/Renderer.cpp
+@@ -1347,7 +1347,7 @@ void Renderer::Sphere(int del_uhol_x, int del_uhol_y, float size)
+ // g_device->DrawPrimitive(D3DPT_TRIANGLESTRIP, i*2*(del_y+1), 2*del_y );
+ m_pD3DDevice->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, 2*del_uhol_y, &v[i*2*(del_uhol_y+1)], sizeof(PosColNormalUVVertex));
+
+- delete v;
++ delete [] v;
+ // pd->DrawPrimitive( D3DPT_TRIANGLESTRIP, i*2*(del_y+1), 2*del_y );
+ }
+
+diff --git a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp
+index 71e32c7..d04141b 100644
+--- a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp
++++ b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp
+@@ -634,7 +634,7 @@ void CEGLNativeTypeRaspberryPI::GetSupportedModes(HDMI_RES_GROUP_T group, std::v
+ }
+ }
+ if (supported_modes)
+- delete supported_modes;
++ delete [] supported_modes;
+ }
+
+ void CEGLNativeTypeRaspberryPI::TvServiceCallback(uint32_t reason, uint32_t param1, uint32_t param2)
+--
+1.7.10
+
diff --git a/packages/mediacenter/xbmc/patches/xbmc-990.11-AE-make_sure_we_reopen_when_the_flag_is_set_or_we_run_into_trouble.patch b/packages/mediacenter/xbmc/patches/xbmc-990.11-AE-make_sure_we_reopen_when_the_flag_is_set_or_we_run_into_trouble.patch
new file mode 100644
index 0000000000..cb55387336
--- /dev/null
+++ b/packages/mediacenter/xbmc/patches/xbmc-990.11-AE-make_sure_we_reopen_when_the_flag_is_set_or_we_run_into_trouble.patch
@@ -0,0 +1,42 @@
+From 87cc3d07ec7eb27c065920f0741e649f72b86acd Mon Sep 17 00:00:00 2001
+From: fritsch
+Date: Tue, 12 Feb 2013 22:29:27 +0100
+Subject: [PATCH] AE: make sure we reOpen when the flag is set or we run into
+ trouble
+
+---
+ xbmc/cores/AudioEngine/Engines/SoftAE/SoftAE.cpp | 15 +++------------
+ 1 file changed, 3 insertions(+), 12 deletions(-)
+
+diff --git a/xbmc/cores/AudioEngine/Engines/SoftAE/SoftAE.cpp b/xbmc/cores/AudioEngine/Engines/SoftAE/SoftAE.cpp
+index dc01abe..085ae30 100644
+--- a/xbmc/cores/AudioEngine/Engines/SoftAE/SoftAE.cpp
++++ b/xbmc/cores/AudioEngine/Engines/SoftAE/SoftAE.cpp
+@@ -1055,21 +1055,12 @@ void CSoftAE::Run()
+ {
+ bool restart = false;
+
+- /* Clean Up what the suspend guy might have forgotten */
+- // ProcessSuspending() cannot guarantee that we get our sink back softresumed
+- // that is a big problem as another thread could start adding packets
+- // this must be checked here, before writing anything on the sinks
+- if(m_sinkIsSuspended && m_sink)
+- {
+- CLog::Log(LOGDEBUG, "CSoftAE::Run - Someone has forgotten to resume us (device resumed)");
+- m_reOpen = !m_sink->SoftResume() || m_reOpen;
+- m_sinkIsSuspended = false;
+- }
+- if ((this->*m_outputStageFn)(hasAudio) > 0)
++ /* with the new non blocking implementation - we just reOpen here, when it tells reOpen */
++ if (!m_reOpen && (this->*m_outputStageFn)(hasAudio) > 0)
+ hasAudio = false; /* taken some audio - reset our silence flag */
+
+ /* if we have enough room in the buffer */
+- if (m_buffer.Free() >= m_frameSize)
++ if (!m_reOpen && m_buffer.Free() >= m_frameSize)
+ {
+ /* take some data for our use from the buffer */
+ uint8_t *out = (uint8_t*)m_buffer.Take(m_frameSize);
+--
+1.7.10
+
diff --git a/packages/mediacenter/xbmc/patches/xbmc-990.12-2058.patch b/packages/mediacenter/xbmc/patches/xbmc-990.12-2058.patch
new file mode 100644
index 0000000000..e44ec9bfae
--- /dev/null
+++ b/packages/mediacenter/xbmc/patches/xbmc-990.12-2058.patch
@@ -0,0 +1,174 @@
+From 6e28059b93220b1188461bfc99709cf7d27ae11c Mon Sep 17 00:00:00 2001
+From: norbini
+Date: Wed, 9 Jan 2013 23:08:02 +0000
+Subject: [PATCH] Override CSFTPDirectory::Exists() method to correctly report
+ whether an SFTP url represents a directory or not. Fixes
+ ticket #13784.
+
+Refactored CSFTPSession::Exists() into FileExists() and DirectoryExists() methods, and have CSFTPFile and CSFTPDirectory classes use them.
+This means that Exists() calls on these classes correctly only return true if the url refers to an item of the appropriate type (e.g. a file or a directory).
+---
+ xbmc/filesystem/SFTPDirectory.cpp | 15 ++++++++++
+ xbmc/filesystem/SFTPDirectory.h | 1 +
+ xbmc/filesystem/SFTPFile.cpp | 55 +++++++++++++++++++++++++++++--------
+ xbmc/filesystem/SFTPFile.h | 4 ++-
+ 4 files changed, 63 insertions(+), 12 deletions(-)
+
+diff --git a/xbmc/filesystem/SFTPDirectory.cpp b/xbmc/filesystem/SFTPDirectory.cpp
+index ed04eb2..a7d7c93 100644
+--- a/xbmc/filesystem/SFTPDirectory.cpp
++++ b/xbmc/filesystem/SFTPDirectory.cpp
+@@ -20,6 +20,7 @@
+
+ #include "SFTPDirectory.h"
+ #ifdef HAS_FILESYSTEM_SFTP
++#include "utils/log.h"
+ #include "URL.h"
+
+ using namespace XFILE;
+@@ -39,4 +40,18 @@ bool CSFTPDirectory::GetDirectory(const CStdString& strPath, CFileItemList &item
+ CSFTPSessionPtr session = CSFTPSessionManager::CreateSession(url);
+ return session->GetDirectory(url.GetWithoutFilename().c_str(), url.GetFileName().c_str(), items);
+ }
++
++bool CSFTPDirectory::Exists(const char* strPath)
++{
++ CURL url(strPath);
++
++ CSFTPSessionPtr session = CSFTPSessionManager::CreateSession(url);
++ if (session)
++ return session->DirectoryExists(url.GetFileName().c_str());
++ else
++ {
++ CLog::Log(LOGERROR, "SFTPDirectory: Failed to create session to check exists");
++ return false;
++ }
++}
+ #endif
+diff --git a/xbmc/filesystem/SFTPDirectory.h b/xbmc/filesystem/SFTPDirectory.h
+index 82ef542..bc94a83 100644
+--- a/xbmc/filesystem/SFTPDirectory.h
++++ b/xbmc/filesystem/SFTPDirectory.h
+@@ -35,6 +35,7 @@
+ CSFTPDirectory(void);
+ virtual ~CSFTPDirectory(void);
+ virtual bool GetDirectory(const CStdString& strPath, CFileItemList &items);
++ virtual bool Exists(const char* strPath);
+ };
+ }
+ #endif
+diff --git a/xbmc/filesystem/SFTPFile.cpp b/xbmc/filesystem/SFTPFile.cpp
+index d176969..34b797f 100644
+--- a/xbmc/filesystem/SFTPFile.cpp
++++ b/xbmc/filesystem/SFTPFile.cpp
+@@ -35,6 +35,11 @@
+ #pragma comment(lib, "ssh.lib")
+ #endif
+
++#ifdef TARGET_WINDOWS
++#define S_ISDIR(m) ((m & _S_IFDIR) != 0)
++#define S_ISREG(m) ((m & _S_IFREG) != 0)
++#endif
++
+ #ifdef _MSC_VER
+ #define O_RDONLY _O_RDONLY
+ #endif
+@@ -187,19 +192,20 @@ bool CSFTPSession::GetDirectory(const CStdString &base, const CStdString &folder
+ return false;
+ }
+
+-bool CSFTPSession::Exists(const char *path)
++bool CSFTPSession::DirectoryExists(const char *path)
+ {
+ bool exists = false;
+- CSingleLock lock(m_critSect);
+- if(m_connected)
+- {
+- sftp_attributes attributes = sftp_stat(m_sftp_session, CorrectPath(path).c_str());
+- exists = attributes != NULL;
++ uint32_t permissions = 0;
++ exists = GetItemPermissions(path, permissions);
++ return exists && S_ISDIR(permissions);
++}
+
+- if (attributes)
+- sftp_attributes_free(attributes);
+- }
+- return exists;
++bool CSFTPSession::FileExists(const char *path)
++{
++ bool exists = false;
++ uint32_t permissions = 0;
++ exists = GetItemPermissions(path, permissions);
++ return exists && S_ISREG(permissions);
+ }
+
+ int CSFTPSession::Stat(const char *path, struct __stat64* buffer)
+@@ -422,6 +428,33 @@ void CSFTPSession::Disconnect()
+ m_session = NULL;
+ }
+
++/*!
++ \brief Gets POSIX compatible permissions information about the specified file or directory.
++ \param path Remote SSH path to the file or directory.
++ \param permissions POSIX compatible permissions information for the file or directory (if it exists). i.e. can use macros S_ISDIR() etc.
++ \return Returns \e true, if it was possible to get permissions for the file or directory, \e false otherwise.
++ */
++bool CSFTPSession::GetItemPermissions(const char *path, uint32_t &permissions)
++{
++ bool gotPermissions = false;
++ CSingleLock lock(m_critSect);
++ if(m_connected)
++ {
++ sftp_attributes attributes = sftp_stat(m_sftp_session, CorrectPath(path).c_str());
++ if (attributes)
++ {
++ if (attributes->flags & SSH_FILEXFER_ATTR_PERMISSIONS)
++ {
++ permissions = attributes->permissions;
++ gotPermissions = true;
++ }
++
++ sftp_attributes_free(attributes);
++ }
++ }
++ return gotPermissions;
++}
++
+ CCriticalSection CSFTPSessionManager::m_critSect;
+ map CSFTPSessionManager::sessions;
+
+@@ -554,7 +587,7 @@ bool CSFTPFile::Exists(const CURL& url)
+ {
+ CSFTPSessionPtr session = CSFTPSessionManager::CreateSession(url);
+ if (session)
+- return session->Exists(url.GetFileName().c_str());
++ return session->FileExists(url.GetFileName().c_str());
+ else
+ {
+ CLog::Log(LOGERROR, "SFTPFile: Failed to create session to check exists");
+diff --git a/xbmc/filesystem/SFTPFile.h b/xbmc/filesystem/SFTPFile.h
+index 7d3574c..1ac83c8 100644
+--- a/xbmc/filesystem/SFTPFile.h
++++ b/xbmc/filesystem/SFTPFile.h
+@@ -58,7 +58,8 @@ class CSFTPSession
+ sftp_file CreateFileHande(const CStdString &file);
+ void CloseFileHandle(sftp_file handle);
+ bool GetDirectory(const CStdString &base, const CStdString &folder, CFileItemList &items);
+- bool Exists(const char *path);
++ bool DirectoryExists(const char *path);
++ bool FileExists(const char *path);
+ int Stat(const char *path, struct __stat64* buffer);
+ int Seek(sftp_file handle, uint64_t position);
+ int Read(sftp_file handle, void *buffer, size_t length);
+@@ -68,6 +69,7 @@ class CSFTPSession
+ bool VerifyKnownHost(ssh_session session);
+ bool Connect(const CStdString &host, unsigned int port, const CStdString &username, const CStdString &password);
+ void Disconnect();
++ bool GetItemPermissions(const char *path, uint32_t &permissions);
+ CCriticalSection m_critSect;
+
+ bool m_connected;
+--
+1.7.10
+
diff --git a/packages/tools/bcm2835-bootloader/meta b/packages/tools/bcm2835-bootloader/meta
index 8235b7a6ab..3bdd164ee0 100644
--- a/packages/tools/bcm2835-bootloader/meta
+++ b/packages/tools/bcm2835-bootloader/meta
@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="bcm2835-bootloader"
-PKG_VERSION="73d99ed"
+PKG_VERSION="f715140"
PKG_REV="1"
PKG_ARCH="arm"
PKG_LICENSE="nonfree"
diff --git a/packages/tools/bcm2835-bootloader/scripts/update.sh b/packages/tools/bcm2835-bootloader/scripts/update.sh
index b567562dea..543dd468d5 100755
--- a/packages/tools/bcm2835-bootloader/scripts/update.sh
+++ b/packages/tools/bcm2835-bootloader/scripts/update.sh
@@ -40,7 +40,7 @@
# some config.txt magic
if [ ! -f $BOOT_ROOT/config.txt ]; then
cp $SYSTEM_ROOT/usr/share/bootloader/config.txt $BOOT_ROOT
- elif [ ! `grep "^[ ]*gpu_mem.*" $BOOT_ROOT/config.txt` ]; then
+ elif [ -z "`grep "^[ ]*gpu_mem.*" $BOOT_ROOT/config.txt`" ]; then
mv $BOOT_ROOT/config.txt $BOOT_ROOT/config.txt.bk
cat $SYSTEM_ROOT/usr/share/bootloader/config.txt \
$BOOT_ROOT/config.txt.bk > $BOOT_ROOT/config.txt
diff --git a/projects/Fusion/options b/projects/Fusion/options
index 7caf675000..e9da651991 100755
--- a/projects/Fusion/options
+++ b/projects/Fusion/options
@@ -295,7 +295,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES="uvesafb xhci-hcd"
diff --git a/projects/Generic/options b/projects/Generic/options
index e4721b5cab..cd327db891 100755
--- a/projects/Generic/options
+++ b/projects/Generic/options
@@ -295,7 +295,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES="uvesafb xhci-hcd"
diff --git a/projects/Generic_OSS/options b/projects/Generic_OSS/options
index bdbdd02d61..e14cc2bf5f 100755
--- a/projects/Generic_OSS/options
+++ b/projects/Generic_OSS/options
@@ -295,7 +295,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES="uvesafb xhci-hcd"
diff --git a/projects/ION/options b/projects/ION/options
index 0558b9a312..92b3ed28ff 100755
--- a/projects/ION/options
+++ b/projects/ION/options
@@ -295,7 +295,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES="uvesafb xhci-hcd"
diff --git a/projects/Intel/options b/projects/Intel/options
index 4d3649447d..0fd79c6a10 100755
--- a/projects/Intel/options
+++ b/projects/Intel/options
@@ -295,7 +295,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES="xhci-hcd"
diff --git a/projects/RPi/options b/projects/RPi/options
index d8b9da5fb0..d35e1e1431 100755
--- a/projects/RPi/options
+++ b/projects/RPi/options
@@ -295,7 +295,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES=""
@@ -309,10 +309,10 @@
SENSOR_SUPPORT="yes"
# build with swap support (yes / no)
- SWAP_SUPPORT="no"
+ SWAP_SUPPORT="yes"
# swapfile size if SWAP_SUPPORT=yes in kB (example: 262144 = 256MB )
- SWAPFILESIZE="262144"
+ SWAPFILESIZE="131072"
# build with automatic update support (yes / no)
UPDATE_SUPPORT="yes"
diff --git a/projects/RPi/patches/linux/linux-3.6-01-RPi_support-d114d19.patch b/projects/RPi/patches/linux/linux-3.6-01-RPi_support-871eef1.patch
similarity index 99%
rename from projects/RPi/patches/linux/linux-3.6-01-RPi_support-d114d19.patch
rename to projects/RPi/patches/linux/linux-3.6-01-RPi_support-871eef1.patch
index 732c6f67cf..44c83b24dc 100644
--- a/projects/RPi/patches/linux/linux-3.6-01-RPi_support-d114d19.patch
+++ b/projects/RPi/patches/linux/linux-3.6-01-RPi_support-871eef1.patch
@@ -1,6 +1,6 @@
diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_cutdown_defconfig linux-rpi-3.6.y/arch/arm/configs/bcmrpi_cutdown_defconfig
--- linux-3.6.11/arch/arm/configs/bcmrpi_cutdown_defconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_cutdown_defconfig 2013-02-01 18:44:58.176205860 +0100
++++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_cutdown_defconfig 2013-02-12 21:07:07.798975698 +0100
@@ -0,0 +1,546 @@
+CONFIG_EXPERIMENTAL=y
+CONFIG_LOCALVERSION="-cutdown"
@@ -550,8 +550,8 @@ diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_cutdown_defconfig linux-rpi-3.6.
+CONFIG_LIBCRC32C=y
diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_defconfig linux-rpi-3.6.y/arch/arm/configs/bcmrpi_defconfig
--- linux-3.6.11/arch/arm/configs/bcmrpi_defconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_defconfig 2013-02-01 18:44:58.174205871 +0100
-@@ -0,0 +1,998 @@
++++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_defconfig 2013-02-12 21:07:07.789975741 +0100
+@@ -0,0 +1,999 @@
+# CONFIG_ARM_PATCH_PHYS_VIRT is not set
+CONFIG_EXPERIMENTAL=y
+# CONFIG_LOCALVERSION_AUTO is not set
@@ -915,6 +915,7 @@ diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_defconfig linux-rpi-3.6.y/arch/a
+CONFIG_SCSI_ISCSI_ATTRS=y
+CONFIG_ISCSI_TCP=m
+CONFIG_MD=y
++CONFIG_MD_RAID0=m
+CONFIG_BLK_DEV_DM=m
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=m
@@ -1552,7 +1553,7 @@ diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_defconfig linux-rpi-3.6.y/arch/a
+CONFIG_LIBCRC32C=y
diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_emergency_defconfig linux-rpi-3.6.y/arch/arm/configs/bcmrpi_emergency_defconfig
--- linux-3.6.11/arch/arm/configs/bcmrpi_emergency_defconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_emergency_defconfig 2013-02-01 18:44:58.173205877 +0100
++++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_emergency_defconfig 2013-02-12 21:07:07.784975766 +0100
@@ -0,0 +1,532 @@
+CONFIG_EXPERIMENTAL=y
+# CONFIG_LOCALVERSION_AUTO is not set
@@ -2088,7 +2089,7 @@ diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_emergency_defconfig linux-rpi-3.
+CONFIG_LIBCRC32C=y
diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_quick_defconfig linux-rpi-3.6.y/arch/arm/configs/bcmrpi_quick_defconfig
--- linux-3.6.11/arch/arm/configs/bcmrpi_quick_defconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_quick_defconfig 2013-02-01 18:44:58.168205905 +0100
++++ linux-rpi-3.6.y/arch/arm/configs/bcmrpi_quick_defconfig 2013-02-12 21:07:07.768975843 +0100
@@ -0,0 +1,298 @@
+# CONFIG_ARM_PATCH_PHYS_VIRT is not set
+CONFIG_EXPERIMENTAL=y
@@ -2390,7 +2391,7 @@ diff -Naur linux-3.6.11/arch/arm/configs/bcmrpi_quick_defconfig linux-rpi-3.6.y/
+CONFIG_AVERAGE=y
diff -Naur linux-3.6.11/arch/arm/include/asm/fiq.h linux-rpi-3.6.y/arch/arm/include/asm/fiq.h
--- linux-3.6.11/arch/arm/include/asm/fiq.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/include/asm/fiq.h 2013-02-01 18:44:58.195205754 +0100
++++ linux-rpi-3.6.y/arch/arm/include/asm/fiq.h 2013-02-12 21:07:07.853975433 +0100
@@ -42,6 +42,7 @@
/* helpers defined in fiqasm.S: */
extern void __set_fiq_regs(unsigned long const *regs);
@@ -2401,7 +2402,7 @@ diff -Naur linux-3.6.11/arch/arm/include/asm/fiq.h linux-rpi-3.6.y/arch/arm/incl
{
diff -Naur linux-3.6.11/arch/arm/Kconfig linux-rpi-3.6.y/arch/arm/Kconfig
--- linux-3.6.11/arch/arm/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/Kconfig 2013-02-01 18:44:58.203205709 +0100
++++ linux-rpi-3.6.y/arch/arm/Kconfig 2013-02-12 21:07:07.880975303 +0100
@@ -999,6 +999,23 @@
help
Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx).
@@ -2436,7 +2437,7 @@ diff -Naur linux-3.6.11/arch/arm/Kconfig linux-rpi-3.6.y/arch/arm/Kconfig
config ARCH_ACORN
diff -Naur linux-3.6.11/arch/arm/Kconfig.debug linux-rpi-3.6.y/arch/arm/Kconfig.debug
--- linux-3.6.11/arch/arm/Kconfig.debug 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/Kconfig.debug 2013-02-01 18:44:58.313205095 +0100
++++ linux-rpi-3.6.y/arch/arm/Kconfig.debug 2013-02-12 21:07:08.173973892 +0100
@@ -371,6 +371,14 @@
For more details about semihosting, please see
chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
@@ -2454,7 +2455,7 @@ diff -Naur linux-3.6.11/arch/arm/Kconfig.debug linux-rpi-3.6.y/arch/arm/Kconfig.
config EARLY_PRINTK
diff -Naur linux-3.6.11/arch/arm/kernel/fiqasm.S linux-rpi-3.6.y/arch/arm/kernel/fiqasm.S
--- linux-3.6.11/arch/arm/kernel/fiqasm.S 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/kernel/fiqasm.S 2013-02-01 18:44:57.931207228 +0100
++++ linux-rpi-3.6.y/arch/arm/kernel/fiqasm.S 2013-02-12 21:07:07.320978000 +0100
@@ -47,3 +47,7 @@
mov r0, r0 @ avoid hazard prior to ARMv4
mov pc, lr
@@ -2465,7 +2466,7 @@ diff -Naur linux-3.6.11/arch/arm/kernel/fiqasm.S linux-rpi-3.6.y/arch/arm/kernel
+ENDPROC(__FIQ_Branch)
diff -Naur linux-3.6.11/arch/arm/kernel/fiq.c linux-rpi-3.6.y/arch/arm/kernel/fiq.c
--- linux-3.6.11/arch/arm/kernel/fiq.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/kernel/fiq.c 2013-02-01 18:44:57.937207195 +0100
++++ linux-rpi-3.6.y/arch/arm/kernel/fiq.c 2013-02-12 21:07:07.338977913 +0100
@@ -137,6 +137,7 @@
EXPORT_SYMBOL(set_fiq_handler);
EXPORT_SYMBOL(__set_fiq_regs); /* defined in fiqasm.S */
@@ -2476,7 +2477,7 @@ diff -Naur linux-3.6.11/arch/arm/kernel/fiq.c linux-rpi-3.6.y/arch/arm/kernel/fi
EXPORT_SYMBOL(enable_fiq);
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/armctrl.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/armctrl.c
--- linux-3.6.11/arch/arm/mach-bcm2708/armctrl.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/armctrl.c 2013-02-01 18:44:57.703208501 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/armctrl.c 2013-02-12 21:07:06.969979690 +0100
@@ -0,0 +1,227 @@
+/*
+ * linux/arch/arm/mach-bcm2708/armctrl.c
@@ -2707,7 +2708,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/armctrl.c linux-rpi-3.6.y/arch/arm
+}
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/armctrl.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/armctrl.h
--- linux-3.6.11/arch/arm/mach-bcm2708/armctrl.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/armctrl.h 2013-02-01 18:44:57.704208496 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/armctrl.h 2013-02-12 21:07:06.970979685 +0100
@@ -0,0 +1,27 @@
+/*
+ * linux/arch/arm/mach-bcm2708/armctrl.h
@@ -2738,8 +2739,8 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/armctrl.h linux-rpi-3.6.y/arch/arm
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708.c
--- linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708.c 2013-02-01 18:44:57.703208501 +0100
-@@ -0,0 +1,950 @@
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708.c 2013-02-12 21:07:06.968979695 +0100
+@@ -0,0 +1,947 @@
+/*
+ * linux/arch/arm/mach-bcm2708/bcm2708.c
+ *
@@ -2902,13 +2903,12 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c linux-rpi-3.6.y/arch/arm
+ return readl(__io_address(ST_BASE + 0x04));
+}
+
++#ifdef ARCH_HAS_READ_CURRENT_TIMER
+int read_current_timer(unsigned long *timer_val)
+{
+ *timer_val = timer_read();
+ return 0;
+}
-+
-+#ifdef CONFIG_ARM_ARCH_TIMER
+EXPORT_SYMBOL(read_current_timer);
+#endif
+
@@ -3501,8 +3501,6 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c linux-rpi-3.6.y/arch/arm
+static void timer_set_mode(enum clock_event_mode mode,
+ struct clock_event_device *clk)
+{
-+ unsigned long stc;
-+
+ switch (mode) {
+ case CLOCK_EVT_MODE_ONESHOT: /* Leave the timer disabled, .set_next_event will enable it */
+ case CLOCK_EVT_MODE_SHUTDOWN:
@@ -3629,7 +3627,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c linux-rpi-3.6.y/arch/arm
+
+/* The assembly versions in delay.S don't account for core freq changing in cpufreq driver */
+/* Use 1MHz system timer for busy waiting */
-+void bcm2708_udelay(unsigned long usecs)
++static void bcm2708_udelay(unsigned long usecs)
+{
+ unsigned long start = timer_read();
+ unsigned long now;
@@ -3639,7 +3637,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c linux-rpi-3.6.y/arch/arm
+}
+
+
-+void bcm2708_const_udelay(unsigned long scaled_usecs)
++static void bcm2708_const_udelay(unsigned long scaled_usecs)
+{
+ /* want /107374, this is about 3% bigger. We know usecs is less than 2000, so shouldn't overflow */
+ const unsigned long usecs = scaled_usecs * 10 >> 20;
@@ -3692,7 +3690,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.c linux-rpi-3.6.y/arch/arm
+module_param(uart_clock, uint, 0644);
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708_gpio.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708_gpio.c
--- linux-3.6.11/arch/arm/mach-bcm2708/bcm2708_gpio.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708_gpio.c 2013-02-01 18:44:57.703208501 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708_gpio.c 2013-02-12 21:07:06.969979690 +0100
@@ -0,0 +1,339 @@
+/*
+ * linux/arch/arm/mach-bcm2708/bcm2708_gpio.c
@@ -4035,7 +4033,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708_gpio.c linux-rpi-3.6.y/arc
+MODULE_LICENSE("GPL");
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708.h
--- linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708.h 2013-02-01 18:44:57.703208501 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/bcm2708.h 2013-02-12 21:07:06.968979695 +0100
@@ -0,0 +1,51 @@
+/*
+ * linux/arch/arm/mach-bcm2708/bcm2708.h
@@ -4090,7 +4088,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/bcm2708.h linux-rpi-3.6.y/arch/arm
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/clock.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/clock.c
--- linux-3.6.11/arch/arm/mach-bcm2708/clock.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/clock.c 2013-02-01 18:44:57.702208507 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/clock.c 2013-02-12 21:07:06.964979714 +0100
@@ -0,0 +1,61 @@
+/*
+ * linux/arch/arm/mach-bcm2708/clock.c
@@ -4155,7 +4153,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/clock.c linux-rpi-3.6.y/arch/arm/m
+EXPORT_SYMBOL(clk_set_rate);
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/clock.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/clock.h
--- linux-3.6.11/arch/arm/mach-bcm2708/clock.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/clock.h 2013-02-01 18:44:57.703208501 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/clock.h 2013-02-12 21:07:06.968979695 +0100
@@ -0,0 +1,24 @@
+/*
+ * linux/arch/arm/mach-bcm2708/clock.h
@@ -4183,8 +4181,8 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/clock.h linux-rpi-3.6.y/arch/arm/m
+};
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/delay.S linux-rpi-3.6.y/arch/arm/mach-bcm2708/delay.S
--- linux-3.6.11/arch/arm/mach-bcm2708/delay.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/delay.S 2013-02-01 18:44:57.704208496 +0100
-@@ -0,0 +1,20 @@
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/delay.S 2013-02-12 21:07:06.970979685 +0100
+@@ -0,0 +1,21 @@
+/*
+ * linux/arch/arm/lib/delay.S
+ *
@@ -4199,6 +4197,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/delay.S linux-rpi-3.6.y/arch/arm/m
+#include
+
+ .text
++.align 3 @ 8 byte alignment seems to be needed to avoid fetching stalls
+@ Delay routine
+ENTRY(bcm2708_delay)
+ subs r0, r0, #1
@@ -4207,7 +4206,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/delay.S linux-rpi-3.6.y/arch/arm/m
+ENDPROC(bcm2708_delay)
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/dma.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/dma.c
--- linux-3.6.11/arch/arm/mach-bcm2708/dma.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/dma.c 2013-02-01 18:44:57.704208496 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/dma.c 2013-02-12 21:07:06.970979685 +0100
@@ -0,0 +1,397 @@
+/*
+ * linux/arch/arm/mach-bcm2708/dma.c
@@ -4608,7 +4607,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/dma.c linux-rpi-3.6.y/arch/arm/mac
+MODULE_PARM_DESC(dmachans, "Bitmap of DMA channels available to the ARM");
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/dmaer.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/dmaer.c
--- linux-3.6.11/arch/arm/mach-bcm2708/dmaer.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/dmaer.c 2013-02-01 18:44:57.708208474 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/dmaer.c 2013-02-12 21:07:06.977979651 +0100
@@ -0,0 +1,887 @@
+#include
+#include
@@ -5499,7 +5498,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/dmaer.c linux-rpi-3.6.y/arch/arm/m
+
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/arm_control.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/arm_control.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/arm_control.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/arm_control.h 2013-02-01 18:44:57.705208490 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/arm_control.h 2013-02-12 21:07:06.972979676 +0100
@@ -0,0 +1,419 @@
+/*
+ * linux/arch/arm/mach-bcm2708/arm_control.h
@@ -5922,7 +5921,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/arm_control.h linux-r
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/arm_power.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/arm_power.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/arm_power.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/arm_power.h 2013-02-01 18:44:57.708208474 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/arm_power.h 2013-02-12 21:07:06.976979656 +0100
@@ -0,0 +1,60 @@
+/*
+ * linux/arch/arm/mach-bcm2708/include/mach/arm_power.h
@@ -5986,7 +5985,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/arm_power.h linux-rpi
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/clkdev.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/clkdev.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/clkdev.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/clkdev.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/clkdev.h 2013-02-12 21:07:06.973979670 +0100
@@ -0,0 +1,7 @@
+#ifndef __ASM_MACH_CLKDEV_H
+#define __ASM_MACH_CLKDEV_H
@@ -5997,7 +5996,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/clkdev.h linux-rpi-3.
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/debug-macro.S linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/debug-macro.S
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/debug-macro.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/debug-macro.S 2013-02-01 18:44:57.705208490 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/debug-macro.S 2013-02-12 21:07:06.972979676 +0100
@@ -0,0 +1,22 @@
+/* arch/arm/mach-bcm2708/include/mach/debug-macro.S
+ *
@@ -6023,7 +6022,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/debug-macro.S linux-r
+#include
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/dma.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/dma.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/dma.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/dma.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/dma.h 2013-02-12 21:07:06.973979670 +0100
@@ -0,0 +1,84 @@
+/*
+ * linux/arch/arm/mach-bcm2708/include/mach/dma.h
@@ -6111,7 +6110,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/dma.h linux-rpi-3.6.y
+#endif /* _MACH_BCM2708_DMA_H */
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/entry-macro.S linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/entry-macro.S
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/entry-macro.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/entry-macro.S 2013-02-01 18:44:57.707208479 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/entry-macro.S 2013-02-12 21:07:06.974979665 +0100
@@ -0,0 +1,69 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/entry-macro.S
@@ -6184,7 +6183,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/entry-macro.S linux-r
+ .endm
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/frc.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/frc.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/frc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/frc.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/frc.h 2013-02-12 21:07:06.972979676 +0100
@@ -0,0 +1,38 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/timex.h
@@ -6226,7 +6225,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/frc.h linux-rpi-3.6.y
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/gpio.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/gpio.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/gpio.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/gpio.h 2013-02-01 18:44:57.707208479 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/gpio.h 2013-02-12 21:07:06.975979661 +0100
@@ -0,0 +1,48 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/gpio.h
@@ -6278,7 +6277,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/gpio.h linux-rpi-3.6.
+
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/hardware.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/hardware.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/hardware.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/hardware.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/hardware.h 2013-02-12 21:07:06.973979670 +0100
@@ -0,0 +1,28 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/hardware.h
@@ -6310,7 +6309,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/hardware.h linux-rpi-
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/io.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/io.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/io.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/io.h 2013-02-01 18:44:57.707208479 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/io.h 2013-02-12 21:07:06.974979665 +0100
@@ -0,0 +1,28 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/io.h
@@ -6342,7 +6341,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/io.h linux-rpi-3.6.y/
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/irqs.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/irqs.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/irqs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/irqs.h 2013-02-01 18:44:57.704208496 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/irqs.h 2013-02-12 21:07:06.971979680 +0100
@@ -0,0 +1,199 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/irqs.h
@@ -6545,7 +6544,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/irqs.h linux-rpi-3.6.
+#endif /* _BCM2708_IRQS_H_ */
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/memory.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/memory.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/memory.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/memory.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/memory.h 2013-02-12 21:07:06.973979670 +0100
@@ -0,0 +1,57 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/memory.h
@@ -6606,7 +6605,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/memory.h linux-rpi-3.
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/platform.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/platform.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/platform.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/platform.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/platform.h 2013-02-12 21:07:06.974979665 +0100
@@ -0,0 +1,226 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/platform.h
@@ -6836,7 +6835,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/platform.h linux-rpi-
+/* END */
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/power.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/power.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/power.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/power.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/power.h 2013-02-12 21:07:06.973979670 +0100
@@ -0,0 +1,26 @@
+/*
+ * linux/arch/arm/mach-bcm2708/power.h
@@ -6866,7 +6865,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/power.h linux-rpi-3.6
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/system.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/system.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/system.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/system.h 2013-02-01 18:44:57.705208490 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/system.h 2013-02-12 21:07:06.972979676 +0100
@@ -0,0 +1,38 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/system.h
@@ -6908,7 +6907,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/system.h linux-rpi-3.
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/timex.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/timex.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/timex.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/timex.h 2013-02-01 18:44:57.707208479 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/timex.h 2013-02-12 21:07:06.975979661 +0100
@@ -0,0 +1,23 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/timex.h
@@ -6935,7 +6934,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/timex.h linux-rpi-3.6
+#define CLOCK_TICK_RATE (1000000)
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/uncompress.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/uncompress.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/uncompress.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/uncompress.h 2013-02-01 18:44:57.706208485 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/uncompress.h 2013-02-12 21:07:06.973979670 +0100
@@ -0,0 +1,85 @@
+/*
+ * arch/arm/mach-bcn2708/include/mach/uncompress.h
@@ -7024,7 +7023,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/uncompress.h linux-rp
+
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vcio.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vcio.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vcio.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vcio.h 2013-02-01 18:44:57.705208490 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vcio.h 2013-02-12 21:07:06.972979676 +0100
@@ -0,0 +1,141 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/vcio.h
@@ -7169,7 +7168,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vcio.h linux-rpi-3.6.
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vc_mem.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vc_mem.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vc_mem.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vc_mem.h 2013-02-01 18:44:57.707208479 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vc_mem.h 2013-02-12 21:07:06.976979656 +0100
@@ -0,0 +1,36 @@
+/*****************************************************************************
+* Copyright 2010 - 2011 Broadcom Corporation. All rights reserved.
@@ -7209,7 +7208,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vc_mem.h linux-rpi-3.
+
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vc_support.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vc_support.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vc_support.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vc_support.h 2013-02-01 18:44:57.707208479 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vc_support.h 2013-02-12 21:07:06.975979661 +0100
@@ -0,0 +1,69 @@
+#ifndef _VC_SUPPORT_H_
+#define _VC_SUPPORT_H_
@@ -7282,7 +7281,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vc_support.h linux-rp
+#endif
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vmalloc.h linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vmalloc.h
--- linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vmalloc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vmalloc.h 2013-02-01 18:44:57.705208490 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/include/mach/vmalloc.h 2013-02-12 21:07:06.971979680 +0100
@@ -0,0 +1,20 @@
+/*
+ * arch/arm/mach-bcm2708/include/mach/vmalloc.h
@@ -7306,7 +7305,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/include/mach/vmalloc.h linux-rpi-3
+#define VMALLOC_END (0xe8000000)
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/Kconfig linux-rpi-3.6.y/arch/arm/mach-bcm2708/Kconfig
--- linux-3.6.11/arch/arm/mach-bcm2708/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/Kconfig 2013-02-01 18:44:57.708208474 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/Kconfig 2013-02-12 21:07:06.976979656 +0100
@@ -0,0 +1,41 @@
+menu "Broadcom BCM2708 Implementations"
+ depends on ARCH_BCM2708
@@ -7351,7 +7350,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/Kconfig linux-rpi-3.6.y/arch/arm/m
+endmenu
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/Makefile linux-rpi-3.6.y/arch/arm/mach-bcm2708/Makefile
--- linux-3.6.11/arch/arm/mach-bcm2708/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/Makefile 2013-02-01 18:44:57.702208507 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/Makefile 2013-02-12 21:07:06.967979699 +0100
@@ -0,0 +1,11 @@
+#
+# Makefile for the linux kernel.
@@ -7366,14 +7365,14 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/Makefile linux-rpi-3.6.y/arch/arm/
+
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/Makefile.boot linux-rpi-3.6.y/arch/arm/mach-bcm2708/Makefile.boot
--- linux-3.6.11/arch/arm/mach-bcm2708/Makefile.boot 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/Makefile.boot 2013-02-01 18:44:57.708208474 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/Makefile.boot 2013-02-12 21:07:06.976979656 +0100
@@ -0,0 +1,3 @@
+ zreladdr-y := 0x00008000
+params_phys-y := 0x00000100
+initrd_phys-y := 0x00800000
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/power.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/power.c
--- linux-3.6.11/arch/arm/mach-bcm2708/power.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/power.c 2013-02-01 18:44:57.702208507 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/power.c 2013-02-12 21:07:06.964979714 +0100
@@ -0,0 +1,194 @@
+/*
+ * linux/arch/arm/mach-bcm2708/power.c
@@ -7571,7 +7570,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/power.c linux-rpi-3.6.y/arch/arm/m
+MODULE_LICENSE("GPL");
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/vcio.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/vcio.c
--- linux-3.6.11/arch/arm/mach-bcm2708/vcio.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/vcio.c 2013-02-01 18:44:57.704208496 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/vcio.c 2013-02-12 21:07:06.969979690 +0100
@@ -0,0 +1,474 @@
+/*
+ * linux/arch/arm/mach-bcm2708/vcio.c
@@ -8049,7 +8048,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/vcio.c linux-rpi-3.6.y/arch/arm/ma
+MODULE_ALIAS("platform:bcm-mbox");
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/vc_mem.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/vc_mem.c
--- linux-3.6.11/arch/arm/mach-bcm2708/vc_mem.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/vc_mem.c 2013-02-01 18:44:57.702208507 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/vc_mem.c 2013-02-12 21:07:06.967979699 +0100
@@ -0,0 +1,458 @@
+/*****************************************************************************
+* Copyright 2010 - 2011 Broadcom Corporation. All rights reserved.
@@ -8511,7 +8510,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/vc_mem.c linux-rpi-3.6.y/arch/arm/
+
diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/vc_support.c linux-rpi-3.6.y/arch/arm/mach-bcm2708/vc_support.c
--- linux-3.6.11/arch/arm/mach-bcm2708/vc_support.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/vc_support.c 2013-02-01 18:44:57.708208474 +0100
++++ linux-rpi-3.6.y/arch/arm/mach-bcm2708/vc_support.c 2013-02-12 21:07:06.977979651 +0100
@@ -0,0 +1,319 @@
+/*
+ * vc_support.c
@@ -8834,7 +8833,7 @@ diff -Naur linux-3.6.11/arch/arm/mach-bcm2708/vc_support.c linux-rpi-3.6.y/arch/
+
diff -Naur linux-3.6.11/arch/arm/Makefile linux-rpi-3.6.y/arch/arm/Makefile
--- linux-3.6.11/arch/arm/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/Makefile 2013-02-01 18:44:57.873207552 +0100
++++ linux-rpi-3.6.y/arch/arm/Makefile 2013-02-12 21:07:07.200978577 +0100
@@ -198,6 +198,7 @@
machine-$(CONFIG_MACH_SPEAR320) := spear3xx
machine-$(CONFIG_MACH_SPEAR600) := spear6xx
@@ -8845,7 +8844,7 @@ diff -Naur linux-3.6.11/arch/arm/Makefile linux-rpi-3.6.y/arch/arm/Makefile
# by CONFIG_* macro name.
diff -Naur linux-3.6.11/arch/arm/mm/alignment.c linux-rpi-3.6.y/arch/arm/mm/alignment.c
--- linux-3.6.11/arch/arm/mm/alignment.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mm/alignment.c 2013-02-01 18:44:57.828207803 +0100
++++ linux-rpi-3.6.y/arch/arm/mm/alignment.c 2013-02-12 21:07:07.139978871 +0100
@@ -856,9 +856,11 @@
case 0x08000000: /* ldm or stm, or thumb-2 32bit instruction */
if (thumb2_32b)
@@ -8862,7 +8861,7 @@ diff -Naur linux-3.6.11/arch/arm/mm/alignment.c linux-rpi-3.6.y/arch/arm/mm/alig
goto bad;
diff -Naur linux-3.6.11/arch/arm/mm/Kconfig linux-rpi-3.6.y/arch/arm/mm/Kconfig
--- linux-3.6.11/arch/arm/mm/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mm/Kconfig 2013-02-01 18:44:57.837207753 +0100
++++ linux-rpi-3.6.y/arch/arm/mm/Kconfig 2013-02-12 21:07:07.151978814 +0100
@@ -354,7 +354,7 @@
# ARMv6
@@ -8874,7 +8873,7 @@ diff -Naur linux-3.6.11/arch/arm/mm/Kconfig linux-rpi-3.6.y/arch/arm/mm/Kconfig
select CPU_PABRT_V6
diff -Naur linux-3.6.11/arch/arm/mm/proc-v6.S linux-rpi-3.6.y/arch/arm/mm/proc-v6.S
--- linux-3.6.11/arch/arm/mm/proc-v6.S 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/mm/proc-v6.S 2013-02-01 18:44:57.836207759 +0100
++++ linux-rpi-3.6.y/arch/arm/mm/proc-v6.S 2013-02-12 21:07:07.150978818 +0100
@@ -73,10 +73,19 @@
*
* IRQs are already disabled.
@@ -8900,7 +8899,7 @@ diff -Naur linux-3.6.11/arch/arm/mm/proc-v6.S linux-rpi-3.6.y/arch/arm/mm/proc-v
ENTRY(cpu_v6_dcache_clean_area)
diff -Naur linux-3.6.11/arch/arm/tools/mach-types linux-rpi-3.6.y/arch/arm/tools/mach-types
--- linux-3.6.11/arch/arm/tools/mach-types 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/arch/arm/tools/mach-types 2013-02-01 18:44:58.048206575 +0100
++++ linux-rpi-3.6.y/arch/arm/tools/mach-types 2013-02-12 21:07:07.544976921 +0100
@@ -519,6 +519,7 @@
prima2_evb MACH_PRIMA2_EVB PRIMA2_EVB 3103
paz00 MACH_PAZ00 PAZ00 3128
@@ -8911,7 +8910,7 @@ diff -Naur linux-3.6.11/arch/arm/tools/mach-types linux-rpi-3.6.y/arch/arm/tools
ics_if_voip MACH_ICS_IF_VOIP ICS_IF_VOIP 3206
diff -Naur linux-3.6.11/drivers/char/broadcom/Kconfig linux-rpi-3.6.y/drivers/char/broadcom/Kconfig
--- linux-3.6.11/drivers/char/broadcom/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/broadcom/Kconfig 2013-02-01 18:45:10.347137966 +0100
++++ linux-rpi-3.6.y/drivers/char/broadcom/Kconfig 2013-02-12 21:07:26.323886503 +0100
@@ -0,0 +1,18 @@
+#
+# Broadcom char driver config
@@ -8933,13 +8932,13 @@ diff -Naur linux-3.6.11/drivers/char/broadcom/Kconfig linux-rpi-3.6.y/drivers/ch
+
diff -Naur linux-3.6.11/drivers/char/broadcom/Makefile linux-rpi-3.6.y/drivers/char/broadcom/Makefile
--- linux-3.6.11/drivers/char/broadcom/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/broadcom/Makefile 2013-02-01 18:45:10.347137966 +0100
++++ linux-rpi-3.6.y/drivers/char/broadcom/Makefile 2013-02-12 21:07:26.323886503 +0100
@@ -0,0 +1,2 @@
+obj-$(CONFIG_BCM_VC_CMA) += vc_cma/
+
diff -Naur linux-3.6.11/drivers/char/broadcom/vc_cma/Makefile linux-rpi-3.6.y/drivers/char/broadcom/vc_cma/Makefile
--- linux-3.6.11/drivers/char/broadcom/vc_cma/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/broadcom/vc_cma/Makefile 2013-02-01 18:45:10.346137971 +0100
++++ linux-rpi-3.6.y/drivers/char/broadcom/vc_cma/Makefile 2013-02-12 21:07:26.323886503 +0100
@@ -0,0 +1,15 @@
+EXTRA_CFLAGS += -Wall -Wstrict-prototypes -Wno-trigraphs
+EXTRA_CFLAGS += -Werror
@@ -8958,7 +8957,7 @@ diff -Naur linux-3.6.11/drivers/char/broadcom/vc_cma/Makefile linux-rpi-3.6.y/dr
+
diff -Naur linux-3.6.11/drivers/char/broadcom/vc_cma/vc_cma.c linux-rpi-3.6.y/drivers/char/broadcom/vc_cma/vc_cma.c
--- linux-3.6.11/drivers/char/broadcom/vc_cma/vc_cma.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/broadcom/vc_cma/vc_cma.c 2013-02-01 18:45:10.347137966 +0100
++++ linux-rpi-3.6.y/drivers/char/broadcom/vc_cma/vc_cma.c 2013-02-12 21:07:26.323886503 +0100
@@ -0,0 +1,1145 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -10107,7 +10106,7 @@ diff -Naur linux-3.6.11/drivers/char/broadcom/vc_cma/vc_cma.c linux-rpi-3.6.y/dr
+MODULE_AUTHOR("Broadcom Corporation");
diff -Naur linux-3.6.11/drivers/char/hw_random/bcm2708-rng.c linux-rpi-3.6.y/drivers/char/hw_random/bcm2708-rng.c
--- linux-3.6.11/drivers/char/hw_random/bcm2708-rng.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/hw_random/bcm2708-rng.c 2013-02-01 18:45:10.350137949 +0100
++++ linux-rpi-3.6.y/drivers/char/hw_random/bcm2708-rng.c 2013-02-12 21:07:26.328886479 +0100
@@ -0,0 +1,117 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -10228,7 +10227,7 @@ diff -Naur linux-3.6.11/drivers/char/hw_random/bcm2708-rng.c linux-rpi-3.6.y/dri
+MODULE_LICENSE("GPL and additional rights");
diff -Naur linux-3.6.11/drivers/char/hw_random/Kconfig linux-rpi-3.6.y/drivers/char/hw_random/Kconfig
--- linux-3.6.11/drivers/char/hw_random/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/hw_random/Kconfig 2013-02-01 18:45:10.350137949 +0100
++++ linux-rpi-3.6.y/drivers/char/hw_random/Kconfig 2013-02-12 21:07:26.327886484 +0100
@@ -289,3 +289,14 @@
module will be called exynos-rng.
@@ -10247,7 +10246,7 @@ diff -Naur linux-3.6.11/drivers/char/hw_random/Kconfig linux-rpi-3.6.y/drivers/c
\ Kein Zeilenumbruch am Dateiende.
diff -Naur linux-3.6.11/drivers/char/hw_random/Makefile linux-rpi-3.6.y/drivers/char/hw_random/Makefile
--- linux-3.6.11/drivers/char/hw_random/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/hw_random/Makefile 2013-02-01 18:45:10.348137960 +0100
++++ linux-rpi-3.6.y/drivers/char/hw_random/Makefile 2013-02-12 21:07:26.325886494 +0100
@@ -25,3 +25,4 @@
obj-$(CONFIG_HW_RANDOM_PPC4XX) += ppc4xx-rng.o
obj-$(CONFIG_HW_RANDOM_PSERIES) += pseries-rng.o
@@ -10255,7 +10254,7 @@ diff -Naur linux-3.6.11/drivers/char/hw_random/Makefile linux-rpi-3.6.y/drivers/
+obj-$(CONFIG_HW_RANDOM_BCM2708) += bcm2708-rng.o
diff -Naur linux-3.6.11/drivers/char/Kconfig linux-rpi-3.6.y/drivers/char/Kconfig
--- linux-3.6.11/drivers/char/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/Kconfig 2013-02-01 18:45:10.360137896 +0100
++++ linux-rpi-3.6.y/drivers/char/Kconfig 2013-02-12 21:07:26.338886431 +0100
@@ -585,6 +585,8 @@
source "drivers/s390/char/Kconfig"
@@ -10267,7 +10266,7 @@ diff -Naur linux-3.6.11/drivers/char/Kconfig linux-rpi-3.6.y/drivers/char/Kconfi
default n
diff -Naur linux-3.6.11/drivers/char/Makefile linux-rpi-3.6.y/drivers/char/Makefile
--- linux-3.6.11/drivers/char/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/char/Makefile 2013-02-01 18:45:10.340138003 +0100
++++ linux-rpi-3.6.y/drivers/char/Makefile 2013-02-12 21:07:26.316886537 +0100
@@ -63,3 +63,6 @@
js-rtc-y = rtc.o
@@ -10277,7 +10276,7 @@ diff -Naur linux-3.6.11/drivers/char/Makefile linux-rpi-3.6.y/drivers/char/Makef
+
diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/drivers/cpufreq/bcm2835-cpufreq.c
--- linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/cpufreq/bcm2835-cpufreq.c 2013-02-01 18:45:09.408143141 +0100
++++ linux-rpi-3.6.y/drivers/cpufreq/bcm2835-cpufreq.c 2013-02-12 21:07:25.172892045 +0100
@@ -0,0 +1,239 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
@@ -10372,7 +10371,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+ if (s == 0 && (msg.request_code & 0x80000000))
+ actual_rate = msg.tag.val/1000;
+
-+ print_debug("Setting new frequency = %d -> %d (actual %d)", cur_rate, arm_rate, actual_rate);
++ print_debug("Setting new frequency = %d -> %d (actual %d)\n", cur_rate, arm_rate, actual_rate);
+ return actual_rate;
+}
+
@@ -10398,7 +10397,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+ if (s == 0 && (msg.request_code & 0x80000000))
+ arm_rate = msg.tag.val/1000;
+
-+ print_debug("%s frequency = %d",
++ print_debug("%s frequency = %d\n",
+ tag == VCMSG_GET_CLOCK_RATE ? "Current":
+ tag == VCMSG_GET_MIN_CLOCK ? "Min":
+ tag == VCMSG_GET_MAX_CLOCK ? "Max":
@@ -10414,7 +10413,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+*/
+static int __init bcm2835_cpufreq_module_init(void)
+{
-+ print_debug("IN");
++ print_debug("IN\n");
+ return cpufreq_register_driver(&bcm2835_cpufreq_driver);
+}
+
@@ -10425,7 +10424,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+*/
+static void __exit bcm2835_cpufreq_module_exit(void)
+{
-+ print_debug("IN");
++ print_debug("IN\n");
+ cpufreq_unregister_driver(&bcm2835_cpufreq_driver);
+ return;
+}
@@ -10445,7 +10444,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+ policy->max = policy->cpuinfo.max_freq = bcm2835_cpufreq_get_clock(VCMSG_GET_MAX_CLOCK);
+ policy->cur = bcm2835_cpufreq_get_clock(VCMSG_GET_CLOCK_RATE);
+
-+ print_info("min=%d max=%d cur=%d", policy->min, policy->max, policy->cur);
++ print_info("min=%d max=%d cur=%d\n", policy->min, policy->max, policy->cur);
+ return 0;
+}
+
@@ -10459,7 +10458,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+{
+ unsigned int target = target_freq;
+ unsigned int cur = policy->cur;
-+ print_debug("%s: min=%d max=%d cur=%d target=%d",policy->governor->name,policy->min,policy->max,policy->cur,target_freq);
++ print_debug("%s: min=%d max=%d cur=%d target=%d\n",policy->governor->name,policy->min,policy->max,policy->cur,target_freq);
+
+ /* if we are above min and using ondemand, then just use max */
+ if (strcmp("ondemand", policy->governor->name)==0 && target > policy->min)
@@ -10473,18 +10472,18 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+
+ if (!policy->cur)
+ {
-+ print_err("Error occurred setting a new frequency (%d)!", target);
++ print_err("Error occurred setting a new frequency (%d)!\n", target);
+ policy->cur = bcm2835_cpufreq_get_clock(VCMSG_GET_CLOCK_RATE);
+ return -EINVAL;
+ }
-+ print_debug("Freq %d->%d (min=%d max=%d target=%d request=%d)", cur, policy->cur, policy->min, policy->max, target_freq, target);
++ print_debug("Freq %d->%d (min=%d max=%d target=%d request=%d)\n", cur, policy->cur, policy->min, policy->max, target_freq, target);
+ return 0;
+}
+
+static unsigned int bcm2835_cpufreq_driver_get(unsigned int cpu)
+{
+ unsigned int actual_rate = bcm2835_cpufreq_get_clock(VCMSG_GET_CLOCK_RATE);
-+ print_debug("%d", actual_rate);
++ print_debug("cpu=%d\n", actual_rate);
+ return actual_rate;
+}
+
@@ -10496,7 +10495,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+
+static int bcm2835_cpufreq_driver_verify(struct cpufreq_policy *policy)
+{
-+ print_info("switching to governor %s", policy->governor->name);
++ print_info("switching to governor %s\n", policy->governor->name);
+ return 0;
+}
+
@@ -10520,7 +10519,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/bcm2835-cpufreq.c linux-rpi-3.6.y/driver
+
diff -Naur linux-3.6.11/drivers/cpufreq/Kconfig.arm linux-rpi-3.6.y/drivers/cpufreq/Kconfig.arm
--- linux-3.6.11/drivers/cpufreq/Kconfig.arm 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/cpufreq/Kconfig.arm 2013-02-01 18:45:09.418143085 +0100
++++ linux-rpi-3.6.y/drivers/cpufreq/Kconfig.arm 2013-02-12 21:07:25.183891992 +0100
@@ -76,3 +76,12 @@
help
This adds the CPUFreq driver for Samsung EXYNOS5250
@@ -10536,7 +10535,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/Kconfig.arm linux-rpi-3.6.y/drivers/cpuf
+
diff -Naur linux-3.6.11/drivers/cpufreq/Makefile linux-rpi-3.6.y/drivers/cpufreq/Makefile
--- linux-3.6.11/drivers/cpufreq/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/cpufreq/Makefile 2013-02-01 18:45:09.406143152 +0100
++++ linux-rpi-3.6.y/drivers/cpufreq/Makefile 2013-02-12 21:07:25.171892050 +0100
@@ -48,6 +48,7 @@
obj-$(CONFIG_ARM_EXYNOS4X12_CPUFREQ) += exynos4x12-cpufreq.o
obj-$(CONFIG_ARM_EXYNOS5250_CPUFREQ) += exynos5250-cpufreq.o
@@ -10547,7 +10546,7 @@ diff -Naur linux-3.6.11/drivers/cpufreq/Makefile linux-rpi-3.6.y/drivers/cpufreq
# PowerPC platform drivers
diff -Naur linux-3.6.11/drivers/hwmon/bcm2835-hwmon.c linux-rpi-3.6.y/drivers/hwmon/bcm2835-hwmon.c
--- linux-3.6.11/drivers/hwmon/bcm2835-hwmon.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/hwmon/bcm2835-hwmon.c 2013-02-01 18:45:09.463142834 +0100
++++ linux-rpi-3.6.y/drivers/hwmon/bcm2835-hwmon.c 2013-02-12 21:07:25.275891549 +0100
@@ -0,0 +1,219 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
@@ -10770,7 +10769,7 @@ diff -Naur linux-3.6.11/drivers/hwmon/bcm2835-hwmon.c linux-rpi-3.6.y/drivers/hw
+module_platform_driver(bcm2835_hwmon_driver);
diff -Naur linux-3.6.11/drivers/hwmon/Kconfig linux-rpi-3.6.y/drivers/hwmon/Kconfig
--- linux-3.6.11/drivers/hwmon/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/hwmon/Kconfig 2013-02-01 18:45:09.486142706 +0100
++++ linux-rpi-3.6.y/drivers/hwmon/Kconfig 2013-02-12 21:07:25.320891333 +0100
@@ -1411,6 +1411,16 @@
help
Support for the A/D converter on MC13783 and MC13892 PMIC.
@@ -10790,7 +10789,7 @@ diff -Naur linux-3.6.11/drivers/hwmon/Kconfig linux-rpi-3.6.y/drivers/hwmon/Kcon
comment "ACPI drivers"
diff -Naur linux-3.6.11/drivers/hwmon/Makefile linux-rpi-3.6.y/drivers/hwmon/Makefile
--- linux-3.6.11/drivers/hwmon/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/hwmon/Makefile 2013-02-01 18:45:09.446142929 +0100
++++ linux-rpi-3.6.y/drivers/hwmon/Makefile 2013-02-12 21:07:25.224891794 +0100
@@ -129,6 +129,7 @@
obj-$(CONFIG_SENSORS_W83L786NG) += w83l786ng.o
obj-$(CONFIG_SENSORS_WM831X) += wm831x-hwmon.o
@@ -10801,7 +10800,7 @@ diff -Naur linux-3.6.11/drivers/hwmon/Makefile linux-rpi-3.6.y/drivers/hwmon/Mak
diff -Naur linux-3.6.11/drivers/i2c/busses/i2c-bcm2708.c linux-rpi-3.6.y/drivers/i2c/busses/i2c-bcm2708.c
--- linux-3.6.11/drivers/i2c/busses/i2c-bcm2708.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/i2c/busses/i2c-bcm2708.c 2013-02-01 18:45:09.654141768 +0100
++++ linux-rpi-3.6.y/drivers/i2c/busses/i2c-bcm2708.c 2013-02-12 21:07:25.601889980 +0100
@@ -0,0 +1,400 @@
+/*
+ * Driver for Broadcom BCM2708 BSC Controllers
@@ -11205,7 +11204,7 @@ diff -Naur linux-3.6.11/drivers/i2c/busses/i2c-bcm2708.c linux-rpi-3.6.y/drivers
+MODULE_ALIAS("platform:" DRV_NAME);
diff -Naur linux-3.6.11/drivers/i2c/busses/Kconfig linux-rpi-3.6.y/drivers/i2c/busses/Kconfig
--- linux-3.6.11/drivers/i2c/busses/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/i2c/busses/Kconfig 2013-02-01 18:45:09.671141673 +0100
++++ linux-rpi-3.6.y/drivers/i2c/busses/Kconfig 2013-02-12 21:07:25.617889902 +0100
@@ -314,6 +314,25 @@
This driver can also be built as a module. If so, the module
will be called i2c-au1550.
@@ -11234,7 +11233,7 @@ diff -Naur linux-3.6.11/drivers/i2c/busses/Kconfig linux-rpi-3.6.y/drivers/i2c/b
depends on BLACKFIN
diff -Naur linux-3.6.11/drivers/i2c/busses/Makefile linux-rpi-3.6.y/drivers/i2c/busses/Makefile
--- linux-3.6.11/drivers/i2c/busses/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/i2c/busses/Makefile 2013-02-01 18:45:09.650141790 +0100
++++ linux-rpi-3.6.y/drivers/i2c/busses/Makefile 2013-02-12 21:07:25.596890004 +0100
@@ -30,6 +30,7 @@
# Embedded system I2C/SMBus host controller drivers
obj-$(CONFIG_I2C_AT91) += i2c-at91.o
@@ -11245,7 +11244,7 @@ diff -Naur linux-3.6.11/drivers/i2c/busses/Makefile linux-rpi-3.6.y/drivers/i2c/
obj-$(CONFIG_I2C_DAVINCI) += i2c-davinci.o
diff -Naur linux-3.6.11/drivers/misc/Kconfig linux-rpi-3.6.y/drivers/misc/Kconfig
--- linux-3.6.11/drivers/misc/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/Kconfig 2013-02-01 18:45:12.476126489 +0100
++++ linux-rpi-3.6.y/drivers/misc/Kconfig 2013-02-12 21:07:28.724874942 +0100
@@ -517,4 +517,6 @@
source "drivers/misc/carma/Kconfig"
source "drivers/misc/altera-stapl/Kconfig"
@@ -11255,7 +11254,7 @@ diff -Naur linux-3.6.11/drivers/misc/Kconfig linux-rpi-3.6.y/drivers/misc/Kconfi
+
diff -Naur linux-3.6.11/drivers/misc/Makefile linux-rpi-3.6.y/drivers/misc/Makefile
--- linux-3.6.11/drivers/misc/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/Makefile 2013-02-01 18:45:12.463126559 +0100
++++ linux-rpi-3.6.y/drivers/misc/Makefile 2013-02-12 21:07:28.710875010 +0100
@@ -50,3 +50,4 @@
obj-$(CONFIG_USB_SWITCH_FSA9480) += fsa9480.o
obj-$(CONFIG_ALTERA_STAPL) +=altera-stapl/
@@ -11263,7 +11262,7 @@ diff -Naur linux-3.6.11/drivers/misc/Makefile linux-rpi-3.6.y/drivers/misc/Makef
+obj-$(CONFIG_BCM2708_VCHIQ) += vc04_services/
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/connections/connection.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/connections/connection.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/connections/connection.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/connections/connection.h 2013-02-01 18:45:12.485126440 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/connections/connection.h 2013-02-12 21:07:28.733874899 +0100
@@ -0,0 +1,328 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -11595,7 +11594,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/connections/co
+/****************************** End of file **********************************/
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/message_drivers/message.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/message_drivers/message.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/message_drivers/message.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/message_drivers/message.h 2013-02-01 18:45:12.485126440 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/message_drivers/message.h 2013-02-12 21:07:28.733874899 +0100
@@ -0,0 +1,204 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -11803,7 +11802,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/message_driver
+/****************************** End of file ***********************************/
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_cfg.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_cfg.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_cfg.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_cfg.h 2013-02-01 18:45:12.484126446 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_cfg.h 2013-02-12 21:07:28.732874904 +0100
@@ -0,0 +1,224 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -12031,7 +12030,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_cfg.h lin
+/****************************** End of file **********************************/
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_cfg_internal.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_cfg_internal.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_cfg_internal.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_cfg_internal.h 2013-02-01 18:45:12.484126446 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_cfg_internal.h 2013-02-12 21:07:28.732874904 +0100
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -12106,7 +12105,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_cfg_inter
+#endif /*VCHI_CFG_INTERNAL_H_*/
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_common.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_common.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_common.h 2013-02-01 18:45:12.484126446 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_common.h 2013-02-12 21:07:28.732874904 +0100
@@ -0,0 +1,163 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -12273,8 +12272,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_common.h
+#endif // VCHI_COMMON_H_
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi.h 2013-02-01 18:45:12.485126440 +0100
-@@ -0,0 +1,370 @@
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi.h 2013-02-12 21:07:28.732874904 +0100
+@@ -0,0 +1,373 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
+ *
@@ -12485,6 +12484,9 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi.h linux-r
+ SERVICE_CREATION_T *setup,
+ VCHI_SERVICE_HANDLE_T *handle);
+
++extern int32_t vchi_get_peer_version( const VCHI_SERVICE_HANDLE_T handle,
++ short *peer_version );
++
+// Routine to close a named service
+extern int32_t vchi_service_close( const VCHI_SERVICE_HANDLE_T handle );
+
@@ -12647,7 +12649,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi.h linux-r
+/****************************** End of file **********************************/
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_mh.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_mh.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_mh.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_mh.h 2013-02-01 18:45:12.485126440 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchi/vchi_mh.h 2013-02-12 21:07:28.733874899 +0100
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -12693,7 +12695,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchi/vchi_mh.h linu
+#endif
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c 2013-02-01 18:45:12.483126451 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c 2013-02-12 21:07:28.730874913 +0100
@@ -0,0 +1,538 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -13235,7 +13237,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_283
+}
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835.h 2013-02-01 18:45:12.484126446 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_2835.h 2013-02-12 21:07:28.731874909 +0100
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -13281,7 +13283,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_283
+#endif /* VCHIQ_2835_H */
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c 2013-02-01 18:45:12.481126462 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c 2013-02-12 21:07:28.728874924 +0100
@@ -0,0 +1,2802 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -16087,7 +16089,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm
+MODULE_AUTHOR("Broadcom Corporation");
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.h 2013-02-01 18:45:12.484126446 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.h 2013-02-12 21:07:28.731874909 +0100
@@ -0,0 +1,212 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -16303,7 +16305,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm
+#endif /* VCHIQ_ARM_H */
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_build_info.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_build_info.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_build_info.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_build_info.h 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_build_info.h 2013-02-12 21:07:28.729874918 +0100
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -16344,7 +16346,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_bui
+const char *vchiq_get_build_date(void);
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg.h 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg.h 2013-02-12 21:07:28.730874913 +0100
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -16384,7 +16386,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg
+
+#define VCHIQ_MAGIC VCHIQ_MAKE_FOURCC('V', 'C', 'H', 'I')
+/* The version of VCHIQ - change with any non-trivial change */
-+#define VCHIQ_VERSION 5
++#define VCHIQ_VERSION 6
+/* The minimum compatible version - update to match VCHIQ_VERSION with any
+** incompatible change */
+#define VCHIQ_VERSION_MIN 3
@@ -16408,7 +16410,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cfg
+#endif /* VCHIQ_CFG_H */
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.c 2013-02-01 18:45:12.483126451 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.c 2013-02-12 21:07:28.731874909 +0100
@@ -0,0 +1,119 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -16531,7 +16533,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_con
+EXPORT_SYMBOL(vchiq_add_connected_callback);
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.h 2013-02-01 18:45:12.483126451 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_connected.h 2013-02-12 21:07:28.731874909 +0100
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -16586,8 +16588,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_con
+
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.c 2013-02-01 18:45:12.481126462 +0100
-@@ -0,0 +1,3727 @@
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.c 2013-02-12 21:07:28.729874918 +0100
+@@ -0,0 +1,3818 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
+ *
@@ -16648,6 +16650,10 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ short version_min;
+};
+
++struct vchiq_openack_payload {
++ short version;
++};
++
+/* we require this for consistency between endpoints */
+vchiq_static_assert(sizeof(VCHIQ_HEADER_T) == 8);
+vchiq_static_assert(IS_POW2(sizeof(VCHIQ_HEADER_T)));
@@ -17992,6 +17998,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+static void
+resume_bulks(VCHIQ_STATE_T *state)
+{
++ int i;
+ if (unlikely(atomic_dec_return(&pause_bulks_count) != 0)) {
+ WARN_ON_ONCE(1);
+ atomic_set(&pause_bulks_count, 0);
@@ -18000,6 +18007,34 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+
+ /* Allow bulk transfers from all services */
+ mutex_unlock(&state->bulk_transfer_mutex);
++
++ if (state->deferred_bulks == 0)
++ return;
++
++ /* Deal with any bulks which had to be deferred due to being in
++ * paused state. Don't try to match up to number of deferred bulks
++ * in case we've had something come and close the service in the
++ * interim - just process all bulk queues for all services */
++ vchiq_log_info(vchiq_core_log_level, "%s: processing %d deferred bulks",
++ __func__, state->deferred_bulks);
++
++ for (i = 0; i < state->unused_service; i++) {
++ VCHIQ_SERVICE_T *service = state->services[i];
++ int resolved_rx = 0;
++ int resolved_tx = 0;
++ if (!service || (service->srvstate != VCHIQ_SRVSTATE_OPEN))
++ continue;
++
++ mutex_lock(&service->bulk_mutex);
++ resolved_rx = resolve_bulks(service, &service->bulk_rx);
++ resolved_tx = resolve_bulks(service, &service->bulk_tx);
++ mutex_unlock(&service->bulk_mutex);
++ if (resolved_rx)
++ notify_bulks(service, &service->bulk_rx, 1);
++ if (resolved_tx)
++ notify_bulks(service, &service->bulk_tx, 1);
++ }
++ state->deferred_bulks = 0;
+}
+
+static int
@@ -18015,7 +18050,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ type = VCHIQ_MSG_TYPE(msgid);
+ localport = VCHIQ_MSG_DSTPORT(msgid);
+ remoteport = VCHIQ_MSG_SRCPORT(msgid);
-+ if (size == sizeof(struct vchiq_open_payload)) {
++ if (size >= sizeof(struct vchiq_open_payload)) {
+ const struct vchiq_open_payload *payload =
+ (struct vchiq_open_payload *)header->data;
+ unsigned int fourcc;
@@ -18048,7 +18083,17 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ unlock_service(service);
+ goto fail_open;
+ }
++ service->peer_version = version;
++
+ if (service->srvstate == VCHIQ_SRVSTATE_LISTENING) {
++ struct vchiq_openack_payload ack_payload = {
++ service->version
++ };
++ VCHIQ_ELEMENT_T body = {
++ &ack_payload,
++ sizeof(ack_payload)
++ };
++
+ /* Acknowledge the OPEN */
+ if (service->sync) {
+ if (queue_message_sync(state, NULL,
@@ -18056,7 +18101,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ VCHIQ_MSG_OPENACK,
+ service->localport,
+ remoteport),
-+ NULL, 0, 0, 0) == VCHIQ_RETRY)
++ &body, 1, sizeof(ack_payload),
++ 0) == VCHIQ_RETRY)
+ goto bail_not_ready;
+ } else {
+ if (queue_message(state, NULL,
@@ -18064,7 +18110,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ VCHIQ_MSG_OPENACK,
+ service->localport,
+ remoteport),
-+ NULL, 0, 0, 0) == VCHIQ_RETRY)
++ &body, 1, sizeof(ack_payload),
++ 0) == VCHIQ_RETRY)
+ goto bail_not_ready;
+ }
+
@@ -18229,10 +18276,16 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ goto bail_not_ready;
+ break;
+ case VCHIQ_MSG_OPENACK:
++ if (size >= sizeof(struct vchiq_openack_payload)) {
++ const struct vchiq_openack_payload *payload =
++ (struct vchiq_openack_payload *)
++ header->data;
++ service->peer_version = payload->version;
++ }
+ vchiq_log_info(vchiq_core_log_level,
-+ "%d: prs OPENACK@%x (%d->%d)",
-+ state->id, (unsigned int)header,
-+ remoteport, localport);
++ "%d: prs OPENACK@%x,%x (%d->%d) v:%d",
++ state->id, (unsigned int)header, size,
++ remoteport, localport, service->peer_version);
+ if (service->srvstate ==
+ VCHIQ_SRVSTATE_OPENING) {
+ service->remoteport = remoteport;
@@ -18333,7 +18386,22 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+
+ queue->remote_insert++;
+
-+ if (state->conn_state ==
++ if (atomic_read(&pause_bulks_count)) {
++ state->deferred_bulks++;
++ vchiq_log_info(vchiq_core_log_level,
++ "%s: deferring bulk (%d)",
++ __func__,
++ state->deferred_bulks);
++ if (state->conn_state !=
++ VCHIQ_CONNSTATE_PAUSE_SENT)
++ vchiq_log_error(
++ vchiq_core_log_level,
++ "%s: bulks paused in "
++ "unexpected state %s",
++ __func__,
++ conn_state_names[
++ state->conn_state]);
++ } else if (state->conn_state ==
+ VCHIQ_CONNSTATE_CONNECTED) {
+ DEBUG_TRACE(PARSE_LINE);
+ resolved = resolve_bulks(service,
@@ -18654,10 +18722,16 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+
+ switch (type) {
+ case VCHIQ_MSG_OPENACK:
++ if (size >= sizeof(struct vchiq_openack_payload)) {
++ const struct vchiq_openack_payload *payload =
++ (struct vchiq_openack_payload *)
++ header->data;
++ service->peer_version = payload->version;
++ }
+ vchiq_log_info(vchiq_sync_log_level,
-+ "%d: sf OPENACK@%x (%d->%d)",
-+ state->id, (unsigned int)header,
-+ remoteport, localport);
++ "%d: sf OPENACK@%x,%x (%d->%d) v:%d",
++ state->id, (unsigned int)header, size,
++ remoteport, localport, service->peer_version);
+ if (service->srvstate == VCHIQ_SRVSTATE_OPENING) {
+ service->remoteport = remoteport;
+ vchiq_set_service_state(service,
@@ -19919,6 +19993,25 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+}
+
+VCHIQ_STATUS_T
++vchiq_get_peer_version(VCHIQ_SERVICE_HANDLE_T handle, short *peer_version)
++{
++ VCHIQ_STATUS_T status = VCHIQ_ERROR;
++ VCHIQ_SERVICE_T *service = find_service_by_handle(handle);
++
++ if (!service ||
++ (vchiq_check_service(service) != VCHIQ_SUCCESS) ||
++ !peer_version)
++ goto exit;
++ *peer_version = service->peer_version;
++ status = VCHIQ_SUCCESS;
++
++exit:
++ if (service)
++ unlock_service(service);
++ return status;
++}
++
++VCHIQ_STATUS_T
+vchiq_get_config(VCHIQ_INSTANCE_T instance,
+ int config_size, VCHIQ_CONFIG_T *pconfig)
+{
@@ -20317,8 +20410,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+}
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.h 2013-02-01 18:45:12.483126451 +0100
-@@ -0,0 +1,698 @@
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.h 2013-02-12 21:07:28.731874909 +0100
+@@ -0,0 +1,703 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
+ *
@@ -20615,6 +20708,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ atomic_t poll_flags;
+ short version;
+ short version_min;
++ short peer_version;
+
+ VCHIQ_STATE_T *state;
+ VCHIQ_INSTANCE_T instance;
@@ -20805,6 +20899,10 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+ /* Signalled when a free data slot becomes available. */
+ struct semaphore data_quota_event;
+
++ /* Incremented when there are bulk transfers which cannot be processed
++ * whilst paused and must be processed on resume */
++ int deferred_bulks;
++
+ struct state_stats_struct {
+ int slot_stalls;
+ int data_stalls;
@@ -21019,7 +21117,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_cor
+#endif
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_genversion linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_genversion
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_genversion 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_genversion 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_genversion 2013-02-12 21:07:28.730874913 +0100
@@ -0,0 +1,89 @@
+#!/usr/bin/perl -w
+
@@ -21112,7 +21210,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_gen
+
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq.h 2013-02-01 18:45:12.480126467 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq.h 2013-02-12 21:07:28.728874924 +0100
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -21157,8 +21255,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq.h l
+
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_if.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_if.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_if.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_if.h 2013-02-01 18:45:12.484126446 +0100
-@@ -0,0 +1,182 @@
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_if.h 2013-02-12 21:07:28.732874904 +0100
+@@ -0,0 +1,185 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
+ *
@@ -21340,10 +21438,13 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_if.
+extern VCHIQ_STATUS_T vchiq_dump_phys_mem(VCHIQ_SERVICE_HANDLE_T service,
+ void *ptr, size_t num_bytes);
+
++extern VCHIQ_STATUS_T vchiq_get_peer_version(VCHIQ_SERVICE_HANDLE_T handle,
++ short *peer_version);
++
+#endif /* VCHIQ_IF_H */
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ioctl.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ioctl.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ioctl.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ioctl.h 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ioctl.h 2013-02-12 21:07:28.729874918 +0100
@@ -0,0 +1,129 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -21476,7 +21577,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ioc
+#endif
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_kern_lib.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_kern_lib.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_kern_lib.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_kern_lib.c 2013-02-01 18:45:12.483126451 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_kern_lib.c 2013-02-12 21:07:28.730874913 +0100
@@ -0,0 +1,454 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -21934,7 +22035,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ker
+}
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_memdrv.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_memdrv.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_memdrv.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_memdrv.h 2013-02-01 18:45:12.484126446 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_memdrv.h 2013-02-12 21:07:28.731874909 +0100
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -22009,7 +22110,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_mem
+#endif
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pagelist.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pagelist.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pagelist.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pagelist.h 2013-02-01 18:45:12.483126451 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pagelist.h 2013-02-12 21:07:28.731874909 +0100
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -22071,7 +22172,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pag
+#endif /* VCHIQ_PAGELIST_H */
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_proc.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_proc.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_proc.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_proc.c 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_proc.c 2013-02-12 21:07:28.729874918 +0100
@@ -0,0 +1,240 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -22315,8 +22416,8 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_pro
+
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shim.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shim.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shim.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shim.c 2013-02-01 18:45:12.483126451 +0100
-@@ -0,0 +1,802 @@
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shim.c 2013-02-12 21:07:28.731874909 +0100
+@@ -0,0 +1,815 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
+ *
@@ -23031,6 +23132,19 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shi
+}
+EXPORT_SYMBOL(vchi_service_destroy);
+
++int32_t vchi_get_peer_version( const VCHI_SERVICE_HANDLE_T handle, short *peer_version )
++{
++ int32_t ret = -1;
++ SHIM_SERVICE_T *service = (SHIM_SERVICE_T *)handle;
++ if(service)
++ {
++ VCHIQ_STATUS_T status = vchiq_get_peer_version(service->handle, peer_version);
++ ret = vchiq_status_to_vchi( status );
++ }
++ return ret;
++}
++EXPORT_SYMBOL(vchi_get_peer_version);
++
+/* ----------------------------------------------------------------------
+ * read a uint32_t from buffer.
+ * network format is defined to be little endian
@@ -23121,7 +23235,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_shi
+EXPORT_SYMBOL(vchi_service_release);
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.c 2013-02-12 21:07:28.730874913 +0100
@@ -0,0 +1,120 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -23245,7 +23359,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_uti
+}
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_util.h 2013-02-12 21:07:28.730874913 +0100
@@ -0,0 +1,82 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -23331,7 +23445,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_uti
+
diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c
--- linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c 2013-02-01 18:45:12.482126456 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c 2013-02-12 21:07:28.729874918 +0100
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2010-2012 Broadcom. All rights reserved.
@@ -23394,7 +23508,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_ver
+}
diff -Naur linux-3.6.11/drivers/misc/vc04_services/Kconfig linux-rpi-3.6.y/drivers/misc/vc04_services/Kconfig
--- linux-3.6.11/drivers/misc/vc04_services/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/Kconfig 2013-02-01 18:45:12.486126435 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/Kconfig 2013-02-12 21:07:28.733874899 +0100
@@ -0,0 +1,10 @@
+config BCM2708_VCHIQ
+ tristate "Videocore VCHIQ"
@@ -23408,7 +23522,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/Kconfig linux-rpi-3.6.y/drive
+
diff -Naur linux-3.6.11/drivers/misc/vc04_services/Makefile linux-rpi-3.6.y/drivers/misc/vc04_services/Makefile
--- linux-3.6.11/drivers/misc/vc04_services/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/misc/vc04_services/Makefile 2013-02-01 18:45:12.480126467 +0100
++++ linux-rpi-3.6.y/drivers/misc/vc04_services/Makefile 2013-02-12 21:07:28.727874928 +0100
@@ -0,0 +1,18 @@
+ifeq ($(CONFIG_MACH_BCM2708),y)
+
@@ -23430,7 +23544,7 @@ diff -Naur linux-3.6.11/drivers/misc/vc04_services/Makefile linux-rpi-3.6.y/driv
+
diff -Naur linux-3.6.11/drivers/mmc/card/block.c linux-rpi-3.6.y/drivers/mmc/card/block.c
--- linux-3.6.11/drivers/mmc/card/block.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/card/block.c 2013-02-01 18:45:10.454137389 +0100
++++ linux-rpi-3.6.y/drivers/mmc/card/block.c 2013-02-12 21:07:26.443885925 +0100
@@ -1135,7 +1135,7 @@
brq->data.blocks = 1;
}
@@ -23442,7 +23556,7 @@ diff -Naur linux-3.6.11/drivers/mmc/card/block.c linux-rpi-3.6.y/drivers/mmc/car
*/
diff -Naur linux-3.6.11/drivers/mmc/core/sd.c linux-rpi-3.6.y/drivers/mmc/core/sd.c
--- linux-3.6.11/drivers/mmc/core/sd.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/core/sd.c 2013-02-01 18:45:10.450137410 +0100
++++ linux-rpi-3.6.y/drivers/mmc/core/sd.c 2013-02-12 21:07:26.439885944 +0100
@@ -13,6 +13,8 @@
#include
#include
@@ -23490,7 +23604,7 @@ diff -Naur linux-3.6.11/drivers/mmc/core/sd.c linux-rpi-3.6.y/drivers/mmc/core/s
+
+ err = mmc_app_send_scr(card, card->raw_scr);
+ if( !err )
-+ break; // sucess!!!
++ break; // success!!!
+
+ touch_nmi_watchdog(); // we are still alive!
+
@@ -23575,7 +23689,7 @@ diff -Naur linux-3.6.11/drivers/mmc/core/sd.c linux-rpi-3.6.y/drivers/mmc/core/s
+ if( tries > 1 )
+ {
-+ pr_info("%s: could read SD Status register (SSR) at the %dth attempt\n", mmc_hostname(card->host), tries );
++ pr_info("%s: read SD Status register (SSR) after %d attempts\n", mmc_hostname(card->host), tries );
+ }
+
for (i = 0; i < 16; i++)
@@ -23603,7 +23717,7 @@ diff -Naur linux-3.6.11/drivers/mmc/core/sd.c linux-rpi-3.6.y/drivers/mmc/core/s
* Fetch and process SD Status register.
diff -Naur linux-3.6.11/drivers/mmc/host/Kconfig linux-rpi-3.6.y/drivers/mmc/host/Kconfig
--- linux-3.6.11/drivers/mmc/host/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/host/Kconfig 2013-02-01 18:45:10.444137443 +0100
++++ linux-rpi-3.6.y/drivers/mmc/host/Kconfig 2013-02-12 21:07:26.431885983 +0100
@@ -229,6 +229,27 @@
YMMV.
@@ -23634,7 +23748,7 @@ diff -Naur linux-3.6.11/drivers/mmc/host/Kconfig linux-rpi-3.6.y/drivers/mmc/hos
depends on ARCH_OMAP
diff -Naur linux-3.6.11/drivers/mmc/host/Makefile linux-rpi-3.6.y/drivers/mmc/host/Makefile
--- linux-3.6.11/drivers/mmc/host/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/host/Makefile 2013-02-01 18:45:10.437137481 +0100
++++ linux-rpi-3.6.y/drivers/mmc/host/Makefile 2013-02-12 21:07:26.424886017 +0100
@@ -13,6 +13,7 @@
obj-$(CONFIG_MMC_SDHCI_PXAV2) += sdhci-pxav2.o
obj-$(CONFIG_MMC_SDHCI_S3C) += sdhci-s3c.o
@@ -23645,7 +23759,7 @@ diff -Naur linux-3.6.11/drivers/mmc/host/Makefile linux-rpi-3.6.y/drivers/mmc/ho
obj-$(CONFIG_MMC_OMAP) += omap.o
diff -Naur linux-3.6.11/drivers/mmc/host/sdhci-bcm2708.c linux-rpi-3.6.y/drivers/mmc/host/sdhci-bcm2708.c
--- linux-3.6.11/drivers/mmc/host/sdhci-bcm2708.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/host/sdhci-bcm2708.c 2013-02-01 18:45:10.440137464 +0100
++++ linux-rpi-3.6.y/drivers/mmc/host/sdhci-bcm2708.c 2013-02-12 21:07:26.427886002 +0100
@@ -0,0 +1,1413 @@
+/*
+ * sdhci-bcm2708.c Support for SDHCI device on BCM2708
@@ -25062,7 +25176,7 @@ diff -Naur linux-3.6.11/drivers/mmc/host/sdhci-bcm2708.c linux-rpi-3.6.y/drivers
+
diff -Naur linux-3.6.11/drivers/mmc/host/sdhci.c linux-rpi-3.6.y/drivers/mmc/host/sdhci.c
--- linux-3.6.11/drivers/mmc/host/sdhci.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/host/sdhci.c 2013-02-01 18:45:10.439137470 +0100
++++ linux-rpi-3.6.y/drivers/mmc/host/sdhci.c 2013-02-12 21:07:26.426886007 +0100
@@ -28,6 +28,7 @@
#include
#include
@@ -25935,7 +26049,7 @@ diff -Naur linux-3.6.11/drivers/mmc/host/sdhci.c linux-rpi-3.6.y/drivers/mmc/hos
sdhci_disable_card_detection(host);
diff -Naur linux-3.6.11/drivers/mmc/host/sdhci.h linux-rpi-3.6.y/drivers/mmc/host/sdhci.h
--- linux-3.6.11/drivers/mmc/host/sdhci.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/mmc/host/sdhci.h 2013-02-01 18:45:10.444137443 +0100
++++ linux-rpi-3.6.y/drivers/mmc/host/sdhci.h 2013-02-12 21:07:26.432885978 +0100
@@ -275,6 +275,20 @@
void (*platform_reset_enter)(struct sdhci_host *host, u8 mask);
void (*platform_reset_exit)(struct sdhci_host *host, u8 mask);
@@ -25998,7 +26112,7 @@ diff -Naur linux-3.6.11/drivers/mmc/host/sdhci.h linux-rpi-3.6.y/drivers/mmc/hos
#endif /* __SDHCI_HW_H */
diff -Naur linux-3.6.11/drivers/net/usb/smsc95xx.c linux-rpi-3.6.y/drivers/net/usb/smsc95xx.c
--- linux-3.6.11/drivers/net/usb/smsc95xx.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/net/usb/smsc95xx.c 2013-02-01 18:45:11.285132909 +0100
++++ linux-rpi-3.6.y/drivers/net/usb/smsc95xx.c 2013-02-12 21:07:27.422881212 +0100
@@ -46,11 +46,23 @@
#define SMSC95XX_INTERNAL_PHY_ID (1)
#define SMSC95XX_TX_OVERHEAD (8)
@@ -27015,7 +27129,7 @@ diff -Naur linux-3.6.11/drivers/net/usb/smsc95xx.c linux-rpi-3.6.y/drivers/net/u
};
diff -Naur linux-3.6.11/drivers/net/usb/smsc95xx.h linux-rpi-3.6.y/drivers/net/usb/smsc95xx.h
--- linux-3.6.11/drivers/net/usb/smsc95xx.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/net/usb/smsc95xx.h 2013-02-01 18:45:11.282132925 +0100
++++ linux-rpi-3.6.y/drivers/net/usb/smsc95xx.h 2013-02-12 21:07:27.417881235 +0100
@@ -63,6 +63,7 @@
#define INT_STS_TDFO_ (0x00001000)
#define INT_STS_RXDF_ (0x00000800)
@@ -27056,7 +27170,7 @@ diff -Naur linux-3.6.11/drivers/net/usb/smsc95xx.h linux-rpi-3.6.y/drivers/net/u
#define Tx_COE_EN_ (0x00010000)
diff -Naur linux-3.6.11/drivers/net/usb/usbnet.c linux-rpi-3.6.y/drivers/net/usb/usbnet.c
--- linux-3.6.11/drivers/net/usb/usbnet.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/net/usb/usbnet.c 2013-02-01 18:45:11.280132936 +0100
++++ linux-rpi-3.6.y/drivers/net/usb/usbnet.c 2013-02-12 21:07:27.415881245 +0100
@@ -359,10 +359,12 @@
void usbnet_defer_kevent (struct usbnet *dev, int work)
{
@@ -27242,7 +27356,7 @@ diff -Naur linux-3.6.11/drivers/net/wireless/rtl8192cu/os_dep/osdep_service.c li
diff -Naur linux-3.6.11/drivers/net/wireless/rtl8192cu/wlan0dhcp linux-rpi-3.6.y/drivers/net/wireless/rtl8192cu/wlan0dhcp
diff -Naur linux-3.6.11/drivers/spi/Kconfig linux-rpi-3.6.y/drivers/spi/Kconfig
--- linux-3.6.11/drivers/spi/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/spi/Kconfig 2013-02-01 18:45:10.380137788 +0100
++++ linux-rpi-3.6.y/drivers/spi/Kconfig 2013-02-12 21:07:26.359886330 +0100
@@ -74,6 +74,14 @@
This selects a driver for the Atmel SPI Controller, present on
many AT32 (AVR32) and AT91 (ARM) chips.
@@ -27260,7 +27374,7 @@ diff -Naur linux-3.6.11/drivers/spi/Kconfig linux-rpi-3.6.y/drivers/spi/Kconfig
depends on BLACKFIN
diff -Naur linux-3.6.11/drivers/spi/Makefile linux-rpi-3.6.y/drivers/spi/Makefile
--- linux-3.6.11/drivers/spi/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/spi/Makefile 2013-02-01 18:45:10.375137815 +0100
++++ linux-rpi-3.6.y/drivers/spi/Makefile 2013-02-12 21:07:26.353886359 +0100
@@ -16,6 +16,7 @@
obj-$(CONFIG_SPI_AU1550) += spi-au1550.o
obj-$(CONFIG_SPI_BCM63XX) += spi-bcm63xx.o
@@ -27271,7 +27385,7 @@ diff -Naur linux-3.6.11/drivers/spi/Makefile linux-rpi-3.6.y/drivers/spi/Makefil
obj-$(CONFIG_SPI_BUTTERFLY) += spi-butterfly.o
diff -Naur linux-3.6.11/drivers/spi/spi-bcm2708.c linux-rpi-3.6.y/drivers/spi/spi-bcm2708.c
--- linux-3.6.11/drivers/spi/spi-bcm2708.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/spi/spi-bcm2708.c 2013-02-01 18:45:10.375137815 +0100
++++ linux-rpi-3.6.y/drivers/spi/spi-bcm2708.c 2013-02-12 21:07:26.353886359 +0100
@@ -0,0 +1,600 @@
+/*
+ * Driver for Broadcom BCM2708 SPI Controllers
@@ -27878,7 +27992,7 @@ diff -Naur linux-3.6.11/drivers/staging/media/lirc/lirc_rpi.c linux-rpi-3.6.y/dr
diff -Naur linux-3.6.11/drivers/staging/media/lirc/Makefile linux-rpi-3.6.y/drivers/staging/media/lirc/Makefile
diff -Naur linux-3.6.11/drivers/thermal/bcm2835-thermal.c linux-rpi-3.6.y/drivers/thermal/bcm2835-thermal.c
--- linux-3.6.11/drivers/thermal/bcm2835-thermal.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/thermal/bcm2835-thermal.c 2013-02-01 18:45:12.449126634 +0100
++++ linux-rpi-3.6.y/drivers/thermal/bcm2835-thermal.c 2013-02-12 21:07:28.695875082 +0100
@@ -0,0 +1,208 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
@@ -28090,7 +28204,7 @@ diff -Naur linux-3.6.11/drivers/thermal/bcm2835-thermal.c linux-rpi-3.6.y/driver
+module_platform_driver(bcm2835_thermal_driver);
diff -Naur linux-3.6.11/drivers/thermal/Kconfig linux-rpi-3.6.y/drivers/thermal/Kconfig
--- linux-3.6.11/drivers/thermal/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/thermal/Kconfig 2013-02-01 18:45:12.449126634 +0100
++++ linux-rpi-3.6.y/drivers/thermal/Kconfig 2013-02-12 21:07:28.695875082 +0100
@@ -27,3 +27,14 @@
help
Enable this to plug the SPEAr thermal sensor driver into the Linux
@@ -28108,7 +28222,7 @@ diff -Naur linux-3.6.11/drivers/thermal/Kconfig linux-rpi-3.6.y/drivers/thermal/
+
diff -Naur linux-3.6.11/drivers/thermal/Makefile linux-rpi-3.6.y/drivers/thermal/Makefile
--- linux-3.6.11/drivers/thermal/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/thermal/Makefile 2013-02-01 18:45:12.448126640 +0100
++++ linux-rpi-3.6.y/drivers/thermal/Makefile 2013-02-12 21:07:28.694875087 +0100
@@ -3,4 +3,5 @@
#
@@ -28119,7 +28233,7 @@ diff -Naur linux-3.6.11/drivers/thermal/Makefile linux-rpi-3.6.y/drivers/thermal
+obj-$(CONFIG_THERMAL_BCM2835) += bcm2835-thermal.o
diff -Naur linux-3.6.11/drivers/usb/core/generic.c linux-rpi-3.6.y/drivers/usb/core/generic.c
--- linux-3.6.11/drivers/usb/core/generic.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/core/generic.c 2013-02-01 18:45:12.302127427 +0100
++++ linux-rpi-3.6.y/drivers/usb/core/generic.c 2013-02-12 21:07:28.542875819 +0100
@@ -149,6 +149,7 @@
dev_warn(&udev->dev,
"no configuration chosen from %d choice%s\n",
@@ -28130,7 +28244,7 @@ diff -Naur linux-3.6.11/drivers/usb/core/generic.c linux-rpi-3.6.y/drivers/usb/c
}
diff -Naur linux-3.6.11/drivers/usb/core/hub.c linux-rpi-3.6.y/drivers/usb/core/hub.c
--- linux-3.6.11/drivers/usb/core/hub.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/core/hub.c 2013-02-01 18:45:12.303127421 +0100
++++ linux-rpi-3.6.y/drivers/usb/core/hub.c 2013-02-12 21:07:28.544875809 +0100
@@ -25,7 +25,6 @@
#include
#include
@@ -28253,7 +28367,7 @@ diff -Naur linux-3.6.11/drivers/usb/core/hub.c linux-rpi-3.6.y/drivers/usb/core/
!hcd->driver->port_handed_over ||
diff -Naur linux-3.6.11/drivers/usb/core/message.c linux-rpi-3.6.y/drivers/usb/core/message.c
--- linux-3.6.11/drivers/usb/core/message.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/core/message.c 2013-02-01 18:45:12.300127437 +0100
++++ linux-rpi-3.6.y/drivers/usb/core/message.c 2013-02-12 21:07:28.540875828 +0100
@@ -1877,6 +1877,85 @@
if (cp->string == NULL &&
!(dev->quirks & USB_QUIRK_CONFIG_INTF_STRINGS))
@@ -28342,7 +28456,7 @@ diff -Naur linux-3.6.11/drivers/usb/core/message.c linux-rpi-3.6.y/drivers/usb/c
usb_unlocked_enable_lpm(dev);
diff -Naur linux-3.6.11/drivers/usb/core/otg_whitelist.h linux-rpi-3.6.y/drivers/usb/core/otg_whitelist.h
--- linux-3.6.11/drivers/usb/core/otg_whitelist.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/core/otg_whitelist.h 2013-02-01 18:45:12.299127443 +0100
++++ linux-rpi-3.6.y/drivers/usb/core/otg_whitelist.h 2013-02-12 21:07:28.540875828 +0100
@@ -19,33 +19,82 @@
static struct usb_device_id whitelist_table [] = {
@@ -28560,7 +28674,7 @@ diff -Naur linux-3.6.11/drivers/usb/core/otg_whitelist.h linux-rpi-3.6.y/drivers
diff -Naur linux-3.6.11/drivers/usb/gadget/file_storage.c linux-rpi-3.6.y/drivers/usb/gadget/file_storage.c
--- linux-3.6.11/drivers/usb/gadget/file_storage.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/gadget/file_storage.c 2013-02-01 18:45:12.295127465 +0100
++++ linux-rpi-3.6.y/drivers/usb/gadget/file_storage.c 2013-02-12 21:07:28.537875843 +0100
@@ -573,8 +573,37 @@
.iConfiguration = FSG_STRING_CONFIG,
.bmAttributes = USB_CONFIG_ATT_ONE | USB_CONFIG_ATT_SELFPOWER,
@@ -28690,7 +28804,7 @@ diff -Naur linux-3.6.11/drivers/usb/gadget/file_storage.c linux-rpi-3.6.y/driver
if (!req)
diff -Naur linux-3.6.11/drivers/usb/gadget/Kconfig linux-rpi-3.6.y/drivers/usb/gadget/Kconfig
--- linux-3.6.11/drivers/usb/gadget/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/gadget/Kconfig 2013-02-01 18:45:12.291127486 +0100
++++ linux-rpi-3.6.y/drivers/usb/gadget/Kconfig 2013-02-12 21:07:28.531875872 +0100
@@ -505,6 +505,12 @@
bool
depends on USB_GADGET_DUALSPEED
@@ -28706,7 +28820,7 @@ diff -Naur linux-3.6.11/drivers/usb/gadget/Kconfig linux-rpi-3.6.y/drivers/usb/g
#
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/changes.txt linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/changes.txt
--- linux-3.6.11/drivers/usb/host/dwc_common_port/changes.txt 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/changes.txt 2013-02-01 18:45:12.186128052 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/changes.txt 2013-02-12 21:07:28.422876397 +0100
@@ -0,0 +1,174 @@
+
+dwc_read_reg32() and friends now take an additional parameter, a pointer to an
@@ -28884,7 +28998,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/changes.txt linux-rpi-3
+library code directly into a driver module, instead of as a standalone module.
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/doc/doxygen.cfg linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/doc/doxygen.cfg
--- linux-3.6.11/drivers/usb/host/dwc_common_port/doc/doxygen.cfg 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/doc/doxygen.cfg 2013-02-01 18:45:12.189128036 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/doc/doxygen.cfg 2013-02-12 21:07:28.424876387 +0100
@@ -0,0 +1,270 @@
+# Doxyfile 1.4.5
+
@@ -29158,7 +29272,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/doc/doxygen.cfg linux-r
+SEARCHENGINE = NO
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_cc.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_cc.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_cc.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_cc.c 2013-02-01 18:45:12.187128047 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_cc.c 2013-02-12 21:07:28.422876397 +0100
@@ -0,0 +1,532 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_cc.c $
@@ -29694,7 +29808,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_cc.c linux-rpi-3.6.
+#endif /* DWC_CCLIB */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_cc.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_cc.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_cc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_cc.h 2013-02-01 18:45:12.191128025 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_cc.h 2013-02-12 21:07:28.426876378 +0100
@@ -0,0 +1,225 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_cc.h $
@@ -29923,7 +30037,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_cc.h linux-rpi-3.6.
+
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c 2013-02-01 18:45:12.191128025 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c 2013-02-12 21:07:28.426876378 +0100
@@ -0,0 +1,1308 @@
+#include "dwc_os.h"
+#include "dwc_list.h"
@@ -31235,7 +31349,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c linux
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_linux.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_linux.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_linux.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_linux.c 2013-02-01 18:45:12.188128041 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_linux.c 2013-02-12 21:07:28.423876392 +0100
@@ -0,0 +1,1421 @@
+#include
+#include
@@ -32660,7 +32774,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_linux.c linu
+#endif /* DWC_LIBMODULE */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c 2013-02-01 18:45:12.190128030 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c 2013-02-12 21:07:28.425876382 +0100
@@ -0,0 +1,1275 @@
+#include "dwc_os.h"
+#include "dwc_list.h"
@@ -33939,7 +34053,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c linux
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_crypto.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_crypto.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_crypto.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_crypto.c 2013-02-01 18:45:12.186128052 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_crypto.c 2013-02-12 21:07:28.421876402 +0100
@@ -0,0 +1,308 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_crypto.c $
@@ -34251,7 +34365,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_crypto.c linux-rpi-
+#endif /* DWC_CRYPTOLIB */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_crypto.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_crypto.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_crypto.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_crypto.h 2013-02-01 18:45:12.190128030 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_crypto.h 2013-02-12 21:07:28.425876382 +0100
@@ -0,0 +1,111 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_crypto.h $
@@ -34366,7 +34480,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_crypto.h linux-rpi-
+#endif /* _DWC_CRYPTO_H_ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_dh.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_dh.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_dh.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_dh.c 2013-02-01 18:45:12.186128052 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_dh.c 2013-02-12 21:07:28.422876397 +0100
@@ -0,0 +1,291 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_dh.c $
@@ -34661,7 +34775,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_dh.c linux-rpi-3.6.
+#endif /* DWC_CRYPTOLIB */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_dh.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_dh.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_dh.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_dh.h 2013-02-01 18:45:12.186128052 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_dh.h 2013-02-12 21:07:28.422876397 +0100
@@ -0,0 +1,106 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_dh.h $
@@ -34771,7 +34885,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_dh.h linux-rpi-3.6.
+#endif /* _DWC_DH_H_ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_list.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_list.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_list.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_list.h 2013-02-01 18:45:12.188128041 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_list.h 2013-02-12 21:07:28.423876392 +0100
@@ -0,0 +1,594 @@
+/* $OpenBSD: queue.h,v 1.26 2004/05/04 16:59:32 grange Exp $ */
+/* $NetBSD: queue.h,v 1.11 1996/05/16 05:17:14 mycroft Exp $ */
@@ -35369,7 +35483,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_list.h linux-rpi-3.
+#endif /* _DWC_LIST_H_ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_mem.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_mem.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_mem.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_mem.c 2013-02-01 18:45:12.187128047 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_mem.c 2013-02-12 21:07:28.423876392 +0100
@@ -0,0 +1,245 @@
+/* Memory Debugging */
+#ifdef DWC_DEBUG_MEMORY
@@ -35618,7 +35732,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_mem.c linux-rpi-3.6
+#endif /* DWC_DEBUG_MEMORY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_modpow.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_modpow.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_modpow.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_modpow.c 2013-02-01 18:45:12.189128036 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_modpow.c 2013-02-12 21:07:28.424876387 +0100
@@ -0,0 +1,636 @@
+/* Bignum routines adapted from PUTTY sources. PuTTY copyright notice follows.
+ *
@@ -36258,7 +36372,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_modpow.c linux-rpi-
+#endif /*DWC_CRYPTOLIB */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_modpow.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_modpow.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_modpow.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_modpow.h 2013-02-01 18:45:12.188128041 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_modpow.h 2013-02-12 21:07:28.424876387 +0100
@@ -0,0 +1,34 @@
+/*
+ * dwc_modpow.h
@@ -36296,7 +36410,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_modpow.h linux-rpi-
+#endif /* _LINUX_BIGNUM_H */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_notifier.c linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_notifier.c
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_notifier.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_notifier.c 2013-02-01 18:45:12.187128047 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_notifier.c 2013-02-12 21:07:28.422876397 +0100
@@ -0,0 +1,319 @@
+#ifdef DWC_NOTIFYLIB
+
@@ -36619,7 +36733,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_notifier.c linux-rp
+#endif /* DWC_NOTIFYLIB */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_notifier.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_notifier.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_notifier.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_notifier.h 2013-02-01 18:45:12.188128041 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_notifier.h 2013-02-12 21:07:28.423876392 +0100
@@ -0,0 +1,122 @@
+
+#ifndef __DWC_NOTIFIER_H__
@@ -36745,7 +36859,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_notifier.h linux-rp
+#endif /* __DWC_NOTIFIER_H__ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_os.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_os.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_os.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_os.h 2013-02-01 18:45:12.189128036 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/dwc_os.h 2013-02-12 21:07:28.425876382 +0100
@@ -0,0 +1,1260 @@
+/* =========================================================================
+ * $File: //dwh/usb_iip/dev/software/dwc_common_port_2/dwc_os.h $
@@ -38009,7 +38123,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/dwc_os.h linux-rpi-3.6.
+#endif /* _DWC_OS_H_ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile
--- linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile 2013-02-01 18:45:12.187128047 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile 2013-02-12 21:07:28.423876392 +0100
@@ -0,0 +1,58 @@
+#
+# Makefile for DWC_common library
@@ -38071,7 +38185,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile linux-rpi-3.6.
+ rm -rf *.o *.ko .*.cmd *.mod.c .*.o.d .*.o.tmp modules.order Module.markers Module.symvers .tmp_versions/
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile.fbsd linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile.fbsd
--- linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile.fbsd 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile.fbsd 2013-02-01 18:45:12.190128030 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile.fbsd 2013-02-12 21:07:28.425876382 +0100
@@ -0,0 +1,17 @@
+CFLAGS += -I/sys/i386/compile/GENERIC -I/sys/i386/include -I/usr/include
+CFLAGS += -DDWC_FREEBSD
@@ -38092,7 +38206,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile.fbsd linux-rpi
+.include
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile.linux linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile.linux
--- linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile.linux 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile.linux 2013-02-01 18:45:12.185128058 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/Makefile.linux 2013-02-12 21:07:28.421876402 +0100
@@ -0,0 +1,49 @@
+#
+# Makefile for DWC_common library
@@ -38145,7 +38259,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/Makefile.linux linux-rp
+ rm -rf *.o *.ko .*.cmd *.mod.c .*.o.d .*.o.tmp modules.order Module.markers Module.symvers .tmp_versions/
diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/usb.h linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/usb.h
--- linux-3.6.11/drivers/usb/host/dwc_common_port/usb.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/usb.h 2013-02-01 18:45:12.190128030 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_common_port/usb.h 2013-02-12 21:07:28.425876382 +0100
@@ -0,0 +1,946 @@
+/*
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -39095,7 +39209,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_common_port/usb.h linux-rpi-3.6.y/d
+#endif /* _USB_H_ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/doc/doxygen.cfg linux-rpi-3.6.y/drivers/usb/host/dwc_otg/doc/doxygen.cfg
--- linux-3.6.11/drivers/usb/host/dwc_otg/doc/doxygen.cfg 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/doc/doxygen.cfg 2013-02-01 18:45:12.164128171 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/doc/doxygen.cfg 2013-02-12 21:07:28.399876507 +0100
@@ -0,0 +1,224 @@
+# Doxyfile 1.3.9.1
+
@@ -39323,7 +39437,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/doc/doxygen.cfg linux-rpi-3.6.y
+SEARCHENGINE = NO
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dummy_audio.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dummy_audio.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dummy_audio.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dummy_audio.c 2013-02-01 18:45:12.168128149 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dummy_audio.c 2013-02-12 21:07:28.402876493 +0100
@@ -0,0 +1,1575 @@
+/*
+ * zero.c -- Gadget Zero, for USB development
@@ -40902,7 +41016,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dummy_audio.c linux-rpi-3.6.y/d
+module_exit (cleanup);
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_cfi_common.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_cfi_common.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_cfi_common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_cfi_common.h 2013-02-01 18:45:12.157128208 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_cfi_common.h 2013-02-12 21:07:28.391876546 +0100
@@ -0,0 +1,142 @@
+/* ==========================================================================
+ * Synopsys HS OTG Linux Software Driver and documentation (hereinafter,
@@ -41048,7 +41162,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_cfi_common.h linux-rpi-3.6.
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_adp.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_adp.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_adp.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_adp.c 2013-02-01 18:45:12.168128149 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_adp.c 2013-02-12 21:07:28.402876493 +0100
@@ -0,0 +1,854 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_adp.c $
@@ -41906,7 +42020,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_adp.c linux-rpi-3.6.y/d
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_adp.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_adp.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_adp.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_adp.h 2013-02-01 18:45:12.156128214 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_adp.h 2013-02-12 21:07:28.391876546 +0100
@@ -0,0 +1,80 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_adp.h $
@@ -41990,7 +42104,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_adp.h linux-rpi-3.6.y/d
+#endif //__DWC_OTG_ADP_H__
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_attr.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_attr.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_attr.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_attr.c 2013-02-01 18:45:12.162128182 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_attr.c 2013-02-12 21:07:28.397876517 +0100
@@ -0,0 +1,1210 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_attr.c $
@@ -43204,7 +43318,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_attr.c linux-rpi-3.6.y/
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_attr.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_attr.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_attr.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_attr.h 2013-02-01 18:45:12.168128149 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_attr.h 2013-02-12 21:07:28.402876493 +0100
@@ -0,0 +1,89 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_attr.h $
@@ -43297,7 +43411,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_attr.h linux-rpi-3.6.y/
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cfi.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cfi.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cfi.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cfi.c 2013-02-01 18:45:12.164128171 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cfi.c 2013-02-12 21:07:28.398876512 +0100
@@ -0,0 +1,1876 @@
+/* ==========================================================================
+ * Synopsys HS OTG Linux Software Driver and documentation (hereinafter,
@@ -45177,7 +45291,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cfi.c linux-rpi-3.6.y/d
+#endif //DWC_UTE_CFI
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cfi.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cfi.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cfi.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cfi.h 2013-02-01 18:45:12.165128165 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cfi.h 2013-02-12 21:07:28.399876507 +0100
@@ -0,0 +1,320 @@
+/* ==========================================================================
+ * Synopsys HS OTG Linux Software Driver and documentation (hereinafter,
@@ -45501,7 +45615,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cfi.h linux-rpi-3.6.y/d
+#endif /* (__DWC_OTG_CFI_H__) */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil.c 2013-02-01 18:45:12.170128138 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil.c 2013-02-12 21:07:28.404876484 +0100
@@ -0,0 +1,7151 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_cil.c $
@@ -52656,7 +52770,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil.c linux-rpi-3.6.y/d
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil.h 2013-02-01 18:45:12.165128165 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil.h 2013-02-12 21:07:28.400876503 +0100
@@ -0,0 +1,1464 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_cil.h $
@@ -54124,7 +54238,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil.h linux-rpi-3.6.y/d
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c 2013-02-01 18:45:12.159128198 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c 2013-02-12 21:07:28.393876536 +0100
@@ -0,0 +1,1571 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_cil_intr.c $
@@ -55699,7 +55813,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c linux-rpi-3.
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_core_if.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_core_if.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_core_if.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_core_if.h 2013-02-01 18:45:12.164128171 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_core_if.h 2013-02-12 21:07:28.399876507 +0100
@@ -0,0 +1,705 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_core_if.h $
@@ -56408,7 +56522,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_core_if.h linux-rpi-3.6
+#endif /* __DWC_CORE_IF_H__ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_dbg.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_dbg.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_dbg.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_dbg.h 2013-02-01 18:45:12.157128208 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_dbg.h 2013-02-12 21:07:28.392876541 +0100
@@ -0,0 +1,117 @@
+/* ==========================================================================
+ *
@@ -56529,7 +56643,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_dbg.h linux-rpi-3.6.y/d
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_driver.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_driver.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_driver.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_driver.c 2013-02-01 18:45:12.161128187 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_driver.c 2013-02-12 21:07:28.396876522 +0100
@@ -0,0 +1,1732 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_driver.c $
@@ -58265,7 +58379,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_driver.c linux-rpi-3.6.
+*/
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_driver.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_driver.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_driver.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_driver.h 2013-02-01 18:45:12.160128192 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_driver.h 2013-02-12 21:07:28.394876531 +0100
@@ -0,0 +1,86 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_driver.h $
@@ -58355,7 +58469,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_driver.h linux-rpi-3.6.
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd.c 2013-02-01 18:45:12.163128176 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd.c 2013-02-12 21:07:28.398876512 +0100
@@ -0,0 +1,3496 @@
+
+/* ==========================================================================
@@ -61855,7 +61969,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd.c linux-rpi-3.6.y/d
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c 2013-02-01 18:45:12.167128154 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c 2013-02-12 21:07:28.402876493 +0100
@@ -0,0 +1,1132 @@
+/*==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_hcd_ddma.c $
@@ -62991,7 +63105,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c linux-rpi-3.
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd.h 2013-02-01 18:45:12.155128219 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd.h 2013-02-12 21:07:28.390876551 +0100
@@ -0,0 +1,829 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_hcd.h $
@@ -63824,7 +63938,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd.h linux-rpi-3.6.y/d
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h 2013-02-01 18:45:12.165128165 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h 2013-02-12 21:07:28.400876503 +0100
@@ -0,0 +1,417 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_hcd_if.h $
@@ -64245,7 +64359,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h linux-rpi-3.6.
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c 2013-02-01 18:45:12.159128198 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c 2013-02-12 21:07:28.394876531 +0100
@@ -0,0 +1,2248 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_hcd_intr.c $
@@ -66497,7 +66611,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c linux-rpi-3.
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c 2013-02-01 18:45:12.156128214 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c 2013-02-12 21:07:28.390876551 +0100
@@ -0,0 +1,938 @@
+
+/* ==========================================================================
@@ -67439,7 +67553,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c linux-rpi-3
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c 2013-02-01 18:45:12.158128203 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c 2013-02-12 21:07:28.393876536 +0100
@@ -0,0 +1,958 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_hcd_queue.c $
@@ -68401,7 +68515,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c linux-rpi-3
+#endif /* DWC_DEVICE_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.c 2013-02-01 18:45:12.157128208 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.c 2013-02-12 21:07:28.392876541 +0100
@@ -0,0 +1,113 @@
+#include "dwc_otg_regs.h"
+#include "dwc_otg_dbg.h"
@@ -68518,7 +68632,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.c linux-rpi-3.
+}
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h 2013-02-01 18:45:12.156128214 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h 2013-02-12 21:07:28.390876551 +0100
@@ -0,0 +1,36 @@
+#ifndef __DWC_OTG_MPHI_FIX_H__
+#define __DWC_OTG_MPHI_FIX_H__
@@ -68558,7 +68672,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h linux-rpi-3.
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h 2013-02-01 18:45:12.167128154 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h 2013-02-12 21:07:28.402876493 +0100
@@ -0,0 +1,188 @@
+#ifndef _DWC_OS_DEP_H_
+#define _DWC_OS_DEP_H_
@@ -68750,7 +68864,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h linux-rpi-3.6.
+#endif /* _DWC_OS_DEP_H_ */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd.c 2013-02-01 18:45:12.160128192 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd.c 2013-02-12 21:07:28.395876526 +0100
@@ -0,0 +1,2708 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_pcd.c $
@@ -71462,7 +71576,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd.c linux-rpi-3.6.y/d
+#endif /* DWC_HOST_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd.h 2013-02-01 18:45:12.162128182 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd.h 2013-02-12 21:07:28.396876522 +0100
@@ -0,0 +1,266 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_pcd.h $
@@ -71732,7 +71846,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd.h linux-rpi-3.6.y/d
+#endif /* DWC_HOST_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h 2013-02-01 18:45:12.156128214 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h 2013-02-12 21:07:28.390876551 +0100
@@ -0,0 +1,360 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_pcd_if.h $
@@ -72096,7 +72210,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h linux-rpi-3.6.
+#endif /* DWC_HOST_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c 2013-02-01 18:45:12.161128187 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c 2013-02-12 21:07:28.396876522 +0100
@@ -0,0 +1,5147 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_pcd_intr.c $
@@ -77247,7 +77361,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c linux-rpi-3.
+#endif /* DWC_HOST_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c 2013-02-01 18:45:12.166128160 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c 2013-02-12 21:07:28.400876503 +0100
@@ -0,0 +1,1374 @@
+ /* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_pcd_linux.c $
@@ -78625,7 +78739,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c linux-rpi-3
+#endif /* DWC_HOST_ONLY */
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_regs.h linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_regs.h
--- linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_regs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_regs.h 2013-02-01 18:45:12.162128182 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/dwc_otg_regs.h 2013-02-12 21:07:28.397876517 +0100
@@ -0,0 +1,2550 @@
+/* ==========================================================================
+ * $File: //dwh/usb_iip/dev/software/otg/linux/drivers/dwc_otg_regs.h $
@@ -81179,7 +81293,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/dwc_otg_regs.h linux-rpi-3.6.y/
+#endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/Makefile linux-rpi-3.6.y/drivers/usb/host/dwc_otg/Makefile
--- linux-3.6.11/drivers/usb/host/dwc_otg/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/Makefile 2013-02-01 18:45:12.157128208 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/Makefile 2013-02-12 21:07:28.391876546 +0100
@@ -0,0 +1,81 @@
+#
+# Makefile for DWC_otg Highspeed USB controller driver
@@ -81264,7 +81378,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/Makefile linux-rpi-3.6.y/driver
+endif
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm
--- linux-3.6.11/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm 2013-02-01 18:45:12.166128160 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm 2013-02-12 21:07:28.401876498 +0100
@@ -0,0 +1,337 @@
+package dwc_otg_test;
+
@@ -81605,7 +81719,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm linux-rpi-
+1;
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/Makefile linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/Makefile
--- linux-3.6.11/drivers/usb/host/dwc_otg/test/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/Makefile 2013-02-01 18:45:12.166128160 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/Makefile 2013-02-12 21:07:28.401876498 +0100
@@ -0,0 +1,16 @@
+
+PERL=/usr/bin/perl
@@ -81625,7 +81739,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/Makefile linux-rpi-3.6.y/d
+ done
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/test_mod_param.pl linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/test_mod_param.pl
--- linux-3.6.11/drivers/usb/host/dwc_otg/test/test_mod_param.pl 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/test_mod_param.pl 2013-02-01 18:45:12.167128154 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/test_mod_param.pl 2013-02-12 21:07:28.401876498 +0100
@@ -0,0 +1,133 @@
+#!/usr/bin/perl -w
+#
@@ -81762,7 +81876,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/test_mod_param.pl linux-rp
+0;
diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/test_sysfs.pl linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/test_sysfs.pl
--- linux-3.6.11/drivers/usb/host/dwc_otg/test/test_sysfs.pl 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/test_sysfs.pl 2013-02-01 18:45:12.167128154 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/dwc_otg/test/test_sysfs.pl 2013-02-12 21:07:28.401876498 +0100
@@ -0,0 +1,193 @@
+#!/usr/bin/perl -w
+#
@@ -81959,7 +82073,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/dwc_otg/test/test_sysfs.pl linux-rpi-3.
+0;
diff -Naur linux-3.6.11/drivers/usb/host/Kconfig linux-rpi-3.6.y/drivers/usb/host/Kconfig
--- linux-3.6.11/drivers/usb/host/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/Kconfig 2013-02-01 18:45:12.199127982 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/Kconfig 2013-02-12 21:07:28.433876344 +0100
@@ -610,6 +610,19 @@
To compile this driver a module, choose M here: the module
will be called "hwa-hc".
@@ -81982,7 +82096,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/Kconfig linux-rpi-3.6.y/drivers/usb/hos
depends on USB && ARM && ARCH_MXC
diff -Naur linux-3.6.11/drivers/usb/host/Makefile linux-rpi-3.6.y/drivers/usb/host/Makefile
--- linux-3.6.11/drivers/usb/host/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/host/Makefile 2013-02-01 18:45:12.179128090 +0100
++++ linux-rpi-3.6.y/drivers/usb/host/Makefile 2013-02-12 21:07:28.415876430 +0100
@@ -37,6 +37,8 @@
obj-$(CONFIG_USB_R8A66597_HCD) += r8a66597-hcd.o
obj-$(CONFIG_USB_ISP1760_HCD) += isp1760.o
@@ -81994,7 +82108,7 @@ diff -Naur linux-3.6.11/drivers/usb/host/Makefile linux-rpi-3.6.y/drivers/usb/ho
obj-$(CONFIG_USB_OCTEON2_COMMON) += octeon2-common.o
diff -Naur linux-3.6.11/drivers/usb/Makefile linux-rpi-3.6.y/drivers/usb/Makefile
--- linux-3.6.11/drivers/usb/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/usb/Makefile 2013-02-01 18:45:12.220127869 +0100
++++ linux-rpi-3.6.y/drivers/usb/Makefile 2013-02-12 21:07:28.455876238 +0100
@@ -25,6 +25,7 @@
obj-$(CONFIG_USB_R8A66597_HCD) += host/
obj-$(CONFIG_USB_HWA_HCD) += host/
@@ -82005,7 +82119,7 @@ diff -Naur linux-3.6.11/drivers/usb/Makefile linux-rpi-3.6.y/drivers/usb/Makefil
diff -Naur linux-3.6.11/drivers/video/bcm2708_fb.c linux-rpi-3.6.y/drivers/video/bcm2708_fb.c
--- linux-3.6.11/drivers/video/bcm2708_fb.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/video/bcm2708_fb.c 2013-02-01 18:45:10.175138893 +0100
++++ linux-rpi-3.6.y/drivers/video/bcm2708_fb.c 2013-02-12 21:07:26.133887418 +0100
@@ -0,0 +1,491 @@
+/*
+ * linux/drivers/video/bcm2708_fb.c
@@ -82500,7 +82614,7 @@ diff -Naur linux-3.6.11/drivers/video/bcm2708_fb.c linux-rpi-3.6.y/drivers/video
+MODULE_PARM_DESC(fbdepth, "Bit depth of ARM Framebuffer");
diff -Naur linux-3.6.11/drivers/video/Kconfig linux-rpi-3.6.y/drivers/video/Kconfig
--- linux-3.6.11/drivers/video/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/video/Kconfig 2013-02-01 18:45:10.276138348 +0100
++++ linux-rpi-3.6.y/drivers/video/Kconfig 2013-02-12 21:07:26.262886797 +0100
@@ -312,6 +312,20 @@
help
Support the Permedia2 FIFO disconnect feature.
@@ -82524,7 +82638,7 @@ diff -Naur linux-3.6.11/drivers/video/Kconfig linux-rpi-3.6.y/drivers/video/Kcon
depends on FB && ARM && ARM_AMBA
diff -Naur linux-3.6.11/drivers/video/logo/logo_linux_clut224.ppm linux-rpi-3.6.y/drivers/video/logo/logo_linux_clut224.ppm
--- linux-3.6.11/drivers/video/logo/logo_linux_clut224.ppm 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/video/logo/logo_linux_clut224.ppm 2013-02-01 18:45:10.247138505 +0100
++++ linux-rpi-3.6.y/drivers/video/logo/logo_linux_clut224.ppm 2013-02-12 21:07:26.228886960 +0100
@@ -1,1604 +1,883 @@
P3
-# Standard 224-color Linux logo
@@ -85013,7 +85127,7 @@ diff -Naur linux-3.6.11/drivers/video/logo/logo_linux_clut224.ppm linux-rpi-3.6.
+0 0 0 0 0 0 0 0 0
diff -Naur linux-3.6.11/drivers/video/Makefile linux-rpi-3.6.y/drivers/video/Makefile
--- linux-3.6.11/drivers/video/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/video/Makefile 2013-02-01 18:45:10.205138731 +0100
++++ linux-rpi-3.6.y/drivers/video/Makefile 2013-02-12 21:07:26.173887225 +0100
@@ -99,6 +99,7 @@
obj-$(CONFIG_FB_PVR2) += pvr2fb.o
obj-$(CONFIG_FB_VOODOO1) += sstfb.o
@@ -85024,7 +85138,7 @@ diff -Naur linux-3.6.11/drivers/video/Makefile linux-rpi-3.6.y/drivers/video/Mak
obj-$(CONFIG_FB_CIRRUS) += cirrusfb.o
diff -Naur linux-3.6.11/drivers/watchdog/bcm2708_wdog.c linux-rpi-3.6.y/drivers/watchdog/bcm2708_wdog.c
--- linux-3.6.11/drivers/watchdog/bcm2708_wdog.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/watchdog/bcm2708_wdog.c 2013-02-01 18:45:12.899124208 +0100
++++ linux-rpi-3.6.y/drivers/watchdog/bcm2708_wdog.c 2013-02-12 21:07:29.189872704 +0100
@@ -0,0 +1,385 @@
+/*
+ * Broadcom BCM2708 watchdog driver.
@@ -85413,7 +85527,7 @@ diff -Naur linux-3.6.11/drivers/watchdog/bcm2708_wdog.c linux-rpi-3.6.y/drivers/
+
diff -Naur linux-3.6.11/drivers/watchdog/Kconfig linux-rpi-3.6.y/drivers/watchdog/Kconfig
--- linux-3.6.11/drivers/watchdog/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/watchdog/Kconfig 2013-02-01 18:45:12.907124165 +0100
++++ linux-rpi-3.6.y/drivers/watchdog/Kconfig 2013-02-12 21:07:29.197872665 +0100
@@ -352,6 +352,12 @@
To compile this driver as a module, choose M here: the
module will be called imx2_wdt.
@@ -85429,7 +85543,7 @@ diff -Naur linux-3.6.11/drivers/watchdog/Kconfig linux-rpi-3.6.y/drivers/watchdo
config AT32AP700X_WDT
diff -Naur linux-3.6.11/drivers/watchdog/Makefile linux-rpi-3.6.y/drivers/watchdog/Makefile
--- linux-3.6.11/drivers/watchdog/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/drivers/watchdog/Makefile 2013-02-01 18:45:12.894124235 +0100
++++ linux-rpi-3.6.y/drivers/watchdog/Makefile 2013-02-12 21:07:29.183872732 +0100
@@ -52,6 +52,7 @@
obj-$(CONFIG_NUC900_WATCHDOG) += nuc900_wdt.o
obj-$(CONFIG_TS72XX_WATCHDOG) += ts72xx_wdt.o
@@ -85441,7 +85555,7 @@ diff -Naur linux-3.6.11/drivers/watchdog/Makefile linux-rpi-3.6.y/drivers/watchd
diff -Naur linux-3.6.11/.gitignore linux-rpi-3.6.y/.gitignore
diff -Naur linux-3.6.11/include/linux/broadcom/vc_cma.h linux-rpi-3.6.y/include/linux/broadcom/vc_cma.h
--- linux-3.6.11/include/linux/broadcom/vc_cma.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/include/linux/broadcom/vc_cma.h 2013-02-01 18:45:01.010190035 +0100
++++ linux-rpi-3.6.y/include/linux/broadcom/vc_cma.h 2013-02-12 21:07:15.798937179 +0100
@@ -0,0 +1,30 @@
+/*****************************************************************************
+* Copyright 2012 Broadcom Corporation. All rights reserved.
@@ -85475,7 +85589,7 @@ diff -Naur linux-3.6.11/include/linux/broadcom/vc_cma.h linux-rpi-3.6.y/include/
+
diff -Naur linux-3.6.11/include/linux/mmc/host.h linux-rpi-3.6.y/include/linux/mmc/host.h
--- linux-3.6.11/include/linux/mmc/host.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/include/linux/mmc/host.h 2013-02-01 18:45:00.968190270 +0100
++++ linux-rpi-3.6.y/include/linux/mmc/host.h 2013-02-12 21:07:15.664937824 +0100
@@ -257,6 +257,7 @@
#define MMC_CAP2_HC_ERASE_SZ (1 << 9) /* High-capacity erase size */
#define MMC_CAP2_CD_ACTIVE_HIGH (1 << 10) /* Card-detect signal active high */
@@ -85486,7 +85600,7 @@ diff -Naur linux-3.6.11/include/linux/mmc/host.h linux-rpi-3.6.y/include/linux/m
unsigned int power_notify_type;
diff -Naur linux-3.6.11/include/linux/mmc/sdhci.h linux-rpi-3.6.y/include/linux/mmc/sdhci.h
--- linux-3.6.11/include/linux/mmc/sdhci.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/include/linux/mmc/sdhci.h 2013-02-01 18:45:00.970190259 +0100
++++ linux-rpi-3.6.y/include/linux/mmc/sdhci.h 2013-02-12 21:07:15.672937786 +0100
@@ -93,6 +93,7 @@
#define SDHCI_QUIRK2_HOST_OFF_CARD_ON (1<<0)
@@ -85513,7 +85627,7 @@ diff -Naur linux-3.6.11/include/linux/mmc/sdhci.h linux-rpi-3.6.y/include/linux/
diff -Naur linux-3.6.11/include/net/bluetooth/hci.h linux-rpi-3.6.y/include/net/bluetooth/hci.h
--- linux-3.6.11/include/net/bluetooth/hci.h 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/include/net/bluetooth/hci.h 2013-02-01 18:45:01.287188489 +0100
++++ linux-rpi-3.6.y/include/net/bluetooth/hci.h 2013-02-12 21:07:16.586933385 +0100
@@ -142,7 +142,7 @@
#define HCI_DISCONN_TIMEOUT msecs_to_jiffies(2000) /* 2 seconds */
#define HCI_PAIRING_TIMEOUT msecs_to_jiffies(60000) /* 60 seconds */
@@ -85525,7 +85639,7 @@ diff -Naur linux-3.6.11/include/net/bluetooth/hci.h linux-rpi-3.6.y/include/net/
diff -Naur linux-3.6.11/kernel/module.c linux-rpi-3.6.y/kernel/module.c
--- linux-3.6.11/kernel/module.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/kernel/module.c 2013-02-01 18:45:00.278194123 +0100
++++ linux-rpi-3.6.y/kernel/module.c 2013-02-12 21:07:13.600947762 +0100
@@ -2680,20 +2680,23 @@
memset(ptr, 0, mod->core_size);
mod->module_core = ptr;
@@ -85565,7 +85679,7 @@ diff -Naur linux-3.6.11/kernel/module.c linux-rpi-3.6.y/kernel/module.c
pr_debug("final section addresses:\n");
diff -Naur linux-3.6.11/net/core/skbuff.c linux-rpi-3.6.y/net/core/skbuff.c
--- linux-3.6.11/net/core/skbuff.c 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/net/core/skbuff.c 2013-02-01 18:45:00.494192917 +0100
++++ linux-rpi-3.6.y/net/core/skbuff.c 2013-02-12 21:07:14.142945152 +0100
@@ -340,43 +340,57 @@
EXPORT_SYMBOL(build_skb);
@@ -85642,7 +85756,7 @@ diff -Naur linux-3.6.11/net/core/skbuff.c linux-rpi-3.6.y/net/core/skbuff.c
local_irq_restore(flags);
diff -Naur linux-3.6.11/sound/arm/bcm2835.c linux-rpi-3.6.y/sound/arm/bcm2835.c
--- linux-3.6.11/sound/arm/bcm2835.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/bcm2835.c 2013-02-01 18:45:01.554186998 +0100
++++ linux-rpi-3.6.y/sound/arm/bcm2835.c 2013-02-12 21:07:17.606928474 +0100
@@ -0,0 +1,413 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
@@ -86059,7 +86173,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835.c linux-rpi-3.6.y/sound/arm/bcm2835.c
+MODULE_ALIAS("platform:bcm2835_alsa");
diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm2835-ctl.c
--- linux-3.6.11/sound/arm/bcm2835-ctl.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/bcm2835-ctl.c 2013-02-01 18:45:01.554186998 +0100
++++ linux-rpi-3.6.y/sound/arm/bcm2835-ctl.c 2013-02-12 21:07:17.603928489 +0100
@@ -0,0 +1,200 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
@@ -86104,7 +86218,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm283
+static int snd_bcm2835_ctl_info(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_info *uinfo)
+{
-+ audio_info(" ... IN ");
++ audio_info(" ... IN\n");
+ if (kcontrol->private_value == PCM_PLAYBACK_VOLUME) {
+ uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
+ uinfo->count = 1;
@@ -86121,7 +86235,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm283
+ uinfo->value.integer.min = 0;
+ uinfo->value.integer.max = AUDIO_DEST_MAX-1;
+ }
-+ audio_info(" ... OUT ");
++ audio_info(" ... OUT\n");
+ return 0;
+}
+
@@ -86138,13 +86252,13 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm283
+ if(chip->mute == CTRL_VOL_MUTE)
+ {
+ chip->volume = chip->old_volume; /* copy the old volume back */
-+ audio_info("Unmuting, old_volume = %d, volume = %d ...", chip->old_volume, chip->volume);
++ audio_info("Unmuting, old_volume = %d, volume = %d ...\n", chip->old_volume, chip->volume);
+ }
+ else /* otherwise we mute */
+ {
+ chip->old_volume = chip->volume;
+ chip->volume = 26214; /* set volume to minimum level AKA mute */
-+ audio_info("Muting, old_volume = %d, volume = %d ...", chip->old_volume, chip->volume);
++ audio_info("Muting, old_volume = %d, volume = %d ...\n", chip->old_volume, chip->volume);
+ }
+
+ chip->mute = nmute;
@@ -86175,7 +86289,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm283
+ int changed = 0;
+
+ if (kcontrol->private_value == PCM_PLAYBACK_VOLUME) {
-+ audio_info("Volume change attempted.. volume = %d new_volume = %d", chip->volume, (int)ucontrol->value.integer.value[0]);
++ audio_info("Volume change attempted.. volume = %d new_volume = %d\n", chip->volume, (int)ucontrol->value.integer.value[0]);
+ if (chip->mute == CTRL_VOL_MUTE) {
+ /* changed = toggle_mute(chip, CTRL_VOL_UNMUTE); */
+ return 1; /* should return 0 to signify no change but the mixer takes this as the opposite sign (no idea why) */
@@ -86189,7 +86303,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm283
+
+ } else if (kcontrol->private_value == PCM_PLAYBACK_MUTE) {
+ /* Now implemented */
-+ audio_info(" Mute attempted");
++ audio_info(" Mute attempted\n");
+ changed = toggle_mute(chip, ucontrol->value.integer.value[0]);
+
+ } else if (kcontrol->private_value == PCM_PLAYBACK_DEVICE) {
@@ -86263,7 +86377,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-ctl.c linux-rpi-3.6.y/sound/arm/bcm283
+}
diff -Naur linux-3.6.11/sound/arm/bcm2835.h linux-rpi-3.6.y/sound/arm/bcm2835.h
--- linux-3.6.11/sound/arm/bcm2835.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/bcm2835.h 2013-02-01 18:45:01.553187003 +0100
++++ linux-rpi-3.6.y/sound/arm/bcm2835.h 2013-02-12 21:07:17.599928507 +0100
@@ -0,0 +1,155 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
@@ -86422,8 +86536,8 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835.h linux-rpi-3.6.y/sound/arm/bcm2835.h
+#endif /* __SOUND_ARM_BCM2835_H */
diff -Naur linux-3.6.11/sound/arm/bcm2835-pcm.c linux-rpi-3.6.y/sound/arm/bcm2835-pcm.c
--- linux-3.6.11/sound/arm/bcm2835-pcm.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/bcm2835-pcm.c 2013-02-01 18:45:01.552187009 +0100
-@@ -0,0 +1,408 @@
++++ linux-rpi-3.6.y/sound/arm/bcm2835-pcm.c 2013-02-12 21:07:17.597928518 +0100
+@@ -0,0 +1,409 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
+*
@@ -86707,14 +86821,15 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-pcm.c linux-rpi-3.6.y/sound/arm/bcm283
+ if (err == 0) {
+ alsa_stream->running = 1;
+ alsa_stream->draining = 1;
++ } else {
++ audio_error(" Failed to START alsa device (%d)\n", err);
+ }
+ }
+ break;
+ case SNDRV_PCM_TRIGGER_STOP:
+ audio_debug
+ ("bcm2835_AUDIO_TRIGGER_STOP running=%d draining=%d\n",
-+ runtime->status->state == SNDRV_PCM_STATE_DRAINING,
-+ alsa_stream->running);
++ alsa_stream->running, runtime->status->state == SNDRV_PCM_STATE_DRAINING);
+ if (runtime->status->state == SNDRV_PCM_STATE_DRAINING) {
+ audio_info("DRAINING\n");
+ alsa_stream->draining = 1;
@@ -86725,7 +86840,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-pcm.c linux-rpi-3.6.y/sound/arm/bcm283
+ if (alsa_stream->running) {
+ err = bcm2835_audio_stop(alsa_stream);
+ if (err != 0)
-+ audio_error(" Failed to STOP alsa device\n");
++ audio_error(" Failed to STOP alsa device (%d)\n", err);
+ alsa_stream->running = 0;
+ }
+ break;
@@ -86834,8 +86949,8 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-pcm.c linux-rpi-3.6.y/sound/arm/bcm283
+}
diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2835-vchiq.c
--- linux-3.6.11/sound/arm/bcm2835-vchiq.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/bcm2835-vchiq.c 2013-02-01 18:45:01.553187003 +0100
-@@ -0,0 +1,826 @@
++++ linux-rpi-3.6.y/sound/arm/bcm2835-vchiq.c 2013-02-12 21:07:17.601928498 +0100
+@@ -0,0 +1,844 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
+*
@@ -86864,6 +86979,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+#include
+#include
+#include
++#include
+
+#include "bcm2835.h"
+
@@ -86881,7 +86997,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ #define LOG_INFO( fmt, arg... ) pr_info( "%s:%d " fmt, __func__, __LINE__, ##arg)
+ #define LOG_DBG( fmt, arg... ) pr_info( "%s:%d " fmt, __func__, __LINE__, ##arg)
+#else
-+ #define LOG_ERR( fmt, arg... )
++ #define LOG_ERR( fmt, arg... ) pr_err( "%s:%d " fmt, __func__, __LINE__, ##arg)
+ #define LOG_WARN( fmt, arg... )
+ #define LOG_INFO( fmt, arg... )
+ #define LOG_DBG( fmt, arg... )
@@ -86893,9 +87009,12 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ struct semaphore msg_avail_event;
+ struct mutex vchi_mutex;
+ bcm2835_alsa_stream_t *alsa_stream;
-+ int32_t result, got_result;
++ int32_t result;
++ short peer_version;
+} AUDIO_INSTANCE_T;
+
++bool force_bulk = false;
++
+/* ---- Private Variables ---------------------------------------------------- */
+
+/* ---- Private Function Prototypes ------------------------------------------ */
@@ -87011,9 +87130,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ LOG_DBG
+ (" .. instance=%p, m.type=VC_AUDIO_MSG_TYPE_RESULT, success=%d\n",
+ instance, m.u.result.success);
-+ BUG_ON(instance->got_result);
+ instance->result = m.u.result.success;
-+ instance->got_result = 1;
+ up(&instance->msg_avail_event);
+ } else if (m.type == VC_AUDIO_MSG_TYPE_COMPLETE) {
+ irq_handler_t callback = (irq_handler_t) m.u.complete.callback;
@@ -87027,10 +87144,10 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ LOG_DBG(" .. unexpected alsa_stream=%p, callback=%p\n",
+ alsa_stream, callback);
+ }
-+ up(&instance->msg_avail_event);
+ } else {
+ LOG_DBG(" .. unexpected m.type=%d\n", m.type);
+ }
++ LOG_DBG(" .. OUT\n");
+}
+
+static AUDIO_INSTANCE_T *vc_vchi_audio_init(VCHI_INSTANCE_T vchi_instance,
@@ -87045,7 +87162,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ LOG_DBG("%s: start", __func__);
+
+ if (num_connections > VCHI_MAX_NUM_CONNECTIONS) {
-+ LOG_ERR("%s: unsupported number of connections %u (max=%u)",
++ LOG_ERR("%s: unsupported number of connections %u (max=%u)\n",
+ __func__, num_connections, VCHI_MAX_NUM_CONNECTIONS);
+
+ return NULL;
@@ -87054,17 +87171,14 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ instance = kmalloc(sizeof(*instance), GFP_KERNEL);
+
+ memset(instance, 0, sizeof(*instance));
-+
+ instance->num_connections = num_connections;
-+ /* Create the message available event */
-+ sema_init(&instance->msg_avail_event,1);
+
+ /* Create a lock for exclusive, serialized VCHI connection access */
+ mutex_init(&instance->vchi_mutex);
+ /* Open the VCHI service connections */
+ for (i = 0; i < num_connections; i++) {
+ SERVICE_CREATION_T params = {
-+ VCHI_VERSION(VC_AUDIOSERV_VER), // version
++ VCHI_VERSION_EX(VC_AUDIOSERV_VER, VC_AUDIOSERV_MIN_VER),
+ VC_AUDIO_SERVER_NAME, // 4cc service code
+ vchi_connections[i], // passed in fn pointers
+ 0, // rx fifo size (unused)
@@ -87080,7 +87194,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ &instance->vchi_handle[i]);
+ if (status) {
+ LOG_ERR
-+ ("%s: failed to open VCHI service connection (status=%d)",
++ ("%s: failed to open VCHI service connection (status=%d)\n",
+ __func__, status);
+
+ goto err_close_services;
@@ -87108,7 +87222,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ LOG_DBG(" .. IN\n");
+
+ if (instance == NULL) {
-+ LOG_ERR("%s: invalid handle %p", __func__, instance);
++ LOG_ERR("%s: invalid handle %p\n", __func__, instance);
+
+ return -1;
+ }
@@ -87129,7 +87243,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ success = vchi_service_close(instance->vchi_handle[i]);
+ if (success != 0) {
+ LOG_ERR
-+ ("%s: failed to close VCHI service connection (status=%d)",
++ ("%s: failed to close VCHI service connection (status=%d)\n",
+ __func__, success);
+ }
+ }
@@ -87154,7 +87268,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ LOG_INFO("%s: start", __func__);
+ //BUG_ON(instance);
+ if (instance) {
-+ LOG_ERR("%s: VCHI instance already open (%p)",
++ LOG_ERR("%s: VCHI instance already open (%p)\n",
+ __func__, instance);
+ instance->alsa_stream = alsa_stream;
+ alsa_stream->instance = instance;
@@ -87165,7 +87279,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ /* Initialize and create a VCHI connection */
+ ret = vchi_initialise(&vchi_instance);
+ if (ret != 0) {
-+ LOG_ERR("%s: failed to initialise VCHI instance (ret=%d)",
++ LOG_ERR("%s: failed to initialise VCHI instance (ret=%d)\n",
+ __func__, ret);
+
+ ret = -EIO;
@@ -87173,7 +87287,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ }
+ ret = vchi_connect(NULL, 0, vchi_instance);
+ if (ret != 0) {
-+ LOG_ERR("%s: failed to connect VCHI instance (ret=%d)",
++ LOG_ERR("%s: failed to connect VCHI instance (ret=%d)\n",
+ __func__, ret);
+
+ ret = -EIO;
@@ -87184,7 +87298,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ instance = vc_vchi_audio_init(vchi_instance, &vchi_connection, 1);
+
+ if (instance == NULL /*|| audio_handle != instance */ ) {
-+ LOG_ERR("%s: failed to initialize audio service", __func__);
++ LOG_ERR("%s: failed to initialize audio service\n", __func__);
+
+ ret = -EPERM;
+ goto err_free_mem;
@@ -87232,7 +87346,7 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ VCHI_FLAGS_BLOCK_UNTIL_QUEUED, NULL);
+
+ if (success != 0) {
-+ LOG_ERR("%s: failed on vchi_msg_queue (status=%d)",
++ LOG_ERR("%s: failed on vchi_msg_queue (status=%d)\n",
+ __func__, success);
+
+ ret = -1;
@@ -87268,20 +87382,22 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ }
+ vchi_service_use(instance->vchi_handle[0]);
+
-+ instance->got_result = 0;
+ instance->result = -1;
+
+ m.type = VC_AUDIO_MSG_TYPE_CONTROL;
+ m.u.control.dest = chip->dest;
+ m.u.control.volume = chip->volume;
+
++ /* Create the message available event */
++ sema_init(&instance->msg_avail_event, 0);
++
+ /* Send the message to the videocore */
+ success = vchi_msg_queue(instance->vchi_handle[0],
+ &m, sizeof m,
+ VCHI_FLAGS_BLOCK_UNTIL_QUEUED, NULL);
+
+ if (success != 0) {
-+ LOG_ERR("%s: failed on vchi_msg_queue (status=%d)",
++ LOG_ERR("%s: failed on vchi_msg_queue (status=%d)\n",
+ __func__, success);
+
+ ret = -1;
@@ -87289,18 +87405,16 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ }
+
+ /* We are expecting a reply from the videocore */
-+ while (!instance->got_result) {
-+ if (down_interruptible(&instance->msg_avail_event)) {
-+ LOG_ERR("%s: failed on waiting for event (status=%d)",
-+ __func__, success);
++ if (down_interruptible(&instance->msg_avail_event)) {
++ LOG_ERR("%s: failed on waiting for event (status=%d)\n",
++ __func__, success);
+
-+ ret = -1;
-+ goto unlock;
-+ }
++ ret = -1;
++ goto unlock;
+ }
+
+ if (instance->result != 0) {
-+ LOG_ERR("%s: result=%d", __func__, instance->result);
++ LOG_ERR("%s: result=%d\n", __func__, instance->result);
+
+ ret = -1;
+ goto unlock;
@@ -87327,16 +87441,16 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ if (chip->avail_substreams & (1 << i)) {
+ if (!chip->alsa_stream[i])
+ {
-+ LOG_DBG(" No ALSA stream available?! ");
++ LOG_DBG(" No ALSA stream available?! %i:%p (%x)\n", i, chip->alsa_stream[i], chip->avail_substreams);
+ ret = 0;
+ }
+ else if (bcm2835_audio_set_ctls_chan /* returns 0 on success */
+ (chip->alsa_stream[i], chip) != 0)
+ {
-+ LOG_DBG("Couldn't set the controls for stream %d", i);
++ LOG_DBG("Couldn't set the controls for stream %d\n", i);
+ ret = -1;
+ }
-+ LOG_DBG(" Controls set for stream %d", i);
++ else LOG_DBG(" Controls set for stream %d\n", i);
+ }
+ }
+ LOG_DBG(" .. OUT ret=%d\n", ret);
@@ -87371,7 +87485,6 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ }
+ vchi_service_use(instance->vchi_handle[0]);
+
-+ instance->got_result = 0;
+ instance->result = -1;
+
+ m.type = VC_AUDIO_MSG_TYPE_CONFIG;
@@ -87379,13 +87492,16 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ m.u.config.samplerate = samplerate;
+ m.u.config.bps = bps;
+
++ /* Create the message available event */
++ sema_init(&instance->msg_avail_event, 0);
++
+ /* Send the message to the videocore */
+ success = vchi_msg_queue(instance->vchi_handle[0],
+ &m, sizeof m,
+ VCHI_FLAGS_BLOCK_UNTIL_QUEUED, NULL);
+
+ if (success != 0) {
-+ LOG_ERR("%s: failed on vchi_msg_queue (status=%d)",
++ LOG_ERR("%s: failed on vchi_msg_queue (status=%d)\n",
+ __func__, success);
+
+ ret = -1;
@@ -87393,14 +87509,12 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ }
+
+ /* We are expecting a reply from the videocore */
-+ while (!instance->got_result) {
-+ if (down_interruptible(&instance->msg_avail_event)) {
-+ LOG_ERR("%s: failed on waiting for event (status=%d)",
-+ __func__, success);
++ if (down_interruptible(&instance->msg_avail_event)) {
++ LOG_ERR("%s: failed on waiting for event (status=%d)\n",
++ __func__, success);
+
-+ ret = -1;
-+ goto unlock;
-+ }
++ ret = -1;
++ goto unlock;
+ }
+
+ if (instance->result != 0) {
@@ -87526,7 +87640,10 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ vchi_service_use(instance->vchi_handle[0]);
+
+ m.type = VC_AUDIO_MSG_TYPE_CLOSE;
-+ instance->got_result = 0;
++
++ /* Create the message available event */
++ sema_init(&instance->msg_avail_event, 0);
++
+ /* Send the message to the videocore */
+ success = vchi_msg_queue(instance->vchi_handle[0],
+ &m, sizeof m,
@@ -87538,14 +87655,12 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ ret = -1;
+ goto unlock;
+ }
-+ while (!instance->got_result) {
-+ if (down_interruptible(&instance->msg_avail_event)) {
-+ LOG_ERR("%s: failed on waiting for event (status=%d)",
-+ __func__, success);
++ if (down_interruptible(&instance->msg_avail_event)) {
++ LOG_ERR("%s: failed on waiting for event (status=%d)",
++ __func__, success);
+
-+ ret = -1;
-+ goto unlock;
-+ }
++ ret = -1;
++ goto unlock;
+ }
+ if (instance->result != 0) {
+ LOG_ERR("%s: failed result (status=%d)",
@@ -87589,8 +87704,13 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ }
+ vchi_service_use(instance->vchi_handle[0]);
+
++ if ( instance->peer_version==0 && vchi_get_peer_version(instance->vchi_handle[0], &instance->peer_version) == 0 ) {
++ LOG_DBG("%s: client version %d connected\n", __func__, instance->peer_version);
++ }
+ m.type = VC_AUDIO_MSG_TYPE_WRITE;
+ m.u.write.count = count;
++ // old version uses bulk, new version uses control
++ m.u.write.max_packet = instance->peer_version < 2 || force_bulk ? 0:4000;
+ m.u.write.callback = alsa_stream->fifo_irq_handler;
+ m.u.write.cookie = alsa_stream;
+ m.u.write.silence = src == NULL;
@@ -87607,17 +87727,27 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ ret = -1;
+ goto unlock;
+ }
-+ LOG_DBG(" ... sent header\n");
+ if (!m.u.write.silence) {
-+ /* Send the message to the videocore */
-+ success = vchi_bulk_queue_transmit(instance->vchi_handle[0],
-+ src, count,
-+ 0 *
-+ VCHI_FLAGS_BLOCK_UNTIL_QUEUED
-+ +
-+ 1 *
-+ VCHI_FLAGS_BLOCK_UNTIL_DATA_READ,
-+ NULL);
++ if (m.u.write.max_packet == 0) {
++ /* Send the message to the videocore */
++ success = vchi_bulk_queue_transmit(instance->vchi_handle[0],
++ src, count,
++ 0 *
++ VCHI_FLAGS_BLOCK_UNTIL_QUEUED
++ +
++ 1 *
++ VCHI_FLAGS_BLOCK_UNTIL_DATA_READ,
++ NULL);
++ } else {
++ while (count > 0) {
++ int bytes = min((int)m.u.write.max_packet, (int)count);
++ success = vchi_msg_queue(instance->vchi_handle[0],
++ src, bytes,
++ VCHI_FLAGS_BLOCK_UNTIL_QUEUED, NULL);
++ src = (char *)src + bytes;
++ count -= bytes;
++ }
++ }
+ if (success != 0) {
+ LOG_ERR
+ ("%s: failed on vchi_bulk_queue_transmit (status=%d)",
@@ -87662,9 +87792,12 @@ diff -Naur linux-3.6.11/sound/arm/bcm2835-vchiq.c linux-rpi-3.6.y/sound/arm/bcm2
+ atomic_sub(count, &alsa_stream->retrieved);
+ return count;
+}
++
++module_param(force_bulk, bool, 0444);
++MODULE_PARM_DESC(force_bulk, "Force use of vchiq bulk for audio");
diff -Naur linux-3.6.11/sound/arm/Kconfig linux-rpi-3.6.y/sound/arm/Kconfig
--- linux-3.6.11/sound/arm/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/Kconfig 2013-02-01 18:45:01.554186998 +0100
++++ linux-rpi-3.6.y/sound/arm/Kconfig 2013-02-12 21:07:17.603928489 +0100
@@ -39,5 +39,12 @@
Say Y or M if you want to support any AC97 codec attached to
the PXA2xx AC97 interface.
@@ -87680,7 +87813,7 @@ diff -Naur linux-3.6.11/sound/arm/Kconfig linux-rpi-3.6.y/sound/arm/Kconfig
diff -Naur linux-3.6.11/sound/arm/Makefile linux-rpi-3.6.y/sound/arm/Makefile
--- linux-3.6.11/sound/arm/Makefile 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/Makefile 2013-02-01 18:45:01.552187009 +0100
++++ linux-rpi-3.6.y/sound/arm/Makefile 2013-02-12 21:07:17.599928507 +0100
@@ -14,3 +14,9 @@
obj-$(CONFIG_SND_PXA2XX_AC97) += snd-pxa2xx-ac97.o
@@ -87693,8 +87826,8 @@ diff -Naur linux-3.6.11/sound/arm/Makefile linux-rpi-3.6.y/sound/arm/Makefile
+
diff -Naur linux-3.6.11/sound/arm/vc_vchi_audioserv_defs.h linux-rpi-3.6.y/sound/arm/vc_vchi_audioserv_defs.h
--- linux-3.6.11/sound/arm/vc_vchi_audioserv_defs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-rpi-3.6.y/sound/arm/vc_vchi_audioserv_defs.h 2013-02-01 18:45:01.554186998 +0100
-@@ -0,0 +1,114 @@
++++ linux-rpi-3.6.y/sound/arm/vc_vchi_audioserv_defs.h 2013-02-12 21:07:17.603928489 +0100
+@@ -0,0 +1,116 @@
+/*****************************************************************************
+* Copyright 2011 Broadcom Corporation. All rights reserved.
+*
@@ -87712,7 +87845,8 @@ diff -Naur linux-3.6.11/sound/arm/vc_vchi_audioserv_defs.h linux-rpi-3.6.y/sound
+#ifndef _VC_AUDIO_DEFS_H_
+#define _VC_AUDIO_DEFS_H_
+
-+#define VC_AUDIOSERV_VER 1
++#define VC_AUDIOSERV_MIN_VER 1
++#define VC_AUDIOSERV_VER 2
+
+// FourCC code used for VCHI connection
+#define VC_AUDIO_SERVER_NAME MAKE_FOURCC("AUDS")
@@ -87776,7 +87910,8 @@ diff -Naur linux-3.6.11/sound/arm/vc_vchi_audioserv_defs.h linux-rpi-3.6.y/sound
+ uint32_t count; // in bytes
+ void *callback;
+ void *cookie;
-+ uint32_t silence;
++ uint16_t silence;
++ uint16_t max_packet;
+} VC_AUDIO_WRITE_T;
+
+// Generic result for a request (VC->HOST)
@@ -87811,7 +87946,7 @@ diff -Naur linux-3.6.11/sound/arm/vc_vchi_audioserv_defs.h linux-rpi-3.6.y/sound
+#endif // _VC_AUDIO_DEFS_H_
diff -Naur linux-3.6.11/sound/pci/Kconfig linux-rpi-3.6.y/sound/pci/Kconfig
--- linux-3.6.11/sound/pci/Kconfig 2012-12-17 18:27:45.000000000 +0100
-+++ linux-rpi-3.6.y/sound/pci/Kconfig 2013-02-01 18:45:01.669186355 +0100
++++ linux-rpi-3.6.y/sound/pci/Kconfig 2013-02-12 21:07:17.966926741 +0100
@@ -2,8 +2,8 @@
config SND_TEA575X
diff --git a/projects/Virtual/options b/projects/Virtual/options
index ffd1e96717..85395e0d9e 100755
--- a/projects/Virtual/options
+++ b/projects/Virtual/options
@@ -290,7 +290,7 @@
# 'all' compiles all drivers;
# 'all,!xxx,!yyy' de-selects previously selected drivers
# "none" for disable LCD support
- LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz"
+ LCD_DRIVER="irtrans,imon,imonlcd,mdm166a,MtxOrb,lis,dm140,hd44780,CFontz,SureElec"
# Modules to install in initramfs for early boot
INITRAMFS_MODULES="uvesafb xhci-hcd"