From 013d435d328eac2d6f8ea4191677fcfe37f7af0f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 00:15:13 +0100 Subject: [PATCH 01/15] xbmc: add PR2208 patch Signed-off-by: Stephan Raue --- .../xbmc/patches/xbmc-990.10-PR2208.patch | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 packages/mediacenter/xbmc/patches/xbmc-990.10-PR2208.patch 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 + From 9d8267461e31ec5847020bafe89f2e50939b9d08 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 00:15:36 +0100 Subject: [PATCH 02/15] xbmc: add another AE fix Signed-off-by: Stephan Raue --- ...e_flag_is_set_or_we_run_into_trouble.patch | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 packages/mediacenter/xbmc/patches/xbmc-990.11-AE-make_sure_we_reopen_when_the_flag_is_set_or_we_run_into_trouble.patch 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 + From f93c4909d003696798d4b111748842a65cdc3d4d Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 10:23:42 +0100 Subject: [PATCH 03/15] bcm2835-bootloader: fix update script Signed-off-by: Stephan Raue --- packages/tools/bcm2835-bootloader/scripts/update.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From c35584e32e642795d622b29aec1c3542ed5e4250 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 10:24:14 +0100 Subject: [PATCH 04/15] bcm2835-bootloader: update to bcm2835-bootloader-f715140 Signed-off-by: Stephan Raue --- packages/tools/bcm2835-bootloader/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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" From 4807e79b214a5ca6a44309af641427d20ca2b381 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 10:24:29 +0100 Subject: [PATCH 05/15] bcm2835-driver: update to bcm2835-driver-f715140 Signed-off-by: Stephan Raue --- packages/graphics/bcm2835-driver/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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" From 51c99977909619ceee1d1e6f3e07f2c1a51d86f6 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 10:24:49 +0100 Subject: [PATCH 06/15] projects/RPi/patches: update RPi patch Signed-off-by: Stephan Raue --- ...=> linux-3.6-01-RPi_support-871eef1.patch} | 771 ++++++++++-------- 1 file changed, 453 insertions(+), 318 deletions(-) rename projects/RPi/patches/linux/{linux-3.6-01-RPi_support-d114d19.patch => linux-3.6-01-RPi_support-871eef1.patch} (99%) 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 From 9df9fc94e2fdadd287b5b15449cad1fc4b8d589b Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 11:03:11 +0100 Subject: [PATCH 07/15] xbmc-addon-xvdr: update to xbmc-addon-xvdr-34070b5 Signed-off-by: Stephan Raue --- packages/mediacenter/xbmc-addon-xvdr/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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" From ee0e2a40b86b25c0de3ff8e7a99a022bdb441f1a Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Wed, 13 Feb 2013 11:52:39 +0200 Subject: [PATCH 08/15] vdr-plugin-dvbapi: update to vdr-plugin-dvbapi-cd93752 --- .../3rdparty/multimedia/vdr-plugin-dvbapi/meta | 2 +- ...r-plugin-dvbapi-cd93752-crosscompiling.patch | 13 +++++++++++++ .../vdr-plugin-dvbapi-cd93752-ffdecsa.patch | 16 ++++++++++++++++ ...r-plugin-dvbapi-e87e15f-crosscompiling.patch | 12 ------------ .../vdr-plugin-dvbapi-e87e15f-ffdecsa.patch | 17 ----------------- 5 files changed, 30 insertions(+), 30 deletions(-) create mode 100644 packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-crosscompiling.patch create mode 100644 packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-cd93752-ffdecsa.patch delete mode 100644 packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-crosscompiling.patch delete mode 100644 packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-e87e15f-ffdecsa.patch 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 From cf17204de003aa15920ddc41a8f025513afe6b4f Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Wed, 13 Feb 2013 11:56:15 +0200 Subject: [PATCH 09/15] vdr-addon: cleanup. remove xinelib and text2skin stuff --- .../addons/service/multimedia/vdr-addon/addon | 16 ---------------- .../vdr-addon/config.plugins/commands.conf | 3 --- .../multimedia/vdr-addon/config/settings.xml | 3 --- .../addons/service/multimedia/vdr-addon/meta | 2 +- .../multimedia/vdr-addon/source/bin/vdr.start | 18 ------------------ .../resources/language/English/strings.xml | 3 --- .../vdr-addon/source/resources/settings.xml | 3 --- 7 files changed, 1 insertion(+), 47 deletions(-) delete mode 100644 packages/addons/service/multimedia/vdr-addon/config.plugins/commands.conf 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 @@ - - - From a94e7ac428a1f55f2103c1fa806cd0258f4ab3f1 Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Wed, 13 Feb 2013 11:57:36 +0200 Subject: [PATCH 10/15] remove package: 'vdr-text2skin' --- .../3rdparty/multimedia/vdr-text2skin/build | 36 ------------------- .../3rdparty/multimedia/vdr-text2skin/meta | 35 ------------------ 2 files changed, 71 deletions(-) delete mode 100755 packages/3rdparty/multimedia/vdr-text2skin/build delete mode 100644 packages/3rdparty/multimedia/vdr-text2skin/meta 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" From ee47d62a85636aca0ac539ba91d7a72253c98813 Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Wed, 13 Feb 2013 11:58:02 +0200 Subject: [PATCH 11/15] remove package: 'vdr-skinanthra_1280_OS' --- .../multimedia/vdr-skinanthra_1280_OS/meta | 35 ------------------- 1 file changed, 35 deletions(-) delete mode 100644 packages/3rdparty/multimedia/vdr-skinanthra_1280_OS/meta 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" From 8012e94bbfc74a11644cbfba5cfdf18fa95ebc51 Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Wed, 13 Feb 2013 11:58:38 +0200 Subject: [PATCH 12/15] remove package: 'vdr-xineliboutput' --- .../multimedia/vdr-xineliboutput/build | 51 ------------------- .../multimedia/vdr-xineliboutput/meta | 35 ------------- 2 files changed, 86 deletions(-) delete mode 100755 packages/3rdparty/multimedia/vdr-xineliboutput/build delete mode 100644 packages/3rdparty/multimedia/vdr-xineliboutput/meta 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" From 747ab28185917b3a899fa72df5058f3d7dbe0309 Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Wed, 13 Feb 2013 12:00:04 +0200 Subject: [PATCH 13/15] remove package: 'xine-lib' --- packages/3rdparty/lib/xine-lib/build | 45 ---------------------------- packages/3rdparty/lib/xine-lib/meta | 35 ---------------------- 2 files changed, 80 deletions(-) delete mode 100755 packages/3rdparty/lib/xine-lib/build delete mode 100644 packages/3rdparty/lib/xine-lib/meta 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" From acdd4c8191aad1f105cbf19a86bb0b81ba374f0e Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 11:20:27 +0100 Subject: [PATCH 14/15] xbmc-addon-settings: add SureElec LCD driver support Signed-off-by: Stephan Raue --- .../xbmc-addon-settings/source/resources/settings.xml | 2 +- projects/Fusion/options | 2 +- projects/Generic/options | 2 +- projects/Generic_OSS/options | 2 +- projects/ION/options | 2 +- projects/Intel/options | 2 +- projects/RPi/options | 6 +++--- projects/Virtual/options | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) 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/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/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" From e1feb956ccf158ad118f5f30b7708839613da67c Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 13 Feb 2013 11:20:52 +0100 Subject: [PATCH 15/15] xbmc: add PR2058 Signed-off-by: Stephan Raue --- .../xbmc/patches/xbmc-990.12-2058.patch | 174 ++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 packages/mediacenter/xbmc/patches/xbmc-990.12-2058.patch 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 +