merging trunk

This commit is contained in:
Stephan Raue 2010-05-08 20:52:18 +02:00
commit accad820dc
338 changed files with 51051 additions and 33549 deletions

View File

@ -68,7 +68,7 @@ get_graphicdrivers() {
DRM_DRIVERS="$DRM_DRIVERS intel"
fi
if [ $drv = r200 -o $drv = r300 -o $drv = r600 -o $drv = radeon ]; then
if [ $drv = r200 -o $drv = r300 -o $drv = r600 -o $drv = radeon ]; then
XORG_DRIVERS="$XORG_DRIVERS ati"
DRM_DRIVERS="$DRM_DRIVERS radeon"
fi

View File

@ -80,6 +80,7 @@ TOOLCHAIN_LANGUAGES=c
[ "$TOOLCHAIN_CXX" = yes ] && TOOLCHAIN_LANGUAGES=${TOOLCHAIN_LANGUAGES},c++
[ "$OPTIMIZATIONS" = speed ] && GCC_OPTIM="-O4 $PROJECT_CFLAGS" || GCC_OPTIM="-Os"
[ "$TARGET_ARCH" = i386 -o "$TARGET_ARCH" = x86_64 ] && GCC_OPTIM="$GCC_OPTIM -fexcess-precision=fast"
TARGET_CC=${TARGET_PREFIX}gcc
TARGET_CXX=${TARGET_PREFIX}g++
@ -217,7 +218,7 @@ VERSION_SUFFIX=$TARGET_ARCH
fi
kernel_path() {
ls -d $ROOT/$BUILD/linux*
ls -d $ROOT/$BUILD/linux-[0-9]*
}
require_eglibc() {
@ -255,10 +256,10 @@ add_user() {
}
add_group() {
# Usage: add_group "groupname" "groupid"
# Usage: add_group "groupname" "groupid" ("members")
mkdir -p ${INSTALL}/etc
touch ${INSTALL}/etc/group
if [ -z "`grep "$1:" ${INSTALL}/etc/group`" ]; then
echo "$1:x:$2:" >> ${INSTALL}/etc/group
echo "$1:x:$2:$3" >> ${INSTALL}/etc/group
fi
}

51
licenses/Radeon_rlc.txt Normal file
View File

@ -0,0 +1,51 @@
Copyright (C) 2009, 2010 Advanced Micro Devices, Inc. All rights reserved.
REDISTRIBUTION: Permission is hereby granted, free of any license fees,
to any person obtaining a copy of this microcode (the "Software"), to
install, reproduce, copy and distribute copies, in binary form only, of
the Software and to permit persons to whom the Software is provided to
do the same, provided that the following conditions are met:
No reverse engineering, decompilation, or disassembly of this Software
is permitted.
Redistributions must reproduce the above copyright notice, this
permission notice, and the following disclaimers and notices in the
Software documentation and/or other materials provided with the
Software.
DISCLAIMER: THE USE OF THE SOFTWARE IS AT YOUR SOLE RISK. THE SOFTWARE
IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND AND COPYRIGHT
HOLDER AND ITS LICENSORS EXPRESSLY DISCLAIM ALL WARRANTIES, EXPRESS AND
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
COPYRIGHT HOLDER AND ITS LICENSORS DO NOT WARRANT THAT THE SOFTWARE WILL
MEET YOUR REQUIREMENTS, OR THAT THE OPERATION OF THE SOFTWARE WILL BE
UNINTERRUPTED OR ERROR-FREE. THE ENTIRE RISK ASSOCIATED WITH THE USE OF
THE SOFTWARE IS ASSUMED BY YOU. FURTHERMORE, COPYRIGHT HOLDER AND ITS
LICENSORS DO NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE
OR THE RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS,
ACCURACY, RELIABILITY, CURRENTNESS, OR OTHERWISE.
DISCLAIMER: UNDER NO CIRCUMSTANCES INCLUDING NEGLIGENCE, SHALL COPYRIGHT
HOLDER AND ITS LICENSORS OR ITS DIRECTORS, OFFICERS, EMPLOYEES OR AGENTS
("AUTHORIZED REPRESENTATIVES") BE LIABLE FOR ANY INCIDENTAL, INDIRECT,
SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS
PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, AND THE
LIKE) ARISING OUT OF THE USE, MISUSE OR INABILITY TO USE THE SOFTWARE,
BREACH OR DEFAULT, INCLUDING THOSE ARISING FROM INFRINGEMENT OR ALLEGED
INFRINGEMENT OF ANY PATENT, TRADEMARK, COPYRIGHT OR OTHER INTELLECTUAL
PROPERTY RIGHT EVEN IF COPYRIGHT HOLDER AND ITS AUTHORIZED
REPRESENTATIVES HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN
NO EVENT SHALL COPYRIGHT HOLDER OR ITS AUTHORIZED REPRESENTATIVES TOTAL
LIABILITY FOR ALL DAMAGES, LOSSES, AND CAUSES OF ACTION (WHETHER IN
CONTRACT, TORT (INCLUDING NEGLIGENCE) OR OTHERWISE) EXCEED THE AMOUNT OF
US$10.
Notice: The Software is subject to United States export laws and
regulations. You agree to comply with all domestic and international
export laws and regulations that apply to the Software, including but
not limited to the Export Administration Regulations administered by the
U.S. Department of Commerce and International Traffic in Arm Regulations
administered by the U.S. Department of State. These laws include
restrictions on destinations, end users and end use.

View File

@ -1 +1 @@
ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.22.tar.bz2
ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.23.tar.bz2

View File

@ -1 +1 @@
ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.0.22.tar.bz2
ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.0.23.tar.bz2

View File

@ -20,4 +20,4 @@ options snd-hda-intel model=auto
# fix some Audio Problems with HDMI on ION based Hardware
# see: http://xbmc.org/forum/showthread.php?t=69479
alias snd-card-0 snd-hda-codec-nvhdmi
alias snd-card-0 snd-hda-codec-nvhdmi

View File

@ -0,0 +1,69 @@
pcm.!default {
type plug
slave {
pcm "both"
}
}
pcm.both {
type route
slave {
pcm multi
channels 6
}
ttable.0.0 1.0
ttable.1.1 1.0
ttable.0.2 1.0
ttable.1.3 1.0
ttable.0.4 1.0
ttable.1.5 1.0
}
pcm.multi {
type multi
slaves.a {
pcm "tv"
channels 2
}
slaves.b {
pcm "receiver"
channels 2
}
slaves.c {
pcm "analog"
channels 2
}
bindings.0.slave a
bindings.0.channel 0
bindings.1.slave a
bindings.1.channel 1
bindings.2.slave b
bindings.2.channel 0
bindings.3.slave b
bindings.3.channel 1
bindings.4.slave c
bindings.4.channel 0
bindings.5.slave c
bindings.5.channel 1
}
pcm.tv {
type hw
card 0
device 3
channels 2
}
pcm.receiver {
type hw
card 0
device 1
channels 2
}
pcm.analog {
type hw
card 0
device 0
channels 2
}

View File

@ -8,5 +8,6 @@ $SCRIPTS/install alsa-lib
$SCRIPTS/install alsa-utils
mkdir -p $INSTALL/etc/modprobe.d
cp $PKG_DIR/config/alsa-base.conf $INSTALL/etc/modprobe.d
cp $PKG_DIR/config/audio $INSTALL/etc
cp -P $PKG_DIR/config/alsa-base.conf $INSTALL/etc/modprobe.d
cp -P $PKG_DIR/config/audio $INSTALL/etc

View File

@ -3,7 +3,6 @@
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/build libiconv
cd $PKG_BUILD
./configure --host=$TARGET_NAME \

View File

@ -2,7 +2,5 @@
. config/options
$SCRIPTS/install libiconv
mkdir -p $INSTALL/usr/lib
cp -P $PKG_BUILD/lib/*/.libs/*.so*[.0-9] $INSTALL/usr/lib

View File

@ -1 +1 @@
http://ignum.dl.sourceforge.net/project/modplug-xmms/libmodplug/0.8.7/libmodplug-0.8.7.tar.gz
http://ignum.dl.sourceforge.net/project/modplug-xmms/libmodplug/0.8.8/libmodplug-0.8.8.tar.gz

View File

@ -1 +1 @@
http://downloads.xiph.org/releases/ogg/libogg-1.1.4.tar.gz
http://downloads.xiph.org/releases/ogg/libogg-1.2.0.tar.gz

View File

@ -1 +1 @@
http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.3.tar.bz2
http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.1.tar.bz2

View File

@ -1 +1 @@
http://www.zlib.net/zlib-1.2.4.tar.bz2
http://www.zlib.net/zlib-1.2.5.tar.bz2

View File

@ -1,8 +0,0 @@
#!/bin/sh
. config/options
$SCRIPTS/install gettext
mkdir -p $INSTALL/usr/lib
cp -PR $PKG_BUILD/lib/.libs/*.so* $INSTALL/usr/lib

View File

@ -1 +0,0 @@
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz

View File

@ -1 +1 @@
ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.1/mysql-5.1.41.tar.gz
ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.1/mysql-5.1.45.tar.gz

View File

@ -1 +1 @@
http://www.hwaci.com/sw/sqlite/sqlite-amalgamation-3.6.22.tar.gz
http://www.hwaci.com/sw/sqlite/sqlite-amalgamation-3.6.23.1.tar.gz

View File

@ -1 +1 @@
http://sources.openelec.tv/svn/bootchart-1.2.tar.gz
http://sources.openelec.tv/svn/bootchart-1.3.tar.gz

View File

@ -5,6 +5,3 @@
$SCRIPTS/install strace
$SCRIPTS/install gdb
$SCRIPTS/install bootchart
$SCRIPTS/install mrxvt
$SCRIPTS/install evilwm

View File

@ -1 +0,0 @@
https://svn.boost.org/trac/boost/ticket/2053

View File

@ -1,20 +0,0 @@
--- a/libs/thread/src/pthread/thread.cpp
+++ b/libs/thread/src/pthread/thread.cpp
@@ -388,8 +388,6 @@ namespace boost
{
#if defined(PTW32_VERSION) || defined(__hpux)
return pthread_num_processors_np();
-#elif defined(__linux__)
- return get_nprocs();
#elif defined(__APPLE__) || defined(__FreeBSD__)
int count;
size_t size=sizeof(count);
@@ -397,6 +395,8 @@ namespace boost
#elif defined(BOOST_HAS_UNISTD_H) && defined(_SC_NPROCESSORS_ONLN)
int const count=sysconf(_SC_NPROCESSORS_ONLN);
return (count>0)?count:0;
+#elif defined(__linux__)
+ return get_nprocs();
#else
return 0;
#endif

View File

@ -1 +1 @@
http://switch.dl.sourceforge.net/sourceforge/boost/boost_1_40_0.tar.bz2
http://downloads.sourceforge.net/project/boost/boost/1.42.0/boost_1_42_0.tar.bz2

View File

@ -3,7 +3,6 @@
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/build gettext
$SCRIPTS/build dbus
$SCRIPTS/build glib
$SCRIPTS/build expat

View File

@ -5,7 +5,6 @@
$SCRIPTS/install dbus
$SCRIPTS/install glib
$SCRIPTS/install expat
$SCRIPTS/install gettext
mkdir -p $INSTALL/usr/lib
cp -PR $PKG_BUILD/.build-target/dbus/.libs/*.so* $INSTALL/usr/lib
cp -P $PKG_BUILD/.build-target/dbus/.libs/*.so* $INSTALL/usr/lib

View File

@ -1 +1 @@
http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.82.tar.gz
http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.86.tar.gz

View File

@ -1,21 +0,0 @@
#!/bin/sh
. config/options
$SCRIPTS/build toolchain
cd $PKG_BUILD/gettext-runtime
./configure --host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr \
--with-included-gettext \
--disable-static \
--enable-shared \
--disable-dependency-tracking \
--disable-java \
--disable-native-java \
--disable-libasprintf
make
$MAKEINSTALL

View File

@ -1,7 +0,0 @@
#!/bin/sh
. config/options
mkdir -p $INSTALL/usr/lib
cp -PR $PKG_BUILD/gettext-runtime/intl/.libs/libintl.so* $INSTALL/usr/lib
cp -PR $PKG_BUILD/gettext-runtime/intl/charset.alias $INSTALL/usr/lib

View File

@ -1,29 +0,0 @@
diff -Naur gettext-0.17/gettext-runtime/gnulib-lib/mbchar.h gettext-0.17a/gettext-runtime/gnulib-lib/mbchar.h
--- gettext-0.17/gettext-runtime/gnulib-lib/mbchar.h 2007-10-07 22:28:16.000000000 +0200
+++ gettext-0.17a/gettext-runtime/gnulib-lib/mbchar.h 2009-05-17 10:09:49.000000000 +0200
@@ -147,6 +147,8 @@
#include <stdbool.h>
#include <string.h>
+typedef unsigned int wint_t;
+
/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
<wchar.h>.
BSD/OS 4.1 has a bug: <stdio.h> and <time.h> must be included before
diff -Naur gettext-0.17/gettext-runtime/gnulib-lib/wchar.in.h gettext-0.17a/gettext-runtime/gnulib-lib/wchar.in.h
--- gettext-0.17/gettext-runtime/gnulib-lib/wchar.in.h 2007-10-04 00:23:31.000000000 +0200
+++ gettext-0.17a/gettext-runtime/gnulib-lib/wchar.in.h 2009-05-17 10:15:26.000000000 +0200
@@ -41,7 +41,7 @@
/* The include_next requires a split double-inclusion guard. */
#if @HAVE_WCHAR_H@
# @INCLUDE_NEXT@ @NEXT_WCHAR_H@
-#endif
+#else
#ifndef _GL_WCHAR_H
#define _GL_WCHAR_H
@@ -80,3 +80,4 @@
#endif /* _GL_WCHAR_H */
#endif /* _GL_WCHAR_H */
+#endif

View File

@ -1 +0,0 @@
http://ftp.gnu.org/pub/gnu/gettext/gettext-0.17.tar.gz

View File

@ -3,7 +3,6 @@
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/build libiconv
$SCRIPTS/build zlib
$SCRIPTS/build glib-host
@ -31,11 +30,12 @@ glib_cv_stack_grows='no' \
--enable-regex \
--with-gnu-ld \
--with-threads=posix \
--with-libiconv=gnu \
--disable-man \
--disable-rebuilds \
--disable-gtk-doc \
# --with-libiconv=gnu \
make
$MAKEINSTALL

View File

@ -3,8 +3,9 @@
. config/options
$SCRIPTS/install zlib
$SCRIPTS/install libiconv
mkdir -p $INSTALL/usr/lib
cp -P `find $PKG_BUILD/.build-target/g{lib,module,object,thread,io} -name *.so*` $INSTALL/usr/lib
rm -rf $INSTALL/usr/lib/libg{lib,module,object,thread,io}*.so*T
rm -rf $INSTALL/usr/lib/libg{lib,module,object,thread,io}*.so*T
cp $PKG_BUILD/.build-target/glib/libcharset/charset.alias $INSTALL/usr/lib

View File

@ -1,15 +0,0 @@
diff -up glib-2.16.6/configure.atomic glib-2.16.6/configure
--- glib-2.16.6/configure.atomic 2008-10-27 18:24:20.000000000 -0400
+++ glib-2.16.6/configure 2008-10-27 18:24:31.000000000 -0400
@@ -42742,11 +42742,6 @@ $as_echo_n "checking whether to use asse
if test x"$GCC" = xyes; then
case $host_cpu in
- i386)
- { $as_echo "$as_me:$LINENO: result: none" >&5
-$as_echo "none" >&6; }
- glib_memory_barrier_needed=no
- ;;
i?86)
{ $as_echo "$as_me:$LINENO: result: i486" >&5
$as_echo "i486" >&6; }

View File

@ -1 +1 @@
http://ftp.gnome.org/pub/GNOME/sources/glib/2.23/glib-2.23.1.tar.bz2
http://ftp.gnome.org/pub/GNOME/sources/glib/2.24/glib-2.24.0.tar.bz2

View File

@ -0,0 +1,22 @@
#!/bin/sh
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/build dbus-host
$SCRIPTS/unpack libnih
setup_toolchain host
cd $BUILD/libnih*
mkdir -p objdir-host
cd objdir-host
../configure --enable-static \
--disable-shared
make
mkdir -p $ROOT/$TOOLCHAIN/bin
cp -f nih-dbus-tool/nih-dbus-tool $ROOT/$TOOLCHAIN/bin

26
packages/devel/libnih/build Executable file
View File

@ -0,0 +1,26 @@
#!/bin/sh
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/build dbus
$SCRIPTS/build libnih-host
export NIH_DBUS_TOOL="$ROOT/$TOOLCHAIN/bin/nih-dbus-tool"
cd $BUILD/$1*
mkdir -p objdir-target
cd objdir-target
../configure --host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr \
--enable-static \
--disable-shared \
--disable-nls \
--enable-threading
make
$MAKEINSTALL

View File

@ -0,0 +1 @@
http://upstart.ubuntu.com/download/libnih/1.0/libnih-1.0.2.tar.gz

View File

@ -1 +1 @@
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.9.tar.bz2
http://downloads.sourceforge.net/project/pcre/pcre/8.02/pcre-8.02.tar.bz2

View File

@ -17,7 +17,6 @@ get_graphicdrivers
cd $PKG_BUILD
HOST_CC=$HOST_CC \
OPT_FLAGS="$CFLAGS -D_GNU_SOURCE" \
HOST_OPT_FLAGS="$HOST_CFLAGS" \
X11_INCLUDES= \
DRI_DRIVER_INSTALL_DIR="$XORG_PATH_DRI" \
@ -48,7 +47,12 @@ DRI_DRIVER_SEARCH_DIR="$XORG_PATH_DRI" \
--without-demos \
--disable-gallium \
make
make -C src/glsl CC=$HOST_CC CFLAGS=""
mv src/glsl/apps/compile ./host_compile
make clean
make GLSL_CL="\$(TOP)/host_compile"
make -C progs/xdemos

View File

@ -25,4 +25,4 @@ if [ "$DEVTOOLS" = yes ]; then
cp -P $PKG_BUILD/progs/xdemos/glxdemo $INSTALL/usr/bin
cp -P $PKG_BUILD/progs/xdemos/glxgears $INSTALL/usr/bin
cp -P $PKG_BUILD/progs/xdemos/glxinfo $INSTALL/usr/bin
fi
fi

View File

@ -1,12 +0,0 @@
Index: mesa/src/mesa/x86/glapi_x86.S
===================================================================
--- mesa.orig/src/mesa/x86/glapi_x86.S 2009-06-29 14:43:07.000000000 +0300
+++ mesa/src/mesa/x86/glapi_x86.S 2009-06-29 14:45:38.000000000 +0300
@@ -148,7 +148,6 @@
ALIGNTEXT16
GLOBL GLNAME(gl_dispatch_functions_start)
- HIDDEN(GLNAME(gl_dispatch_functions_start))
GLNAME(gl_dispatch_functions_start):
GL_STUB(NewList, _gloffset_NewList, NewList@8)

View File

@ -1,14 +0,0 @@
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c
index 5233e58..5dded4b 100644
--- a/src/mesa/drivers/dri/intel/intel_screen.c
+++ b/src/mesa/drivers/dri/intel/intel_screen.c
@@ -55,7 +55,7 @@ PUBLIC const char __driConfigOptions[] =
DRI_CONF_BEGIN
DRI_CONF_SECTION_PERFORMANCE
DRI_CONF_FTHROTTLE_MODE(DRI_CONF_FTHROTTLE_IRQS)
- DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_ALWAYS_SYNC)
+ DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_DEF_INTERVAL_0)
/* Options correspond to DRI_CONF_BO_REUSE_DISABLED,
* DRI_CONF_BO_REUSE_ALL
*/

View File

@ -1,18 +0,0 @@
diff -Nurp mesa-7.6.0~git20090817.7c422387/src/mesa/drivers/dri/r300/r300_draw.c mesa-7.6.0~git20090817.7c422387-working/src/mesa/drivers/dri/r300/r300_draw.c
--- mesa-7.6.0~git20090817.7c422387/src/mesa/drivers/dri/r300/r300_draw.c 2009-08-17 07:30:14.000000000 -0700
+++ mesa-7.6.0~git20090817.7c422387-working/src/mesa/drivers/dri/r300/r300_draw.c 2009-08-26 13:38:46.000000000 -0700
@@ -108,12 +108,13 @@ static void r300FixupIndexBuffer(GLconte
#if MESA_BIG_ENDIAN
} else { /* if (mesa_ind_buf->type == GL_UNSIGNED_SHORT) */
+ GLuint size;
GLushort *in = (GLushort *)src_ptr;
size = sizeof(GLushort) * ((mesa_ind_buf->count + 1) & ~1);
radeonAllocDmaRegion(&r300->radeon, &r300->ind_buf.bo, &r300->ind_buf.bo_offet, size, 4);
- assert(r300->ind_buf.bo->ptr != NULL)
+ assert(r300->ind_buf.bo->ptr != NULL);
out = (GLuint *)ADD_POINTERS(r300->ind_buf.bo->ptr, r300->ind_buf.bo_offset);
for (i = 0; i + 1 < mesa_ind_buf->count; i += 2) {

View File

@ -1,26 +0,0 @@
From acfea5c705f383692e661d37c5cd7da2f3db559b Mon Sep 17 00:00:00 2001
From: Eric Anholt <eric@anholt.net>
Date: Wed, 09 Sep 2009 19:35:30 +0000
Subject: i965: Fix relocation delta for WM surfaces.
This was a regression in 0f328c90dbc893e15005f2ab441d309c1c176245.
Bug #23688
Bug #23254
(cherry picked from commit 5604b27b9326ac542069a49ed9650c4b0d3e939a)
---
diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
index 096f743..3dcc592 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
@@ -629,7 +629,7 @@ brw_update_renderbuffer_surface(struct brw_context *brw,
drm_intel_bo_emit_reloc(brw->wm.surf_bo[unit],
offsetof(struct brw_surface_state, ss1),
region_bo,
- surf.ss1.base_addr,
+ surf.ss1.base_addr - region_bo->offset,
I915_GEM_DOMAIN_RENDER,
I915_GEM_DOMAIN_RENDER);
}
--
cgit v0.8.2

View File

@ -1,2 +1,2 @@
ftp://ftp.freedesktop.org/pub/mesa/7.7.1/MesaLib-7.7.1.tar.bz2
ftp://ftp.freedesktop.org/pub/mesa/7.7.1/MesaDemos-7.7.1.tar.bz2
ftp://freedesktop.org/pub/mesa/7.8.1/MesaLib-7.8.1.tar.bz2
ftp://freedesktop.org/pub/mesa/7.8.1/MesaDemos-7.8.1.tar.bz2

View File

@ -1 +1 @@
http://downloads.sourceforge.net/project/glew/glew/1.5.2/glew-1.5.2.tgz
http://downloads.sourceforge.net/project/glew/glew/1.5.3/glew-1.5.3.tgz

View File

@ -1 +1 @@
http://www.ijg.org/files/jpegsrc.v7.tar.gz
http://www.ijg.org/files/jpegsrc.v8a.tar.gz

View File

@ -1,7 +1,7 @@
diff -Naur libpng-1.4.0/pngconf.h libpng-1.4.0.patch/pngconf.h
--- libpng-1.4.0/pngconf.h 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngconf.h 2010-02-07 22:41:01.976857238 +0100
@@ -845,6 +845,10 @@
diff -Naur libpng-1.4.1/pngconf.h libpng-1.4.1.patch/pngconf.h
--- libpng-1.4.1/pngconf.h 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngconf.h 2010-04-16 21:09:43.641352386 +0200
@@ -869,6 +869,10 @@
# define PNG_READ_tRNS_SUPPORTED
# define PNG_tRNS_SUPPORTED
#endif
@ -12,7 +12,7 @@ diff -Naur libpng-1.4.0/pngconf.h libpng-1.4.0.patch/pngconf.h
#ifndef PNG_NO_READ_zTXt
# define PNG_READ_zTXt_SUPPORTED
# define PNG_zTXt_SUPPORTED
@@ -1002,6 +1006,14 @@
@@ -1028,6 +1032,14 @@
# define PNG_TEXT_SUPPORTED
# endif
#endif
@ -27,9 +27,9 @@ diff -Naur libpng-1.4.0/pngconf.h libpng-1.4.0.patch/pngconf.h
#ifdef PNG_WRITE_tIME_SUPPORTED
# ifndef PNG_NO_CONVERT_tIME
diff -Naur libpng-1.4.0/pngget.c libpng-1.4.0.patch/pngget.c
--- libpng-1.4.0/pngget.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngget.c 2010-02-07 22:41:01.955858172 +0100
diff -Naur libpng-1.4.1/pngget.c libpng-1.4.1.patch/pngget.c
--- libpng-1.4.1/pngget.c 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngget.c 2010-04-16 21:09:34.942347204 +0200
@@ -842,6 +842,167 @@
}
#endif
@ -198,10 +198,10 @@ diff -Naur libpng-1.4.0/pngget.c libpng-1.4.0.patch/pngget.c
#ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
png_uint_32 PNGAPI
png_get_unknown_chunks(png_structp png_ptr, png_infop info_ptr,
diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
--- libpng-1.4.0/png.h 2010-01-03 06:05:35.000000000 +0100
+++ libpng-1.4.0.patch/png.h 2010-02-07 22:41:01.969858760 +0100
@@ -861,6 +861,19 @@
diff -Naur libpng-1.4.1/png.h libpng-1.4.1.patch/png.h
--- libpng-1.4.1/png.h 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/png.h 2010-04-16 21:09:36.985444853 +0200
@@ -888,6 +888,19 @@
png_fixed_point int_y_blue PNG_DEPSTRUCT;
#endif
@ -221,7 +221,7 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
} png_info;
typedef png_info FAR * png_infop;
@@ -958,6 +971,10 @@
@@ -985,6 +998,10 @@
#define PNG_INFO_sPLT 0x2000 /* ESR, 1.0.6 */
#define PNG_INFO_sCAL 0x4000 /* ESR, 1.0.6 */
#define PNG_INFO_IDAT 0x8000L /* ESR, 1.0.6 */
@ -232,7 +232,7 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
/* This is used for the transformation routines, as some of them
* change these values for the row. It also should enable using
@@ -998,6 +1015,10 @@
@@ -1026,6 +1043,10 @@
typedef void (PNGAPI *png_progressive_end_ptr) PNGARG((png_structp, png_infop));
typedef void (PNGAPI *png_progressive_row_ptr) PNGARG((png_structp, png_bytep,
png_uint_32, int));
@ -243,7 +243,7 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
#endif
#if defined(PNG_READ_USER_TRANSFORM_SUPPORTED) || \
@@ -1320,6 +1341,39 @@
@@ -1445,6 +1466,36 @@
png_uint_32 user_chunk_cache_max PNG_DEPSTRUCT;
#endif
@ -267,9 +267,6 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
+ png_uint_32 num_frames_written;
+#endif
+
+/* For png_struct.apng_flags: */
+#define PNG_FIRST_FRAME_HIDDEN 0x0001
+
+/* dispose_op flags from inside fcTL */
+#define PNG_DISPOSE_OP_NONE 0x00
+#define PNG_DISPOSE_OP_BACKGROUND 0x01
@ -283,7 +280,7 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
/* New member added in libpng-1.0.25 and 1.2.17 */
#ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
/* Storage for unknown chunk that the library doesn't recognize. */
@@ -1648,6 +1702,18 @@
@@ -1773,6 +1824,18 @@
extern PNG_EXPORT(void,png_write_image) PNGARG((png_structp png_ptr,
png_bytepp image));
@ -302,7 +299,7 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
/* Write the end of the PNG file. */
extern PNG_EXPORT(void,png_write_end) PNGARG((png_structp png_ptr,
png_infop info_ptr));
@@ -1891,6 +1957,11 @@
@@ -2017,6 +2080,11 @@
png_voidp progressive_ptr,
png_progressive_info_ptr info_fn, png_progressive_row_ptr row_fn,
png_progressive_end_ptr end_fn));
@ -314,7 +311,7 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
/* Returns the user pointer associated with the push read functions */
extern PNG_EXPORT(png_voidp,png_get_progressive_ptr)
@@ -2317,6 +2388,59 @@
@@ -2443,6 +2511,53 @@
#endif
#endif /* PNG_sCAL_SUPPORTED || PNG_WRITE_sCAL_SUPPORTED */
@ -338,12 +335,6 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
+ png_uint_32 height, png_uint_32 x_offset, png_uint_32 y_offset,
+ png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
+ png_byte blend_op));
+extern PNG_EXPORT(void,png_ensure_fcTL_is_valid)
+ PNGARG((png_structp png_ptr,
+ png_uint_32 width, png_uint_32 height,
+ png_uint_32 x_offset, png_uint_32 y_offset,
+ png_uint_16 delay_num, png_uint_16 delay_den,
+ png_byte dispose_op, png_byte blend_op));
+extern PNG_EXPORT(png_uint_32,png_get_next_frame_width)
+ PNGARG((png_structp png_ptr, png_infop info_ptr));
+extern PNG_EXPORT(png_uint_32,png_get_next_frame_height)
@ -374,9 +365,9 @@ diff -Naur libpng-1.4.0/png.h libpng-1.4.0.patch/png.h
#ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
/* Provide a list of chunks and how they are to be handled, if the built-in
handling or default unknown chunk handling is not desired. Any chunks not
diff -Naur libpng-1.4.0/pngpread.c libpng-1.4.0.patch/pngpread.c
--- libpng-1.4.0/pngpread.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngpread.c 2010-02-07 22:41:01.978856784 +0100
diff -Naur libpng-1.4.1/pngpread.c libpng-1.4.1.patch/pngpread.c
--- libpng-1.4.1/pngpread.c 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngpread.c 2010-04-16 21:09:45.794352317 +0200
@@ -205,6 +205,11 @@
#ifdef PNG_READ_zTXt_SUPPORTED
PNG_zTXt;
@ -503,7 +494,7 @@ diff -Naur libpng-1.4.0/pngpread.c libpng-1.4.0.patch/pngpread.c
png_ptr->idat_size = png_ptr->push_length;
png_ptr->mode |= PNG_HAVE_IDAT;
png_ptr->process_mode = PNG_READ_IDAT_MODE;
@@ -555,6 +660,38 @@
@@ -557,6 +662,38 @@
}
#endif
@ -542,7 +533,7 @@ diff -Naur libpng-1.4.0/pngpread.c libpng-1.4.0.patch/pngpread.c
else
{
if (png_ptr->push_length + 4 > png_ptr->buffer_size)
@@ -729,11 +866,15 @@
@@ -736,11 +873,15 @@
png_push_read_IDAT(png_structp png_ptr)
{
PNG_IDAT;
@ -559,7 +550,7 @@ diff -Naur libpng-1.4.0/pngpread.c libpng-1.4.0.patch/pngpread.c
{
png_push_save_buffer(png_ptr);
return;
@@ -745,15 +886,62 @@
@@ -752,15 +893,62 @@
png_crc_read(png_ptr, png_ptr->chunk_name, 4);
png_ptr->mode |= PNG_HAVE_CHUNK_HEADER;
@ -623,7 +614,7 @@ diff -Naur libpng-1.4.0/pngpread.c libpng-1.4.0.patch/pngpread.c
}
if (png_ptr->idat_size && png_ptr->save_buffer_size)
{
@@ -1710,6 +1898,17 @@
@@ -1716,6 +1904,17 @@
png_set_read_fn(png_ptr, progressive_ptr, png_push_fill_buffer);
}
@ -641,9 +632,9 @@ diff -Naur libpng-1.4.0/pngpread.c libpng-1.4.0.patch/pngpread.c
png_voidp PNGAPI
png_get_progressive_ptr(png_structp png_ptr)
{
diff -Naur libpng-1.4.0/pngpriv.h libpng-1.4.0.patch/pngpriv.h
--- libpng-1.4.0/pngpriv.h 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngpriv.h 2010-02-07 22:41:01.971859004 +0100
diff -Naur libpng-1.4.1/pngpriv.h libpng-1.4.1.patch/pngpriv.h
--- libpng-1.4.1/pngpriv.h 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngpriv.h 2010-04-16 21:09:39.167350934 +0200
@@ -98,6 +98,10 @@
#define PNG_BACKGROUND_IS_GRAY 0x800
#define PNG_HAVE_PNG_SIGNATURE 0x1000
@ -655,7 +646,7 @@ diff -Naur libpng-1.4.0/pngpriv.h libpng-1.4.0.patch/pngpriv.h
/* Flags for the transformations the PNG library does on the image data */
#define PNG_BGR 0x0001
@@ -231,6 +235,11 @@
@@ -231,6 +235,14 @@
#define PNG_tIME PNG_CONST png_byte png_tIME[5] = {116, 73, 77, 69, '\0'}
#define PNG_tRNS PNG_CONST png_byte png_tRNS[5] = {116, 82, 78, 83, '\0'}
#define PNG_zTXt PNG_CONST png_byte png_zTXt[5] = {122, 84, 88, 116, '\0'}
@ -663,11 +654,14 @@ diff -Naur libpng-1.4.0/pngpriv.h libpng-1.4.0.patch/pngpriv.h
+#define PNG_acTL PNG_CONST png_byte png_acTL[5] = { 97, 99, 84, 76, '\0'}
+#define PNG_fcTL PNG_CONST png_byte png_fcTL[5] = {102, 99, 84, 76, '\0'}
+#define PNG_fdAT PNG_CONST png_byte png_fdAT[5] = {102, 100, 65, 84, '\0'}
+
+/* For png_struct.apng_flags: */
+#define PNG_FIRST_FRAME_HIDDEN 0x0001
+#endif
/* Inhibit C++ name-mangling for libpng functions but not for system calls. */
@@ -468,6 +477,17 @@
@@ -468,6 +480,17 @@
#endif
#endif
@ -685,7 +679,7 @@ diff -Naur libpng-1.4.0/pngpriv.h libpng-1.4.0.patch/pngpriv.h
/* Called when finished processing a row of data */
PNG_EXTERN void png_write_finish_row PNGARG((png_structp png_ptr));
@@ -520,6 +540,20 @@
@@ -520,6 +543,20 @@
PNG_EXTERN void png_read_transform_info PNGARG((png_structp png_ptr,
png_infop info_ptr));
@ -706,7 +700,7 @@ diff -Naur libpng-1.4.0/pngpriv.h libpng-1.4.0.patch/pngpriv.h
/* These are the functions that do the transformations */
#ifdef PNG_READ_FILLER_SUPPORTED
PNG_EXTERN void png_do_read_filler PNGARG((png_row_infop row_info,
@@ -735,6 +769,18 @@
@@ -736,6 +773,25 @@
png_uint_32 length));
#endif
@ -721,14 +715,21 @@ diff -Naur libpng-1.4.0/pngpriv.h libpng-1.4.0.patch/pngpriv.h
+PNG_EXTERN void png_ensure_sequence_number PNGARG((png_structp png_ptr,
+ png_uint_32 length));
+#endif
+#ifdef PNG_APNG_SUPPORTED
+PNG_EXTERN void png_ensure_fcTL_is_valid PNGARG((png_structp png_ptr,
+ png_uint_32 width, png_uint_32 height,
+ png_uint_32 x_offset, png_uint_32 y_offset,
+ png_uint_16 delay_num, png_uint_16 delay_den,
+ png_byte dispose_op, png_byte blend_op));
+#endif
+
PNG_EXTERN void png_handle_unknown PNGARG((png_structp png_ptr,
png_infop info_ptr, png_uint_32 length));
diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
--- libpng-1.4.0/pngread.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngread.c 2010-02-07 22:41:01.522983852 +0100
@@ -292,6 +292,11 @@
diff -Naur libpng-1.4.1/pngread.c libpng-1.4.1.patch/pngread.c
--- libpng-1.4.1/pngread.c 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngread.c 2010-04-16 21:09:26.430319940 +0200
@@ -300,6 +300,11 @@
#ifdef PNG_READ_zTXt_SUPPORTED
PNG_zTXt;
#endif
@ -740,7 +741,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
png_uint_32 length = png_read_chunk_header(png_ptr);
PNG_CONST png_bytep chunk_name = png_ptr->chunk_name;
@@ -335,6 +340,9 @@
@@ -343,6 +348,9 @@
!(png_ptr->mode & PNG_HAVE_PLTE))
png_error(png_ptr, "Missing PLTE before IDAT");
@ -750,7 +751,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
png_ptr->idat_size = length;
png_ptr->mode |= PNG_HAVE_IDAT;
break;
@@ -407,12 +415,95 @@
@@ -415,12 +423,95 @@
else if (!png_memcmp(chunk_name, png_iTXt, 4))
png_handle_iTXt(png_ptr, info_ptr, length);
#endif
@ -846,7 +847,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
/* Optional call to update the users info_ptr structure */
void PNGAPI
png_read_update_info(png_structp png_ptr, png_infop info_ptr)
@@ -453,6 +544,10 @@
@@ -461,6 +552,10 @@
png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row)
{
PNG_IDAT;
@ -857,7 +858,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
PNG_CONST int png_pass_dsp_mask[7] = {0xff, 0x0f, 0xff, 0x33, 0xff, 0x55,
0xff};
PNG_CONST int png_pass_mask[7] = {0x80, 0x08, 0x88, 0x22, 0xaa, 0x55, 0xff};
@@ -585,13 +680,39 @@
@@ -596,13 +691,39 @@
{
if (!(png_ptr->zstream.avail_in))
{
@ -899,7 +900,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
}
png_ptr->zstream.avail_in = (uInt)png_ptr->zbuf_size;
png_ptr->zstream.next_in = png_ptr->zbuf;
@@ -609,6 +730,9 @@
@@ -620,6 +741,9 @@
png_benign_error(png_ptr, "Extra compressed data");
png_ptr->mode |= PNG_AFTER_IDAT;
png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED;
@ -909,7 +910,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
break;
}
if (ret != Z_OK)
@@ -864,6 +988,11 @@
@@ -875,6 +999,11 @@
#ifdef PNG_READ_zTXt_SUPPORTED
PNG_zTXt;
#endif
@ -921,7 +922,7 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
png_uint_32 length = png_read_chunk_header(png_ptr);
PNG_CONST png_bytep chunk_name = png_ptr->chunk_name;
@@ -963,6 +1092,14 @@
@@ -974,6 +1103,14 @@
else if (!png_memcmp(chunk_name, png_iTXt, 4))
png_handle_iTXt(png_ptr, info_ptr, length);
#endif
@ -936,10 +937,10 @@ diff -Naur libpng-1.4.0/pngread.c libpng-1.4.0.patch/pngread.c
else
png_handle_unknown(png_ptr, info_ptr, length);
} while (!(png_ptr->mode & PNG_HAVE_IEND));
diff -Naur libpng-1.4.0/pngrtran.c libpng-1.4.0.patch/pngrtran.c
--- libpng-1.4.0/pngrtran.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngrtran.c 2010-02-07 22:41:01.997856654 +0100
@@ -1320,7 +1320,7 @@
diff -Naur libpng-1.4.1/pngrtran.c libpng-1.4.1.patch/pngrtran.c
--- libpng-1.4.1/pngrtran.c 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngrtran.c 2010-04-16 21:09:53.311444698 +0200
@@ -1325,7 +1325,7 @@
* pixels. This check added to libpng-1.2.19
*/
#if (PNG_WARN_UNINITIALIZED_ROW==1)
@ -948,10 +949,10 @@ diff -Naur libpng-1.4.0/pngrtran.c libpng-1.4.0.patch/pngrtran.c
#else
png_warning(png_ptr, "Uninitialized row");
#endif
diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
--- libpng-1.4.0/pngrutil.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngrutil.c 2010-02-07 22:41:01.986856711 +0100
@@ -423,6 +423,11 @@
diff -Naur libpng-1.4.1/pngrutil.c libpng-1.4.1.patch/pngrutil.c
--- libpng-1.4.1/pngrutil.c 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngrutil.c 2010-04-16 21:09:49.604444890 +0200
@@ -434,6 +434,11 @@
filter_type = buf[11];
interlace_type = buf[12];
@ -963,7 +964,7 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
/* Set internal variables */
png_ptr->width = width;
png_ptr->height = height;
@@ -2294,6 +2299,168 @@
@@ -2318,6 +2323,172 @@
}
#endif
@ -1025,9 +1026,11 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
+ png_uint_16 delay_den;
+ png_byte dispose_op;
+ png_byte blend_op;
+
+
+ png_debug(1, "in png_handle_fcTL");
+
+
+ png_ensure_sequence_number(png_ptr, length);
+
+ if (!(png_ptr->mode & PNG_HAVE_IHDR))
+ {
+ png_error(png_ptr, "Missing IHDR before fcTL");
@ -1038,27 +1041,25 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
+ * but correct. PNG_HAVE_IDAT is unset before the frame head is read
+ * i can't think of a better message */
+ png_warning(png_ptr, "Invalid fcTL after IDAT skipped");
+ png_crc_finish(png_ptr, length);
+ png_crc_finish(png_ptr, length-4);
+ return;
+ }
+ else if (png_ptr->mode & PNG_HAVE_fcTL)
+ {
+ png_warning(png_ptr, "Duplicate fcTL within one frame skipped");
+ png_crc_finish(png_ptr, length);
+ png_crc_finish(png_ptr, length-4);
+ return;
+ }
+ else if (length != 26)
+ {
+ png_warning(png_ptr, "fcTL with invalid length skipped");
+ png_crc_finish(png_ptr, length);
+ png_crc_finish(png_ptr, length-4);
+ return;
+ }
+
+ png_ensure_sequence_number(png_ptr, length);
+
+
+ png_crc_read(png_ptr, data, 22);
+ png_crc_finish(png_ptr, 0);
+
+
+ width = png_get_uint_31(png_ptr, data);
+ height = png_get_uint_31(png_ptr, data + 4);
+ x_offset = png_get_uint_31(png_ptr, data + 8);
@ -1067,21 +1068,25 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
+ delay_den = png_get_uint_16(data + 18);
+ dispose_op = data[20];
+ blend_op = data[21];
+
+
+ if (png_ptr->num_frames_read == 0 && (x_offset != 0 || y_offset != 0))
+ png_error(png_ptr, "fcTL for the first frame must have zero offset");
+ if (png_ptr->num_frames_read == 0 &&
+ (width != info_ptr->width || height != info_ptr->height))
+ png_error(png_ptr, "size in first frame's fcTL must match "
+ "the size in IHDR");
+
+ /* the set function will do more error checking */
+ png_set_next_frame_fcTL(png_ptr, info_ptr, width, height,
+ x_offset, y_offset, delay_num, delay_den,
+ dispose_op, blend_op);
+
+ png_read_reinit(png_ptr, info_ptr);
+
+
+ if (info_ptr != NULL)
+ {
+ if (png_ptr->num_frames_read == 0 &&
+ (width != info_ptr->width || height != info_ptr->height))
+ png_error(png_ptr, "size in first frame's fcTL must match "
+ "the size in IHDR");
+
+ /* the set function will do more error checking */
+ png_set_next_frame_fcTL(png_ptr, info_ptr, width, height,
+ x_offset, y_offset, delay_num, delay_den,
+ dispose_op, blend_op);
+
+ png_read_reinit(png_ptr, info_ptr);
+ }
+
+ png_ptr->mode |= PNG_HAVE_fcTL;
+}
+
@ -1132,7 +1137,7 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
/* This function is called when we haven't found a handler for a
chunk. If there isn't a problem with the chunk itself (ie bad
chunk name, CRC, or a critical chunk), the chunk is silently ignored
@@ -3333,4 +3500,82 @@
@@ -3353,4 +3524,73 @@
png_ptr->flags |= PNG_FLAG_ROW_INIT;
}
@ -1176,7 +1181,6 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
+
+ /* offset to next interlace block in the y direction */
+ const int FARDATA png_pass_yinc[] = {8, 8, 8, 4, 4, 2, 2};
+ png_uint_32 row_bytes;
+
+ if (png_ptr->interlaced)
+ {
@ -1190,34 +1194,26 @@ diff -Naur libpng-1.4.0/pngrutil.c libpng-1.4.0.patch/pngrutil.c
+ png_pass_inc[png_ptr->pass] - 1 -
+ png_pass_start[png_ptr->pass]) /
+ png_pass_inc[png_ptr->pass];
+
+ row_bytes = PNG_ROWBYTES(png_ptr->pixel_depth,png_ptr->iwidth) + 1;
+
+ png_ptr->irowbytes = (png_size_t)row_bytes;
+ if((png_uint_32)png_ptr->irowbytes != row_bytes)
+ png_error(png_ptr, "png_progressive_read_reset(): Rowbytes "
+ "overflow");
+ }
+ else
+ {
+ png_ptr->num_rows = png_ptr->height;
+ png_ptr->iwidth = png_ptr->width;
+ png_ptr->irowbytes = png_ptr->rowbytes + 1;
+ }
+
+ png_ptr->flags &= ~PNG_FLAG_ZLIB_FINISHED;
+ if (inflateReset(&(png_ptr->zstream)) != Z_OK)
+ png_error(png_ptr, "inflateReset failed");
+ png_ptr->zstream.avail_in = 0;
+ png_ptr->zstream.next_in = 0;
+ png_ptr->zstream.next_out = png_ptr->row_buf;
+ png_ptr->zstream.avail_out = (uInt)png_ptr->irowbytes;
+ png_ptr->zstream.avail_out = (uInt)PNG_ROWBYTES(png_ptr->pixel_depth,
+ png_ptr->iwidth) + 1;
+}
+#endif /* PNG_READ_APNG_SUPPORTED */
#endif /* PNG_READ_SUPPORTED */
diff -Naur libpng-1.4.0/pngset.c libpng-1.4.0.patch/pngset.c
--- libpng-1.4.0/pngset.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngset.c 2010-02-07 22:41:01.979856906 +0100
diff -Naur libpng-1.4.1/pngset.c libpng-1.4.1.patch/pngset.c
--- libpng-1.4.1/pngset.c 2010-02-25 12:38:29.000000000 +0100
+++ libpng-1.4.1.patch/pngset.c 2010-04-16 21:09:47.875332919 +0200
@@ -260,6 +260,11 @@
info_ptr->rowbytes = 0;
else
@ -1373,10 +1369,10 @@ diff -Naur libpng-1.4.0/pngset.c libpng-1.4.0.patch/pngset.c
#ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
void PNGAPI
png_set_unknown_chunks(png_structp png_ptr,
diff -Naur libpng-1.4.0/pngwrite.c libpng-1.4.0.patch/pngwrite.c
--- libpng-1.4.0/pngwrite.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngwrite.c 2010-02-07 22:41:01.974858880 +0100
@@ -56,6 +56,10 @@
diff -Naur libpng-1.4.1/pngwrite.c libpng-1.4.1.patch/pngwrite.c
--- libpng-1.4.1/pngwrite.c 2010-02-25 12:38:30.000000000 +0100
+++ libpng-1.4.1.patch/pngwrite.c 2010-04-16 21:09:40.967447171 +0200
@@ -57,6 +57,10 @@
/* The rest of these check to see if the valid field has the appropriate
* flag set, and if it does, writes the chunk.
*/
@ -1387,7 +1383,7 @@ diff -Naur libpng-1.4.0/pngwrite.c libpng-1.4.0.patch/pngwrite.c
#ifdef PNG_WRITE_gAMA_SUPPORTED
if (info_ptr->valid & PNG_INFO_gAMA)
{
@@ -318,6 +322,10 @@
@@ -319,6 +323,10 @@
return;
if (!(png_ptr->mode & PNG_HAVE_IDAT))
png_error(png_ptr, "No IDATs written into file");
@ -1398,7 +1394,7 @@ diff -Naur libpng-1.4.0/pngwrite.c libpng-1.4.0.patch/pngwrite.c
/* See if user wants us to write information chunks */
if (info_ptr != NULL)
@@ -1451,4 +1459,39 @@
@@ -1454,4 +1462,39 @@
params = params;
}
#endif
@ -1438,10 +1434,10 @@ diff -Naur libpng-1.4.0/pngwrite.c libpng-1.4.0.patch/pngwrite.c
+#endif /* PNG_WRITE_APNG_SUPPORTED */
+
#endif /* PNG_WRITE_SUPPORTED */
diff -Naur libpng-1.4.0/pngwutil.c libpng-1.4.0.patch/pngwutil.c
--- libpng-1.4.0/pngwutil.c 2010-01-03 06:05:36.000000000 +0100
+++ libpng-1.4.0.patch/pngwutil.c 2010-02-07 22:41:01.994856708 +0100
@@ -538,6 +538,11 @@
diff -Naur libpng-1.4.1/pngwutil.c libpng-1.4.1.patch/pngwutil.c
--- libpng-1.4.1/pngwutil.c 2010-02-25 12:38:30.000000000 +0100
+++ libpng-1.4.1.patch/pngwutil.c 2010-04-16 21:09:51.260444582 +0200
@@ -539,6 +539,11 @@
/* Write the chunk */
png_write_chunk(png_ptr, (png_bytep)png_IHDR, buf, (png_size_t)13);
@ -1453,7 +1449,7 @@ diff -Naur libpng-1.4.0/pngwutil.c libpng-1.4.0.patch/pngwutil.c
/* Initialize zlib with PNG info */
png_ptr->zstream.zalloc = png_zalloc;
png_ptr->zstream.zfree = png_zfree;
@@ -658,6 +663,9 @@
@@ -661,6 +666,9 @@
png_write_IDAT(png_structp png_ptr, png_bytep data, png_size_t length)
{
PNG_IDAT;
@ -1463,7 +1459,7 @@ diff -Naur libpng-1.4.0/pngwutil.c libpng-1.4.0.patch/pngwutil.c
png_debug(1, "in png_write_IDAT");
@@ -702,7 +710,28 @@
@@ -705,7 +713,28 @@
"Invalid zlib compression method or flags in IDAT");
}
@ -1492,7 +1488,7 @@ diff -Naur libpng-1.4.0/pngwutil.c libpng-1.4.0.patch/pngwutil.c
png_ptr->mode |= PNG_HAVE_IDAT;
}
@@ -1709,6 +1738,66 @@
@@ -1712,6 +1741,66 @@
}
#endif
@ -1559,7 +1555,7 @@ diff -Naur libpng-1.4.0/pngwutil.c libpng-1.4.0.patch/pngwutil.c
/* Initializes the row writing capability of libpng */
void /* PRIVATE */
png_write_start_row(png_structp png_ptr)
@@ -2110,8 +2199,8 @@
@@ -2113,8 +2202,8 @@
#ifndef PNG_WRITE_WEIGHTED_FILTER_SUPPORTED
if (png_ptr->row_number == 0 && filter_to_do == PNG_ALL_FILTERS)
{
@ -1570,7 +1566,7 @@ diff -Naur libpng-1.4.0/pngwutil.c libpng-1.4.0.patch/pngwutil.c
}
#endif
@@ -2780,4 +2869,39 @@
@@ -2783,4 +2872,39 @@
}
#endif
}

View File

@ -1 +1 @@
http://downloads.sourceforge.net/libpng/libpng-1.4.0.tar.bz2
http://downloads.sourceforge.net/libpng/libpng-1.4.1.tar.bz2

View File

@ -1 +1 @@
ftp://ftp.remotesensing.org/pub/libtiff/tiff-4.0.0beta4.tar.gz
http://download.osgeo.org/libtiff/tiff-4.0.0beta5.tar.gz

View File

@ -54,17 +54,20 @@ case "$2" in
$SCRIPTS/install gcc-final
$SCRIPTS/install linux $2
$SCRIPTS/install busybox
$SCRIPTS/install plymouth-lite
$SCRIPTS/install util-linux-ng
$SCRIPTS/install ureadahead
echo $TARGET_ARCH > $INSTALL/etc/arch
echo "OpenELEC" > $INSTALL/etc/distribution
echo "$PROJECT.$TARGET_ARCH" > $INSTALL/etc/arch
echo "$OPENELEC_VERSION" > $INSTALL/etc/version
echo "OpenELEC.tv - Date of build: $BUILD_DATE Build: $BZR_BUILD" > $INSTALL/etc/openelec-release
echo "OpenELEC.tv - Date of build: $BUILD_DATE Build: $BZR_BUILD" > $INSTALL/etc/lsb-release
# Network support
[ "$NETWORK" = yes ] && $SCRIPTS/install network
# Transmission BitTorrent support
[ "$TRANSMISSION" = yes ] && $SCRIPTS/install transmission
# Graphic support
[ ! "$DISPLAYSERVER" = no ] && $SCRIPTS/install $DISPLAYSERVER

View File

@ -1 +1 @@
http://www.intellinuxwireless.org/iwlwifi/downloads/iwlwifi-6000-ucode-9.176.4.1.tgz
http://www.intellinuxwireless.org/iwlwifi/downloads/iwlwifi-6000-ucode-9.193.4.1.tgz

View File

@ -2,3 +2,5 @@
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
coretemp

View File

@ -0,0 +1,51 @@
Copyright (C) 2009, 2010 Advanced Micro Devices, Inc. All rights reserved.
REDISTRIBUTION: Permission is hereby granted, free of any license fees,
to any person obtaining a copy of this microcode (the "Software"), to
install, reproduce, copy and distribute copies, in binary form only, of
the Software and to permit persons to whom the Software is provided to
do the same, provided that the following conditions are met:
No reverse engineering, decompilation, or disassembly of this Software
is permitted.
Redistributions must reproduce the above copyright notice, this
permission notice, and the following disclaimers and notices in the
Software documentation and/or other materials provided with the
Software.
DISCLAIMER: THE USE OF THE SOFTWARE IS AT YOUR SOLE RISK. THE SOFTWARE
IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND AND COPYRIGHT
HOLDER AND ITS LICENSORS EXPRESSLY DISCLAIM ALL WARRANTIES, EXPRESS AND
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
COPYRIGHT HOLDER AND ITS LICENSORS DO NOT WARRANT THAT THE SOFTWARE WILL
MEET YOUR REQUIREMENTS, OR THAT THE OPERATION OF THE SOFTWARE WILL BE
UNINTERRUPTED OR ERROR-FREE. THE ENTIRE RISK ASSOCIATED WITH THE USE OF
THE SOFTWARE IS ASSUMED BY YOU. FURTHERMORE, COPYRIGHT HOLDER AND ITS
LICENSORS DO NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE
OR THE RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS,
ACCURACY, RELIABILITY, CURRENTNESS, OR OTHERWISE.
DISCLAIMER: UNDER NO CIRCUMSTANCES INCLUDING NEGLIGENCE, SHALL COPYRIGHT
HOLDER AND ITS LICENSORS OR ITS DIRECTORS, OFFICERS, EMPLOYEES OR AGENTS
("AUTHORIZED REPRESENTATIVES") BE LIABLE FOR ANY INCIDENTAL, INDIRECT,
SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS
PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, AND THE
LIKE) ARISING OUT OF THE USE, MISUSE OR INABILITY TO USE THE SOFTWARE,
BREACH OR DEFAULT, INCLUDING THOSE ARISING FROM INFRINGEMENT OR ALLEGED
INFRINGEMENT OF ANY PATENT, TRADEMARK, COPYRIGHT OR OTHER INTELLECTUAL
PROPERTY RIGHT EVEN IF COPYRIGHT HOLDER AND ITS AUTHORIZED
REPRESENTATIVES HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN
NO EVENT SHALL COPYRIGHT HOLDER OR ITS AUTHORIZED REPRESENTATIVES TOTAL
LIABILITY FOR ALL DAMAGES, LOSSES, AND CAUSES OF ACTION (WHETHER IN
CONTRACT, TORT (INCLUDING NEGLIGENCE) OR OTHERWISE) EXCEED THE AMOUNT OF
US$10.
Notice: The Software is subject to United States export laws and
regulations. You agree to comply with all domestic and international
export laws and regulations that apply to the Software, including but
not limited to the Export Administration Regulations administered by the
U.S. Department of Commerce and International Traffic in Arm Regulations
administered by the U.S. Department of State. These laws include
restrictions on destinations, end users and end use.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
http://git.kernel.org/?p=linux/kernel/git/dwmw2/linux-firmware.git;a=summary

View File

@ -0,0 +1,16 @@
#
# load modules
#
# runlevels: openelec, textmode
progress "loading kernel modules"
(
IFS='
'
for module in `cat /etc/modules|grep "^[^#]"`; do
eval "modprobe $module" >/dev/null 2>&1
done
exit 0
)&

View File

@ -24,6 +24,9 @@ mkdir -p $INSTALL/lib/firmware
[ -d $PKG_BUILD/modules/lib/firmware ] && \
cp -rf $PKG_BUILD/modules/lib/firmware/* $INSTALL/lib/firmware || true
mkdir -p $INSTALL/etc
cp $PKG_DIR/config/modules $INSTALL/etc
mkdir -p $INSTALL/etc/modprobe.d
$SCRIPTS/install firmware
$SCRIPTS/install linux-firmware

View File

@ -0,0 +1,155 @@
From ee9c0b591bf16ca11bb354bc68dae75a903f3a64 Mon Sep 17 00:00:00 2001
From: Scott James Remnant <scott@ubuntu.com>
Date: Tue, 27 Oct 2009 10:05:32 +0000
Subject: [PATCH] trace: add trace events for open(), exec() and uselib()
This patch uses TRACE_EVENT to add tracepoints for the open(),
exec() and uselib() syscalls so that ureadahead can cheaply trace
the boot sequence to determine what to read to speed up the next.
It's not upstream because it will need to be rebased onto the syscall
trace events whenever that gets merged, and is a stop-gap.
Signed-off-by: Scott James Remnant <scott@ubuntu.com>
---
fs/exec.c | 8 +++++
fs/open.c | 4 ++
include/trace/events/fs.h | 71 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 83 insertions(+), 0 deletions(-)
create mode 100644 include/trace/events/fs.h
diff --git a/fs/exec.c b/fs/exec.c
index 172ceb6..c936999 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -56,6 +56,8 @@
#include <linux/fsnotify.h>
#include <linux/fs_struct.h>
+#include <trace/events/fs.h>
+
#include <asm/uaccess.h>
#include <asm/mmu_context.h>
#include <asm/tlb.h>
@@ -130,6 +132,10 @@ SYSCALL_DEFINE1(uselib, const char __user *, library)
fsnotify_open(file->f_path.dentry);
+ tmp = getname(library);
+ trace_uselib(tmp);
+ putname(library);
+
error = -ENOEXEC;
if(file->f_op) {
struct linux_binfmt * fmt;
@@ -665,6 +671,8 @@ struct file *open_exec(const char *name)
fsnotify_open(file->f_path.dentry);
+ trace_open_exec(name);
+
err = deny_write_access(file);
if (err)
goto exit;
diff --git a/fs/open.c b/fs/open.c
index 04b9aad..41c87f3 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -31,6 +31,9 @@
#include <linux/falloc.h>
#include <linux/fs_struct.h>
+#define CREATE_TRACE_POINTS
+#include <trace/events/fs.h>
+
int vfs_statfs(struct dentry *dentry, struct kstatfs *buf)
{
int retval = -ENODEV;
@@ -1041,6 +1044,7 @@ long do_sys_open(int dfd, const char __user *filename, int flags, int mode)
} else {
fsnotify_open(f->f_path.dentry);
fd_install(fd, f);
+ trace_do_sys_open(tmp, flags, mode);
}
}
putname(tmp);
diff --git a/include/trace/events/fs.h b/include/trace/events/fs.h
new file mode 100644
index 0000000..e967c55
--- /dev/null
+++ b/include/trace/events/fs.h
@@ -0,0 +1,71 @@
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM fs
+
+#if !defined(_TRACE_FS_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_FS_H
+
+#include <linux/fs.h>
+#include <linux/tracepoint.h>
+
+TRACE_EVENT(do_sys_open,
+
+ TP_PROTO(char *filename, int flags, int mode),
+
+ TP_ARGS(filename, flags, mode),
+
+ TP_STRUCT__entry(
+ __string( filename, filename )
+ __field( int, flags )
+ __field( int, mode )
+ ),
+
+ TP_fast_assign(
+ __assign_str(filename, filename);
+ __entry->flags = flags;
+ __entry->mode = mode;
+ ),
+
+ TP_printk("\"%s\" %x %o",
+ __get_str(filename), __entry->flags, __entry->mode)
+);
+
+TRACE_EVENT(uselib,
+
+ TP_PROTO(char *filename),
+
+ TP_ARGS(filename),
+
+ TP_STRUCT__entry(
+ __string( filename, filename )
+ ),
+
+ TP_fast_assign(
+ __assign_str(filename, filename);
+ ),
+
+ TP_printk("\"%s\"",
+ __get_str(filename))
+);
+
+TRACE_EVENT(open_exec,
+
+ TP_PROTO(char *filename),
+
+ TP_ARGS(filename),
+
+ TP_STRUCT__entry(
+ __string( filename, filename )
+ ),
+
+ TP_fast_assign(
+ __assign_str(filename, filename);
+ ),
+
+ TP_printk("\"%s\"",
+ __get_str(filename))
+);
+
+#endif /* _TRACE_FS_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>
--
1.6.3.3

View File

@ -1,6 +1,6 @@
diff -Naur linux-2.6.33.2/drivers/input/Kconfig linux-2.6.33.2.patch/drivers/input/Kconfig
--- linux-2.6.33.2/drivers/input/Kconfig 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/input/Kconfig 2010-04-05 14:03:57.390481468 +0200
+++ linux-2.6.33.2.patch/drivers/input/Kconfig 2010-04-07 22:05:13.550124631 +0200
@@ -183,6 +183,8 @@
source "drivers/input/touchscreen/Kconfig"
@ -12,7 +12,7 @@ diff -Naur linux-2.6.33.2/drivers/input/Kconfig linux-2.6.33.2.patch/drivers/inp
endif
diff -Naur linux-2.6.33.2/drivers/input/lirc/Kconfig linux-2.6.33.2.patch/drivers/input/lirc/Kconfig
--- linux-2.6.33.2/drivers/input/lirc/Kconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/Kconfig 2010-04-05 14:03:57.391483335 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/Kconfig 2010-04-07 22:05:13.551124752 +0200
@@ -0,0 +1,116 @@
+#
+# LIRC driver(s) configuration
@ -132,7 +132,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/Kconfig linux-2.6.33.2.patch/driver
+endif
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_bt829.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_bt829.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_bt829.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_bt829.c 2010-04-05 14:03:57.393483507 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_bt829.c 2010-04-06 23:47:20.000000000 +0200
@@ -0,0 +1,383 @@
+/*
+ * Remote control driver for the TV-card based on bt829
@ -519,8 +519,8 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_bt829.c linux-2.6.33.2.patch/d
+MODULE_PARM_DESC(debug, "Debug enabled or not");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_dev.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_dev.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_dev.c 2010-04-05 14:03:57.396482822 +0200
@@ -0,0 +1,749 @@
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_dev.c 2010-04-07 21:56:14.000000000 +0200
@@ -0,0 +1,850 @@
+/*
+ * LIRC base driver
+ *
@ -558,6 +558,10 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.c linux-2.6.33.2.patch/dri
+#include <linux/bitops.h>
+#include <linux/device.h>
+#include <linux/cdev.h>
+#include <linux/smp_lock.h>
+#ifdef CONFIG_COMPAT
+#include <linux/compat.h>
+#endif
+
+#include <linux/lirc.h>
+#include "lirc_dev.h"
@ -684,6 +688,9 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.c linux-2.6.33.2.patch/dri
+ .write = lirc_dev_fop_write,
+ .poll = lirc_dev_fop_poll,
+ .ioctl = lirc_dev_fop_ioctl,
+#ifdef CONFIG_COMPAT
+ .compat_ioctl = lirc_dev_fop_compat_ioctl,
+#endif
+ .open = lirc_dev_fop_open,
+ .release = lirc_dev_fop_close,
+};
@ -1107,6 +1114,100 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.c linux-2.6.33.2.patch/dri
+}
+EXPORT_SYMBOL(lirc_dev_fop_ioctl);
+
+#ifdef CONFIG_COMPAT
+#define LIRC_GET_FEATURES_COMPAT32 _IOR('i', 0x00000000, __u32)
+
+#define LIRC_GET_SEND_MODE_COMPAT32 _IOR('i', 0x00000001, __u32)
+#define LIRC_GET_REC_MODE_COMPAT32 _IOR('i', 0x00000002, __u32)
+
+#define LIRC_GET_LENGTH_COMPAT32 _IOR('i', 0x0000000f, __u32)
+
+#define LIRC_SET_SEND_MODE_COMPAT32 _IOW('i', 0x00000011, __u32)
+#define LIRC_SET_REC_MODE_COMPAT32 _IOW('i', 0x00000012, __u32)
+
+long lirc_dev_fop_compat_ioctl(struct file *file,
+ unsigned int cmd32,
+ unsigned long arg)
+{
+ mm_segment_t old_fs;
+ int ret;
+ unsigned long val;
+ unsigned int cmd;
+
+ switch (cmd32) {
+ case LIRC_GET_FEATURES_COMPAT32:
+ case LIRC_GET_SEND_MODE_COMPAT32:
+ case LIRC_GET_REC_MODE_COMPAT32:
+ case LIRC_GET_LENGTH_COMPAT32:
+ case LIRC_SET_SEND_MODE_COMPAT32:
+ case LIRC_SET_REC_MODE_COMPAT32:
+ /*
+ * These commands expect (unsigned long *) arg
+ * but the 32-bit app supplied (__u32 *).
+ * Conversion is required.
+ */
+ if (get_user(val, (__u32 *)compat_ptr(arg)))
+ return -EFAULT;
+ lock_kernel();
+ /*
+ * tell lirc_dev_fop_ioctl that it's safe to use the pointer
+ * to val which is in kernel address space and not in
+ * user address space.
+ */
+ old_fs = get_fs();
+ set_fs(KERNEL_DS);
+
+ cmd = _IOC(_IOC_DIR(cmd32), _IOC_TYPE(cmd32), _IOC_NR(cmd32),
+ (_IOC_TYPECHECK(unsigned long)));
+ ret = lirc_dev_fop_ioctl(file->f_path.dentry->d_inode, file,
+ cmd, (unsigned long)(&val));
+
+ set_fs(old_fs);
+ unlock_kernel();
+ switch (cmd) {
+ case LIRC_GET_FEATURES:
+ case LIRC_GET_SEND_MODE:
+ case LIRC_GET_REC_MODE:
+ case LIRC_GET_LENGTH:
+ if (!ret && put_user(val, (__u32 *)compat_ptr(arg)))
+ return -EFAULT;
+ break;
+ }
+ return ret;
+
+ case LIRC_GET_SEND_CARRIER:
+ case LIRC_GET_REC_CARRIER:
+ case LIRC_GET_SEND_DUTY_CYCLE:
+ case LIRC_GET_REC_DUTY_CYCLE:
+ case LIRC_GET_REC_RESOLUTION:
+ case LIRC_SET_SEND_CARRIER:
+ case LIRC_SET_REC_CARRIER:
+ case LIRC_SET_SEND_DUTY_CYCLE:
+ case LIRC_SET_REC_DUTY_CYCLE:
+ case LIRC_SET_TRANSMITTER_MASK:
+ case LIRC_SET_REC_DUTY_CYCLE_RANGE:
+ case LIRC_SET_REC_CARRIER_RANGE:
+ /*
+ * These commands expect (unsigned int *)arg
+ * so no problems here. Just handle the locking.
+ */
+ lock_kernel();
+ cmd = cmd32;
+ ret = lirc_dev_fop_ioctl(file->f_path.dentry->d_inode,
+ file, cmd, arg);
+ unlock_kernel();
+ return ret;
+ default:
+ /* unknown */
+ printk(KERN_ERR "lirc_dev: %s(%s:%d): Unknown cmd %08x\n",
+ __func__, current->comm, current->pid, cmd32);
+ return -ENOIOCTLCMD;
+ }
+}
+EXPORT_SYMBOL(lirc_dev_fop_compat_ioctl);
+#endif
+
+
+ssize_t lirc_dev_fop_read(struct file *file,
+ char *buffer,
+ size_t length,
@ -1272,7 +1373,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.c linux-2.6.33.2.patch/dri
+MODULE_PARM_DESC(debug, "Enable debugging messages");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.h linux-2.6.33.2.patch/drivers/input/lirc/lirc_dev.h
--- linux-2.6.33.2/drivers/input/lirc/lirc_dev.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_dev.h 2010-04-05 14:03:57.398483343 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_dev.h 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,228 @@
+/*
+ * LIRC base driver
@ -1504,7 +1605,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_dev.h linux-2.6.33.2.patch/dri
+#endif
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ene0100.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_ene0100.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_ene0100.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ene0100.c 2010-04-05 14:03:57.404483928 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ene0100.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,646 @@
+/*
+ * driver for ENE KB3926 B/C/D CIR (also known as ENE0100)
@ -2154,7 +2255,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ene0100.c linux-2.6.33.2.patch
+module_exit(ene_exit);
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ene0100.h linux-2.6.33.2.patch/drivers/input/lirc/lirc_ene0100.h
--- linux-2.6.33.2/drivers/input/lirc/lirc_ene0100.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ene0100.h 2010-04-05 14:03:57.405483211 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ene0100.h 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,169 @@
+/*
+ * driver for ENE KB3926 B/C/D CIR (also known as ENE0100)
@ -2327,7 +2428,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ene0100.h linux-2.6.33.2.patch
+};
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_i2c.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_i2c.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_i2c.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_i2c.c 2010-04-05 14:03:57.407483033 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_i2c.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,536 @@
+/*
+ * lirc_i2c.c
@ -2867,7 +2968,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_i2c.c linux-2.6.33.2.patch/dri
+module_exit(lirc_i2c_exit);
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_igorplugusb.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_igorplugusb.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_igorplugusb.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_igorplugusb.c 2010-04-05 14:03:57.410483676 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_igorplugusb.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,555 @@
+/*
+ * lirc_igorplugusb - USB remote support for LIRC
@ -3426,7 +3527,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_igorplugusb.c linux-2.6.33.2.p
+
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_imon.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_imon.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_imon.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_imon.c 2010-04-05 14:03:57.418483525 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_imon.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,1053 @@
+/*
+ * lirc_imon.c: LIRC/VFD/LCD driver for SoundGraph iMON IR/VFD/LCD
@ -4483,8 +4584,8 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_imon.c linux-2.6.33.2.patch/dr
+module_exit(imon_exit);
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_it87.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_it87.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_it87.c 2010-04-05 14:03:57.420481602 +0200
@@ -0,0 +1,1019 @@
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_it87.c 2010-04-07 21:56:14.000000000 +0200
@@ -0,0 +1,1021 @@
+/*
+ * LIRC driver for ITE IT8712/IT8705 CIR port
+ *
@ -5411,18 +5512,16 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.c linux-2.6.33.2.patch/dr
+ return 0;
+}
+
+
+static int __init lirc_it87_init(void)
+static int it87_probe(struct pnp_dev *pnp_dev,
+ const struct pnp_device_id *dev_id)
+{
+ int retval;
+
+ retval = pnp_register_driver(&it87_pnp_driver);
+ if (retval < 0)
+ return retval;
+ driver.dev = &pnp_dev->dev;
+
+ retval = init_chrdev();
+ if (retval < 0)
+ goto init_chrdev_failed;
+ return retval;
+
+ retval = init_lirc_it87();
+ if (retval)
@ -5433,11 +5532,14 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.c linux-2.6.33.2.patch/dr
+init_lirc_it87_failed:
+ drop_chrdev();
+
+init_chrdev_failed:
+ pnp_unregister_driver(&it87_pnp_driver);
+ return retval;
+}
+
+static int __init lirc_it87_init(void)
+{
+ return pnp_register_driver(&it87_pnp_driver);
+}
+
+
+static void __exit lirc_it87_exit(void)
+{
@ -5460,6 +5562,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.c linux-2.6.33.2.patch/dr
+static struct pnp_driver it87_pnp_driver = {
+ .name = LIRC_DRIVER_NAME,
+ .id_table = pnp_dev_table,
+ .probe = it87_probe,
+};
+
+module_init(lirc_it87_init);
@ -5506,7 +5609,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.c linux-2.6.33.2.patch/dr
+#endif
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.h linux-2.6.33.2.patch/drivers/input/lirc/lirc_it87.h
--- linux-2.6.33.2/drivers/input/lirc/lirc_it87.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_it87.h 2010-04-05 14:03:57.420481602 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_it87.h 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,116 @@
+/* lirc_it87.h */
+/* SECTION: Definitions */
@ -5626,7 +5729,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_it87.h linux-2.6.33.2.patch/dr
+/********************************* ITE IT87xx ************************/
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ite8709.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_ite8709.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_ite8709.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ite8709.c 2010-04-05 14:03:57.421489055 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ite8709.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,540 @@
+/*
+ * LIRC driver for ITE8709 CIR port
@ -6170,7 +6273,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ite8709.c linux-2.6.33.2.patch
+MODULE_PARM_DESC(debug, "Enable debugging messages");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_mceusb.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_mceusb.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_mceusb.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_mceusb.c 2010-04-05 14:03:57.423481614 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_mceusb.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,1385 @@
+/*
+ * LIRC driver for Windows Media Center Edition USB Infrared Transceivers
@ -7559,7 +7662,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_mceusb.c linux-2.6.33.2.patch/
+MODULE_PARM_DESC(debug, "Debug enabled or not");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_parallel.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_parallel.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_parallel.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_parallel.c 2010-04-05 14:03:57.425481507 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_parallel.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,709 @@
+/*
+ * lirc_parallel.c
@ -8272,7 +8375,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_parallel.c linux-2.6.33.2.patc
+MODULE_PARM_DESC(debug, "Check for printer (default: 0)");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_parallel.h linux-2.6.33.2.patch/drivers/input/lirc/lirc_parallel.h
--- linux-2.6.33.2/drivers/input/lirc/lirc_parallel.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_parallel.h 2010-04-05 14:03:57.425481507 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_parallel.h 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,26 @@
+/* lirc_parallel.h */
+
@ -8302,7 +8405,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_parallel.h linux-2.6.33.2.patc
+#endif
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_sasem.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_sasem.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_sasem.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_sasem.c 2010-04-05 14:03:57.427481190 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_sasem.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,931 @@
+/*
+ * lirc_sasem.c - USB remote support for LIRC
@ -9237,7 +9340,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_sasem.c linux-2.6.33.2.patch/d
+module_exit(sasem_exit);
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_serial.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_serial.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_serial.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_serial.c 2010-04-05 14:03:57.430480715 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_serial.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,1317 @@
+/*
+ * lirc_serial.c
@ -10558,7 +10661,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_serial.c linux-2.6.33.2.patch/
+MODULE_PARM_DESC(debug, "Enable debugging messages");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_sir.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_sir.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_sir.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_sir.c 2010-04-05 14:03:57.432481306 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_sir.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,1283 @@
+/*
+ * LIRC SIR driver, (C) 2000 Milan Pikula <www@fornax.sk>
@ -11845,7 +11948,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_sir.c linux-2.6.33.2.patch/dri
+MODULE_PARM_DESC(debug, "Enable debugging messages");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_streamzap.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_streamzap.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_streamzap.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_streamzap.c 2010-04-05 14:03:57.433481356 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_streamzap.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,821 @@
+/*
+ * Streamzap Remote Control driver
@ -12670,7 +12773,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_streamzap.c linux-2.6.33.2.pat
+MODULE_PARM_DESC(debug, "Enable debugging messages");
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ttusbir.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_ttusbir.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_ttusbir.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ttusbir.c 2010-04-05 14:03:57.434481058 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_ttusbir.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,397 @@
+/*
+ * lirc_ttusbir.c
@ -13071,7 +13174,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_ttusbir.c linux-2.6.33.2.patch
+module_exit(ttusbir_exit_module);
diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_zilog.c linux-2.6.33.2.patch/drivers/input/lirc/lirc_zilog.c
--- linux-2.6.33.2/drivers/input/lirc/lirc_zilog.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_zilog.c 2010-04-05 14:03:57.436481440 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/lirc_zilog.c 2010-04-06 23:47:21.000000000 +0200
@@ -0,0 +1,1388 @@
+/*
+ * i2c IR lirc driver for devices with zilog IR processors
@ -14463,7 +14566,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/lirc_zilog.c linux-2.6.33.2.patch/d
+MODULE_PARM_DESC(disable_tx, "Disable the IR transmitter device");
diff -Naur linux-2.6.33.2/drivers/input/lirc/Makefile linux-2.6.33.2.patch/drivers/input/lirc/Makefile
--- linux-2.6.33.2/drivers/input/lirc/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/lirc/Makefile 2010-04-05 14:03:57.437480792 +0200
+++ linux-2.6.33.2.patch/drivers/input/lirc/Makefile 2010-04-07 22:05:13.630122819 +0200
@@ -0,0 +1,21 @@
+# Makefile for the lirc drivers.
+#
@ -14488,7 +14591,7 @@ diff -Naur linux-2.6.33.2/drivers/input/lirc/Makefile linux-2.6.33.2.patch/drive
+obj-$(CONFIG_LIRC_ZILOG) += lirc_zilog.o
diff -Naur linux-2.6.33.2/drivers/input/Makefile linux-2.6.33.2.patch/drivers/input/Makefile
--- linux-2.6.33.2/drivers/input/Makefile 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/input/Makefile 2010-04-05 14:03:57.437480792 +0200
+++ linux-2.6.33.2.patch/drivers/input/Makefile 2010-04-07 22:05:13.630122819 +0200
@@ -26,3 +26,5 @@
obj-$(CONFIG_INPUT_APMPOWER) += apm-power.o
@ -14497,7 +14600,7 @@ diff -Naur linux-2.6.33.2/drivers/input/Makefile linux-2.6.33.2.patch/drivers/in
+obj-$(CONFIG_INPUT_LIRC) += lirc/
diff -Naur linux-2.6.33.2/drivers/input/misc/imon.c linux-2.6.33.2.patch/drivers/input/misc/imon.c
--- linux-2.6.33.2/drivers/input/misc/imon.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/drivers/input/misc/imon.c 2010-04-05 14:03:57.440481155 +0200
+++ linux-2.6.33.2.patch/drivers/input/misc/imon.c 2010-04-07 22:05:13.633152235 +0200
@@ -0,0 +1,2537 @@
+/*
+ * imon.c: input and display driver for SoundGraph iMON IR/VFD/LCD
@ -17038,7 +17141,7 @@ diff -Naur linux-2.6.33.2/drivers/input/misc/imon.c linux-2.6.33.2.patch/drivers
+module_exit(imon_exit);
diff -Naur linux-2.6.33.2/drivers/input/misc/Kconfig linux-2.6.33.2.patch/drivers/input/misc/Kconfig
--- linux-2.6.33.2/drivers/input/misc/Kconfig 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/input/misc/Kconfig 2010-04-05 14:03:57.441489307 +0200
+++ linux-2.6.33.2.patch/drivers/input/misc/Kconfig 2010-04-07 22:05:13.635247879 +0200
@@ -319,4 +319,16 @@
To compile this driver as a module, choose M here: the
module will be called pcap_keys.
@ -17058,7 +17161,7 @@ diff -Naur linux-2.6.33.2/drivers/input/misc/Kconfig linux-2.6.33.2.patch/driver
endif
diff -Naur linux-2.6.33.2/drivers/input/misc/Makefile linux-2.6.33.2.patch/drivers/input/misc/Makefile
--- linux-2.6.33.2/drivers/input/misc/Makefile 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/input/misc/Makefile 2010-04-05 14:03:57.442514711 +0200
+++ linux-2.6.33.2.patch/drivers/input/misc/Makefile 2010-04-07 22:05:13.635247879 +0200
@@ -13,6 +13,7 @@
obj-$(CONFIG_INPUT_COBALT_BTNS) += cobalt_btns.o
obj-$(CONFIG_INPUT_DM355EVM) += dm355evm_keys.o
@ -17069,21 +17172,18 @@ diff -Naur linux-2.6.33.2/drivers/input/misc/Makefile linux-2.6.33.2.patch/drive
obj-$(CONFIG_INPUT_M68K_BEEP) += m68kspkr.o
diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linux/lirc.h
--- linux-2.6.33.2/include/linux/lirc.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.33.2.patch/include/linux/lirc.h 2010-01-30 15:55:16.000000000 +0100
@@ -0,0 +1,160 @@
+/* $Id: lirc.h,v 5.24 2010/01/30 14:55:16 lirc Exp $ */
+++ linux-2.6.33.2.patch/include/linux/lirc.h 2010-04-07 21:56:14.000000000 +0200
@@ -0,0 +1,159 @@
+/*
+ * lirc.h - linux infrared remote control header file
+ * last modified 2007/09/27
+ */
+
+#ifndef _LINUX_LIRC_H
+#define _LINUX_LIRC_H
+
+#if defined(__linux__)
+#include <linux/types.h>
+#include <linux/ioctl.h>
+#elif defined(_NetBSD_)
+#include <sys/ioctl.h>
+#elif defined(_CYGWIN_)
+#define __USE_LINUX_IOCTL_DEFS
+#include <sys/ioctl.h>
+#endif
+
+/* <obsolete> */
+#define PULSE_BIT 0x01000000
@ -17111,8 +17211,6 @@ diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linu
+#define LIRC_IS_FREQUENCY(val) (LIRC_MODE2(val) == LIRC_MODE2_FREQUENCY)
+#define LIRC_IS_TIMEOUT(val) (LIRC_MODE2(val) == LIRC_MODE2_TIMEOUT)
+
+typedef int lirc_t;
+
+/*** lirc compatible hardware features ***/
+
+#define LIRC_MODE2SEND(x) (x)
@ -17123,17 +17221,13 @@ diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linu
+#define LIRC_MODE_RAW 0x00000001
+#define LIRC_MODE_PULSE 0x00000002
+#define LIRC_MODE_MODE2 0x00000004
+/* obsolete: #define LIRC_MODE_CODE 0x00000008 */
+#define LIRC_MODE_LIRCCODE 0x00000010
+/* obsolete: #define LIRC_MODE_STRING 0x00000020 */
+
+
+#define LIRC_CAN_SEND_RAW LIRC_MODE2SEND(LIRC_MODE_RAW)
+#define LIRC_CAN_SEND_PULSE LIRC_MODE2SEND(LIRC_MODE_PULSE)
+#define LIRC_CAN_SEND_MODE2 LIRC_MODE2SEND(LIRC_MODE_MODE2)
+/* obsolete: #define LIRC_CAN_SEND_CODE LIRC_MODE2SEND(LIRC_MODE_CODE) */
+#define LIRC_CAN_SEND_LIRCCODE LIRC_MODE2SEND(LIRC_MODE_LIRCCODE)
+/* obsolete: #define LIRC_CAN_SEND_STRING LIRC_MODE2SEND(LIRC_MODE_STRING) */
+
+#define LIRC_CAN_SEND_MASK 0x0000003f
+
@ -17144,9 +17238,7 @@ diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linu
+#define LIRC_CAN_REC_RAW LIRC_MODE2REC(LIRC_MODE_RAW)
+#define LIRC_CAN_REC_PULSE LIRC_MODE2REC(LIRC_MODE_PULSE)
+#define LIRC_CAN_REC_MODE2 LIRC_MODE2REC(LIRC_MODE_MODE2)
+/* obsolete: #define LIRC_CAN_REC_CODE LIRC_MODE2REC(LIRC_MODE_CODE) */
+#define LIRC_CAN_REC_LIRCCODE LIRC_MODE2REC(LIRC_MODE_LIRCCODE)
+/* obsolete: #define LIRC_CAN_REC_STRING LIRC_MODE2REC(LIRC_MODE_STRING) */
+
+#define LIRC_CAN_REC_MASK LIRC_MODE2REC(LIRC_CAN_SEND_MASK)
+
@ -17178,13 +17270,13 @@ diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linu
+#define LIRC_GET_REC_DUTY_CYCLE _IOR('i', 0x00000006, unsigned int)
+#define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, unsigned int)
+
+#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, lirc_t)
+#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, lirc_t)
+#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, uint32_t)
+#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, uint32_t)
+
+#define LIRC_GET_MIN_FILTER_PULSE _IOR('i', 0x0000000a, lirc_t)
+#define LIRC_GET_MAX_FILTER_PULSE _IOR('i', 0x0000000b, lirc_t)
+#define LIRC_GET_MIN_FILTER_SPACE _IOR('i', 0x0000000c, lirc_t)
+#define LIRC_GET_MAX_FILTER_SPACE _IOR('i', 0x0000000d, lirc_t)
+#define LIRC_GET_MIN_FILTER_PULSE _IOR('i', 0x0000000a, uint32_t)
+#define LIRC_GET_MAX_FILTER_PULSE _IOR('i', 0x0000000b, uint32_t)
+#define LIRC_GET_MIN_FILTER_SPACE _IOR('i', 0x0000000c, uint32_t)
+#define LIRC_GET_MAX_FILTER_SPACE _IOR('i', 0x0000000d, uint32_t)
+
+/* code length in bits, currently only for LIRC_MODE_LIRCCODE */
+#define LIRC_GET_LENGTH _IOR('i', 0x0000000f, unsigned long)
@ -17198,20 +17290,28 @@ diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linu
+#define LIRC_SET_REC_DUTY_CYCLE _IOW('i', 0x00000016, unsigned int)
+#define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, unsigned int)
+
+/* when a timeout != 0 is set the driver will send a
+ LIRC_MODE2_TIMEOUT data packet, otherwise LIRC_MODE2_TIMEOUT is
+ never sent, timeout is disabled by default */
+#define LIRC_SET_REC_TIMEOUT _IOW('i', 0x00000018, lirc_t)
+/*
+ * when a timeout != 0 is set the driver will send a
+ * LIRC_MODE2_TIMEOUT data packet, otherwise LIRC_MODE2_TIMEOUT is
+ * never sent, timeout is disabled by default
+ */
+#define LIRC_SET_REC_TIMEOUT _IOW('i', 0x00000018, uint32_t)
+
+/* pulses shorter than this are filtered out by hardware (software
+ emulation in lirc_dev?) */
+#define LIRC_SET_REC_FILTER_PULSE _IOW('i', 0x00000019, lirc_t)
+/* spaces shorter than this are filtered out by hardware (software
+ emulation in lirc_dev?) */
+#define LIRC_SET_REC_FILTER_SPACE _IOW('i', 0x0000001a, lirc_t)
+/* if filter cannot be set independantly for pulse/space, this should
+ be used */
+#define LIRC_SET_REC_FILTER _IOW('i', 0x0000001b, lirc_t)
+/*
+ * pulses shorter than this are filtered out by hardware (software
+ * emulation in lirc_dev?)
+ */
+#define LIRC_SET_REC_FILTER_PULSE _IOW('i', 0x00000019, uint32_t)
+/*
+ * spaces shorter than this are filtered out by hardware (software
+ * emulation in lirc_dev?)
+ */
+#define LIRC_SET_REC_FILTER_SPACE _IOW('i', 0x0000001a, uint32_t)
+/*
+ * if filter cannot be set independantly for pulse/space, this should
+ * be used
+ */
+#define LIRC_SET_REC_FILTER _IOW('i', 0x0000001b, uint32_t)
+
+/*
+ * to set a range use
@ -17225,8 +17325,10 @@ diff -Naur linux-2.6.33.2/include/linux/lirc.h linux-2.6.33.2.patch/include/linu
+
+#define LIRC_NOTIFY_DECODE _IO('i', 0x00000020)
+
+/* from the next key press on the driver will send
+ LIRC_MODE2_FREQUENCY packets */
+/*
+ * from the next key press on the driver will send
+ * LIRC_MODE2_FREQUENCY packets
+ */
+#define LIRC_MEASURE_CARRIER_ENABLE _IO('i', 0x00000021)
+#define LIRC_MEASURE_CARRIER_DISABLE _IO('i', 0x00000022)
+

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,84 @@
diff -Naur linux-2.6.33.2/sound/pci/hda/hda_beep.c linux-2.6.33.2.patch/sound/pci/hda/hda_beep.c
--- linux-2.6.33.2/sound/pci/hda/hda_beep.c 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/sound/pci/hda/hda_beep.c 2010-04-09 03:19:43.846329981 +0200
@@ -1,3 +1,5 @@
+#define __NO_VERSION__
+#include "adriver.h"
/*
* Digital Beep Input Interface for HD-audio codec
*
@@ -92,7 +94,11 @@
static int snd_hda_beep_event(struct input_dev *dev, unsigned int type,
unsigned int code, int hz)
{
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 22)
+ struct hda_beep *beep = dev->private;
+#else
struct hda_beep *beep = input_get_drvdata(dev);
+#endif
switch (code) {
case SND_BELL:
@@ -116,8 +122,13 @@
static void snd_hda_do_detach(struct hda_beep *beep)
{
input_unregister_device(beep->dev);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 15)
+ kfree(beep->dev);
+#endif
beep->dev = NULL;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
cancel_work_sync(&beep->beep_work);
+#endif
/* turn off beep for sure */
snd_hda_codec_write(beep->codec, beep->nid, 0,
AC_VERB_SET_BEEP_CONTROL, 0);
@@ -129,7 +140,11 @@
struct hda_codec *codec = beep->codec;
int err;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 15)
input_dev = input_allocate_device();
+#else
+ input_dev = kzalloc(sizeof(*input_dev), GFP_KERNEL);
+#endif
if (!input_dev) {
printk(KERN_INFO "hda_beep: unable to allocate input device\n");
return -ENOMEM;
@@ -147,15 +162,26 @@
input_dev->evbit[0] = BIT_MASK(EV_SND);
input_dev->sndbit[0] = BIT_MASK(SND_BELL) | BIT_MASK(SND_TONE);
input_dev->event = snd_hda_beep_event;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
input_dev->dev.parent = &codec->bus->pci->dev;
input_set_drvdata(input_dev, beep);
+#else
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 15)
+ input_dev->cdev.dev = &codec->bus->pci->dev;
+#endif
+ input_dev->private = beep;
+#endif /* 2.6.22 */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 15)
err = input_register_device(input_dev);
if (err < 0) {
input_free_device(input_dev);
printk(KERN_INFO "hda_beep: unable to register input device\n");
return err;
}
+#else
+ input_register_device(input_dev);
+#endif
beep->dev = input_dev;
return 0;
}
@@ -255,7 +281,9 @@
{
struct hda_beep *beep = codec->beep;
if (beep) {
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
cancel_work_sync(&beep->register_work);
+#endif
cancel_delayed_work(&beep->unregister_work);
if (beep->dev)
snd_hda_do_detach(beep);

View File

@ -0,0 +1,703 @@
diff -Naur linux-2.6.33.2/drivers/usb/serial/ftdi_sio.c linux-2.6.33.2.patch/drivers/usb/serial/ftdi_sio.c
--- linux-2.6.33.2/drivers/usb/serial/ftdi_sio.c 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/usb/serial/ftdi_sio.c 2010-04-25 18:42:20.184548098 +0200
@@ -33,12 +33,12 @@
#include <linux/errno.h>
#include <linux/init.h>
#include <linux/slab.h>
-#include <linux/smp_lock.h>
#include <linux/tty.h>
#include <linux/tty_driver.h>
#include <linux/tty_flip.h>
#include <linux/module.h>
#include <linux/spinlock.h>
+#include <linux/mutex.h>
#include <linux/uaccess.h>
#include <linux/usb.h>
#include <linux/serial.h>
@@ -88,10 +88,10 @@
unsigned int latency; /* latency setting in use */
spinlock_t tx_lock; /* spinlock for transmit state */
- unsigned long tx_bytes;
unsigned long tx_outstanding_bytes;
unsigned long tx_outstanding_urbs;
unsigned short max_packet_size;
+ struct mutex cfg_lock; /* Avoid mess by parallel calls of config ioctl() and change_speed() */
};
/* struct ftdi_sio_quirk is used by devices requiring special attention. */
@@ -818,7 +818,7 @@
.name = "ftdi_sio",
},
.description = "FTDI USB Serial Device",
- .usb_driver = &ftdi_driver ,
+ .usb_driver = &ftdi_driver,
.id_table = id_table_combined,
.num_ports = 1,
.probe = ftdi_sio_probe,
@@ -834,8 +834,8 @@
.chars_in_buffer = ftdi_chars_in_buffer,
.read_bulk_callback = ftdi_read_bulk_callback,
.write_bulk_callback = ftdi_write_bulk_callback,
- .tiocmget = ftdi_tiocmget,
- .tiocmset = ftdi_tiocmset,
+ .tiocmget = ftdi_tiocmget,
+ .tiocmset = ftdi_tiocmset,
.ioctl = ftdi_ioctl,
.set_termios = ftdi_set_termios,
.break_ctl = ftdi_break_ctl,
@@ -941,7 +941,6 @@
unsigned int clear)
{
struct ftdi_private *priv = usb_get_serial_port_data(port);
- char *buf;
unsigned urb_value;
int rv;
@@ -950,10 +949,6 @@
return 0; /* no change */
}
- buf = kmalloc(1, GFP_NOIO);
- if (!buf)
- return -ENOMEM;
-
clear &= ~set; /* 'set' takes precedence over 'clear' */
urb_value = 0;
if (clear & TIOCM_DTR)
@@ -969,9 +964,7 @@
FTDI_SIO_SET_MODEM_CTRL_REQUEST,
FTDI_SIO_SET_MODEM_CTRL_REQUEST_TYPE,
urb_value, priv->interface,
- buf, 0, WDR_TIMEOUT);
-
- kfree(buf);
+ NULL, 0, WDR_TIMEOUT);
if (rv < 0) {
dbg("%s Error from MODEM_CTRL urb: DTR %s, RTS %s",
__func__,
@@ -1130,16 +1123,11 @@
static int change_speed(struct tty_struct *tty, struct usb_serial_port *port)
{
struct ftdi_private *priv = usb_get_serial_port_data(port);
- char *buf;
__u16 urb_value;
__u16 urb_index;
__u32 urb_index_value;
int rv;
- buf = kmalloc(1, GFP_NOIO);
- if (!buf)
- return -ENOMEM;
-
urb_index_value = get_ftdi_divisor(tty, port);
urb_value = (__u16)urb_index_value;
urb_index = (__u16)(urb_index_value >> 16);
@@ -1152,9 +1140,7 @@
FTDI_SIO_SET_BAUDRATE_REQUEST,
FTDI_SIO_SET_BAUDRATE_REQUEST_TYPE,
urb_value, urb_index,
- buf, 0, WDR_SHORT_TIMEOUT);
-
- kfree(buf);
+ NULL, 0, WDR_SHORT_TIMEOUT);
return rv;
}
@@ -1162,8 +1148,7 @@
{
struct ftdi_private *priv = usb_get_serial_port_data(port);
struct usb_device *udev = port->serial->dev;
- char buf[1];
- int rv = 0;
+ int rv;
int l = priv->latency;
if (priv->flags & ASYNC_LOW_LATENCY)
@@ -1176,8 +1161,7 @@
FTDI_SIO_SET_LATENCY_TIMER_REQUEST,
FTDI_SIO_SET_LATENCY_TIMER_REQUEST_TYPE,
l, priv->interface,
- buf, 0, WDR_TIMEOUT);
-
+ NULL, 0, WDR_TIMEOUT);
if (rv < 0)
dev_err(&port->dev, "Unable to write latency timer: %i\n", rv);
return rv;
@@ -1187,24 +1171,29 @@
{
struct ftdi_private *priv = usb_get_serial_port_data(port);
struct usb_device *udev = port->serial->dev;
- unsigned short latency = 0;
- int rv = 0;
-
+ unsigned char *buf;
+ int rv;
dbg("%s", __func__);
+ buf = kmalloc(1, GFP_KERNEL);
+ if (!buf)
+ return -ENOMEM;
+
rv = usb_control_msg(udev,
usb_rcvctrlpipe(udev, 0),
FTDI_SIO_GET_LATENCY_TIMER_REQUEST,
FTDI_SIO_GET_LATENCY_TIMER_REQUEST_TYPE,
0, priv->interface,
- (char *) &latency, 1, WDR_TIMEOUT);
-
- if (rv < 0) {
+ buf, 1, WDR_TIMEOUT);
+ if (rv < 0)
dev_err(&port->dev, "Unable to read latency timer: %i\n", rv);
- return -EIO;
- }
- return latency;
+ else
+ priv->latency = buf[0];
+
+ kfree(buf);
+
+ return rv;
}
static int get_serial_info(struct usb_serial_port *port,
@@ -1235,7 +1224,7 @@
if (copy_from_user(&new_serial, newinfo, sizeof(new_serial)))
return -EFAULT;
- lock_kernel();
+ mutex_lock(&priv->cfg_lock);
old_priv = *priv;
/* Do error checking and permission checking */
@@ -1243,7 +1232,7 @@
if (!capable(CAP_SYS_ADMIN)) {
if (((new_serial.flags & ~ASYNC_USR_MASK) !=
(priv->flags & ~ASYNC_USR_MASK))) {
- unlock_kernel();
+ mutex_unlock(&priv->cfg_lock);
return -EPERM;
}
priv->flags = ((priv->flags & ~ASYNC_USR_MASK) |
@@ -1254,7 +1243,7 @@
if ((new_serial.baud_base != priv->baud_base) &&
(new_serial.baud_base < 9600)) {
- unlock_kernel();
+ mutex_unlock(&priv->cfg_lock);
return -EINVAL;
}
@@ -1284,11 +1273,11 @@
(priv->flags & ASYNC_SPD_MASK)) ||
(((priv->flags & ASYNC_SPD_MASK) == ASYNC_SPD_CUST) &&
(old_priv.custom_divisor != priv->custom_divisor))) {
- unlock_kernel();
change_speed(tty, port);
+ mutex_unlock(&priv->cfg_lock);
}
else
- unlock_kernel();
+ mutex_unlock(&priv->cfg_lock);
return 0;
} /* set_serial_info */
@@ -1344,20 +1333,20 @@
__func__);
}
} else if (version < 0x200) {
- /* Old device. Assume its the original SIO. */
+ /* Old device. Assume it's the original SIO. */
priv->chip_type = SIO;
priv->baud_base = 12000000 / 16;
priv->write_offset = 1;
} else if (version < 0x400) {
- /* Assume its an FT8U232AM (or FT8U245AM) */
+ /* Assume it's an FT8U232AM (or FT8U245AM) */
/* (It might be a BM because of the iSerialNumber bug,
* but it will still work as an AM device.) */
priv->chip_type = FT8U232AM;
} else if (version < 0x600) {
- /* Assume its an FT232BM (or FT245BM) */
+ /* Assume it's an FT232BM (or FT245BM) */
priv->chip_type = FT232BM;
} else {
- /* Assume its an FT232R */
+ /* Assume it's an FT232R */
priv->chip_type = FT232RL;
}
dev_info(&udev->dev, "Detected %s\n", ftdi_chip_name[priv->chip_type]);
@@ -1377,7 +1366,7 @@
struct usb_endpoint_descriptor *ep_desc = &interface->cur_altsetting->endpoint[1].desc;
unsigned num_endpoints;
- int i = 0;
+ int i;
num_endpoints = interface->cur_altsetting->desc.bNumEndpoints;
dev_info(&udev->dev, "Number of endpoints %d\n", num_endpoints);
@@ -1429,7 +1418,7 @@
struct usb_serial_port *port = to_usb_serial_port(dev);
struct ftdi_private *priv = usb_get_serial_port_data(port);
int v = simple_strtoul(valbuf, NULL, 10);
- int rv = 0;
+ int rv;
priv->latency = v;
rv = write_latency_timer(port);
@@ -1446,9 +1435,8 @@
struct usb_serial_port *port = to_usb_serial_port(dev);
struct ftdi_private *priv = usb_get_serial_port_data(port);
struct usb_device *udev = port->serial->dev;
- char buf[1];
int v = simple_strtoul(valbuf, NULL, 10);
- int rv = 0;
+ int rv;
dbg("%s: setting event char = %i", __func__, v);
@@ -1457,8 +1445,7 @@
FTDI_SIO_SET_EVENT_CHAR_REQUEST,
FTDI_SIO_SET_EVENT_CHAR_REQUEST_TYPE,
v, priv->interface,
- buf, 0, WDR_TIMEOUT);
-
+ NULL, 0, WDR_TIMEOUT);
if (rv < 0) {
dbg("Unable to write event character: %i", rv);
return -EIO;
@@ -1557,9 +1544,9 @@
kref_init(&priv->kref);
spin_lock_init(&priv->tx_lock);
+ mutex_init(&priv->cfg_lock);
init_waitqueue_head(&priv->delta_msr_wait);
- /* This will push the characters through immediately rather
- than queue a task to deliver them */
+
priv->flags = ASYNC_LOW_LATENCY;
if (quirk && quirk->port_probe)
@@ -1591,7 +1578,8 @@
ftdi_determine_type(port);
ftdi_set_max_packet_size(port);
- read_latency_timer(port);
+ if (read_latency_timer(port) < 0)
+ priv->latency = 16;
create_sysfs_attrs(port);
return 0;
}
@@ -1636,8 +1624,6 @@
{
struct usb_device *udev = serial->dev;
int latency = ndi_latency_timer;
- int rv = 0;
- char buf[1];
if (latency == 0)
latency = 1;
@@ -1647,10 +1633,11 @@
dbg("%s setting NDI device latency to %d", __func__, latency);
dev_info(&udev->dev, "NDI device with a latency value of %d", latency);
- rv = usb_control_msg(udev, usb_sndctrlpipe(udev, 0),
+ /* FIXME: errors are not returned */
+ usb_control_msg(udev, usb_sndctrlpipe(udev, 0),
FTDI_SIO_SET_LATENCY_TIMER_REQUEST,
FTDI_SIO_SET_LATENCY_TIMER_REQUEST_TYPE,
- latency, 0, buf, 0, WDR_TIMEOUT);
+ latency, 0, NULL, 0, WDR_TIMEOUT);
return 0;
}
@@ -1726,7 +1713,7 @@
urb->transfer_buffer_length,
ftdi_read_bulk_callback, port);
result = usb_submit_urb(urb, mem_flags);
- if (result)
+ if (result && result != -EPERM)
dev_err(&port->dev,
"%s - failed submitting read urb, error %d\n",
__func__, result);
@@ -1738,16 +1725,10 @@
struct usb_device *dev = port->serial->dev;
struct ftdi_private *priv = usb_get_serial_port_data(port);
unsigned long flags;
-
- int result = 0;
- char buf[1]; /* Needed for the usb_control_msg I think */
+ int result;
dbg("%s", __func__);
- spin_lock_irqsave(&priv->tx_lock, flags);
- priv->tx_bytes = 0;
- spin_unlock_irqrestore(&priv->tx_lock, flags);
-
write_latency_timer(port);
/* No error checking for this (will get errors later anyway) */
@@ -1755,7 +1736,7 @@
usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
FTDI_SIO_RESET_REQUEST, FTDI_SIO_RESET_REQUEST_TYPE,
FTDI_SIO_RESET_SIO,
- priv->interface, buf, 0, WDR_TIMEOUT);
+ priv->interface, NULL, 0, WDR_TIMEOUT);
/* Termios defaults are set by usb_serial_init. We don't change
port->tty->termios - this would lose speed settings, etc.
@@ -1783,7 +1764,6 @@
static void ftdi_dtr_rts(struct usb_serial_port *port, int on)
{
struct ftdi_private *priv = usb_get_serial_port_data(port);
- char buf[1];
mutex_lock(&port->serial->disc_mutex);
if (!port->serial->disconnected) {
@@ -1792,7 +1772,7 @@
usb_sndctrlpipe(port->serial->dev, 0),
FTDI_SIO_SET_FLOW_CTRL_REQUEST,
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
- 0, priv->interface, buf, 0,
+ 0, priv->interface, NULL, 0,
WDR_TIMEOUT) < 0) {
dev_err(&port->dev, "error from flowcontrol urb\n");
}
@@ -1853,7 +1833,7 @@
spin_lock_irqsave(&priv->tx_lock, flags);
if (priv->tx_outstanding_urbs > URB_UPPER_LIMIT) {
spin_unlock_irqrestore(&priv->tx_lock, flags);
- dbg("%s - write limit hit\n", __func__);
+ dbg("%s - write limit hit", __func__);
return 0;
}
priv->tx_outstanding_urbs++;
@@ -1933,7 +1913,6 @@
} else {
spin_lock_irqsave(&priv->tx_lock, flags);
priv->tx_outstanding_bytes += count;
- priv->tx_bytes += count;
spin_unlock_irqrestore(&priv->tx_lock, flags);
}
@@ -2160,8 +2139,7 @@
{
struct usb_serial_port *port = tty->driver_data;
struct ftdi_private *priv = usb_get_serial_port_data(port);
- __u16 urb_value = 0;
- char buf[1];
+ __u16 urb_value;
/* break_state = -1 to turn on break, and 0 to turn off break */
/* see drivers/char/tty_io.c to see it used */
@@ -2177,7 +2155,7 @@
FTDI_SIO_SET_DATA_REQUEST,
FTDI_SIO_SET_DATA_REQUEST_TYPE,
urb_value , priv->interface,
- buf, 0, WDR_TIMEOUT) < 0) {
+ NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(&port->dev, "%s FAILED to enable/disable break state "
"(state was %d)\n", __func__, break_state);
}
@@ -2201,7 +2179,6 @@
struct ktermios *termios = tty->termios;
unsigned int cflag = termios->c_cflag;
__u16 urb_value; /* will hold the new flags */
- char buf[1]; /* Perhaps I should dynamically alloc this? */
/* Added for xon/xoff support */
unsigned int iflag = termios->c_iflag;
@@ -2252,12 +2229,10 @@
}
if (cflag & CSIZE) {
switch (cflag & CSIZE) {
- case CS5: urb_value |= 5; dbg("Setting CS5"); break;
- case CS6: urb_value |= 6; dbg("Setting CS6"); break;
case CS7: urb_value |= 7; dbg("Setting CS7"); break;
case CS8: urb_value |= 8; dbg("Setting CS8"); break;
default:
- dev_err(&port->dev, "CSIZE was set but not CS5-CS8\n");
+ dev_err(&port->dev, "CSIZE was set but not CS7-CS8\n");
}
}
@@ -2269,7 +2244,7 @@
FTDI_SIO_SET_DATA_REQUEST,
FTDI_SIO_SET_DATA_REQUEST_TYPE,
urb_value , priv->interface,
- buf, 0, WDR_SHORT_TIMEOUT) < 0) {
+ NULL, 0, WDR_SHORT_TIMEOUT) < 0) {
dev_err(&port->dev, "%s FAILED to set "
"databits/stopbits/parity\n", __func__);
}
@@ -2281,7 +2256,7 @@
FTDI_SIO_SET_FLOW_CTRL_REQUEST,
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
0, priv->interface,
- buf, 0, WDR_TIMEOUT) < 0) {
+ NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(&port->dev,
"%s error from disable flowcontrol urb\n",
__func__);
@@ -2290,9 +2265,11 @@
clear_mctrl(port, TIOCM_DTR | TIOCM_RTS);
} else {
/* set the baudrate determined before */
+ mutex_lock(&priv->cfg_lock);
if (change_speed(tty, port))
dev_err(&port->dev, "%s urb failed to set baudrate\n",
__func__);
+ mutex_unlock(&priv->cfg_lock);
/* Ensure RTS and DTR are raised when baudrate changed from 0 */
if (!old_termios || (old_termios->c_cflag & CBAUD) == B0)
set_mctrl(port, TIOCM_DTR | TIOCM_RTS);
@@ -2307,7 +2284,7 @@
FTDI_SIO_SET_FLOW_CTRL_REQUEST,
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
0 , (FTDI_SIO_RTS_CTS_HS | priv->interface),
- buf, 0, WDR_TIMEOUT) < 0) {
+ NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(&port->dev,
"urb failed to set to rts/cts flow control\n");
}
@@ -2339,7 +2316,7 @@
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
urb_value , (FTDI_SIO_XON_XOFF_HS
| priv->interface),
- buf, 0, WDR_TIMEOUT) < 0) {
+ NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(&port->dev, "urb failed to set to "
"xon/xoff flow control\n");
}
@@ -2353,7 +2330,7 @@
FTDI_SIO_SET_FLOW_CTRL_REQUEST,
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
0, priv->interface,
- buf, 0, WDR_TIMEOUT) < 0) {
+ NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(&port->dev,
"urb failed to clear flow control\n");
}
@@ -2367,21 +2344,22 @@
{
struct usb_serial_port *port = tty->driver_data;
struct ftdi_private *priv = usb_get_serial_port_data(port);
- unsigned char buf[2];
+ unsigned char *buf;
+ int len;
int ret;
dbg("%s TIOCMGET", __func__);
+
+ buf = kmalloc(2, GFP_KERNEL);
+ if (!buf)
+ return -ENOMEM;
+ /*
+ * The 8U232AM returns a two byte value (the SIO a 1 byte value) in
+ * the same format as the data returned from the in point.
+ */
switch (priv->chip_type) {
case SIO:
- /* Request the status from the device */
- ret = usb_control_msg(port->serial->dev,
- usb_rcvctrlpipe(port->serial->dev, 0),
- FTDI_SIO_GET_MODEM_STATUS_REQUEST,
- FTDI_SIO_GET_MODEM_STATUS_REQUEST_TYPE,
- 0, 0,
- buf, 1, WDR_TIMEOUT);
- if (ret < 0)
- return ret;
+ len = 1;
break;
case FT8U232AM:
case FT232BM:
@@ -2389,27 +2367,30 @@
case FT232RL:
case FT2232H:
case FT4232H:
- /* the 8U232AM returns a two byte value (the sio is a 1 byte
- value) - in the same format as the data returned from the in
- point */
- ret = usb_control_msg(port->serial->dev,
- usb_rcvctrlpipe(port->serial->dev, 0),
- FTDI_SIO_GET_MODEM_STATUS_REQUEST,
- FTDI_SIO_GET_MODEM_STATUS_REQUEST_TYPE,
- 0, priv->interface,
- buf, 2, WDR_TIMEOUT);
- if (ret < 0)
- return ret;
+ len = 2;
break;
default:
- return -EFAULT;
+ ret = -EFAULT;
+ goto out;
}
- return (buf[0] & FTDI_SIO_DSR_MASK ? TIOCM_DSR : 0) |
+ ret = usb_control_msg(port->serial->dev,
+ usb_rcvctrlpipe(port->serial->dev, 0),
+ FTDI_SIO_GET_MODEM_STATUS_REQUEST,
+ FTDI_SIO_GET_MODEM_STATUS_REQUEST_TYPE,
+ 0, priv->interface,
+ buf, len, WDR_TIMEOUT);
+ if (ret < 0)
+ goto out;
+
+ ret = (buf[0] & FTDI_SIO_DSR_MASK ? TIOCM_DSR : 0) |
(buf[0] & FTDI_SIO_CTS_MASK ? TIOCM_CTS : 0) |
(buf[0] & FTDI_SIO_RI_MASK ? TIOCM_RI : 0) |
(buf[0] & FTDI_SIO_RLSD_MASK ? TIOCM_CD : 0) |
priv->last_dtr_rts;
+out:
+ kfree(buf);
+ return ret;
}
static int ftdi_tiocmset(struct tty_struct *tty, struct file *file,
@@ -2514,8 +2495,7 @@
port->throttled = port->throttle_req = 0;
spin_unlock_irqrestore(&port->lock, flags);
- /* Resubmit urb if throttled and open. */
- if (was_throttled && test_bit(ASYNCB_INITIALIZED, &port->port.flags))
+ if (was_throttled)
ftdi_submit_read_urb(port, GFP_KERNEL);
}
diff -Naur linux-2.6.33.2/drivers/usb/serial/ftdi_sio.h linux-2.6.33.2.patch/drivers/usb/serial/ftdi_sio.h
--- linux-2.6.33.2/drivers/usb/serial/ftdi_sio.h 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/usb/serial/ftdi_sio.h 2010-04-25 18:40:02.713423244 +0200
@@ -28,13 +28,13 @@
#define FTDI_SIO_SET_FLOW_CTRL 2 /* Set flow control register */
#define FTDI_SIO_SET_BAUD_RATE 3 /* Set baud rate */
#define FTDI_SIO_SET_DATA 4 /* Set the data characteristics of the port */
-#define FTDI_SIO_GET_MODEM_STATUS 5 /* Retrieve current value of modern status register */
+#define FTDI_SIO_GET_MODEM_STATUS 5 /* Retrieve current value of modem status register */
#define FTDI_SIO_SET_EVENT_CHAR 6 /* Set the event character */
#define FTDI_SIO_SET_ERROR_CHAR 7 /* Set the error character */
#define FTDI_SIO_SET_LATENCY_TIMER 9 /* Set the latency timer */
#define FTDI_SIO_GET_LATENCY_TIMER 10 /* Get the latency timer */
-/* Interface indicies for FT2232, FT2232H and FT4232H devices*/
+/* Interface indices for FT2232, FT2232H and FT4232H devices */
#define INTERFACE_A 1
#define INTERFACE_B 2
#define INTERFACE_C 3
@@ -270,7 +270,7 @@
* BmRequestType: 0100 0000b
* bRequest: FTDI_SIO_SET_FLOW_CTRL
* wValue: Xoff/Xon
- * wIndex: Protocol/Port - hIndex is protocl / lIndex is port
+ * wIndex: Protocol/Port - hIndex is protocol / lIndex is port
* wLength: 0
* Data: None
*
diff -Naur linux-2.6.33.2/drivers/usb/serial/ftdi_sio_ids.h linux-2.6.33.2.patch/drivers/usb/serial/ftdi_sio_ids.h
--- linux-2.6.33.2/drivers/usb/serial/ftdi_sio_ids.h 2010-04-02 01:02:33.000000000 +0200
+++ linux-2.6.33.2.patch/drivers/usb/serial/ftdi_sio_ids.h 2010-04-25 18:40:09.930546335 +0200
@@ -22,7 +22,7 @@
#define FTDI_8U232AM_ALT_PID 0x6006 /* FTDI's alternate PID for above */
#define FTDI_8U2232C_PID 0x6010 /* Dual channel device */
#define FTDI_4232H_PID 0x6011 /* Quad channel hi-speed device */
-#define FTDI_SIO_PID 0x8372 /* Product Id SIO application of 8U100AX */
+#define FTDI_SIO_PID 0x8372 /* Product Id SIO application of 8U100AX */
#define FTDI_232RL_PID 0xFBFA /* Product ID for FT232RL */
@@ -49,7 +49,7 @@
#define LMI_LM3S_DEVEL_BOARD_PID 0xbcd8
#define LMI_LM3S_EVAL_BOARD_PID 0xbcd9
-#define FTDI_TURTELIZER_PID 0xBDC8 /* JTAG/RS-232 adapter by egnite GmBH */
+#define FTDI_TURTELIZER_PID 0xBDC8 /* JTAG/RS-232 adapter by egnite GmbH */
/* OpenDCC (www.opendcc.de) product id */
#define FTDI_OPENDCC_PID 0xBFD8
@@ -185,7 +185,7 @@
#define FTDI_ELV_TFD128_PID 0xE0EC /* ELV Temperatur-Feuchte-Datenlogger TFD 128 */
#define FTDI_ELV_FM3RX_PID 0xE0ED /* ELV Messwertuebertragung FM3 RX */
#define FTDI_ELV_WS777_PID 0xE0EE /* Conrad WS 777 */
-#define FTDI_ELV_EM1010PC_PID 0xE0EF /* Engery monitor EM 1010 PC */
+#define FTDI_ELV_EM1010PC_PID 0xE0EF /* Energy monitor EM 1010 PC */
#define FTDI_ELV_CSI8_PID 0xE0F0 /* Computer-Schalt-Interface (CSI 8) */
#define FTDI_ELV_EM1000DL_PID 0xE0F1 /* PC-Datenlogger fuer Energiemonitor (EM 1000 DL) */
#define FTDI_ELV_PCK100_PID 0xE0F2 /* PC-Kabeltester (PCK 100) */
@@ -212,8 +212,8 @@
* drivers, or possibly the Comedi drivers in some cases. */
#define FTDI_ELV_CLI7000_PID 0xFB59 /* Computer-Light-Interface (CLI 7000) */
#define FTDI_ELV_PPS7330_PID 0xFB5C /* Processor-Power-Supply (PPS 7330) */
-#define FTDI_ELV_TFM100_PID 0xFB5D /* Temperartur-Feuchte Messgeraet (TFM 100) */
-#define FTDI_ELV_UDF77_PID 0xFB5E /* USB DCF Funkurh (UDF 77) */
+#define FTDI_ELV_TFM100_PID 0xFB5D /* Temperatur-Feuchte-Messgeraet (TFM 100) */
+#define FTDI_ELV_UDF77_PID 0xFB5E /* USB DCF Funkuhr (UDF 77) */
#define FTDI_ELV_UIO88_PID 0xFB5F /* USB-I/O Interface (UIO 88) */
/*
@@ -320,7 +320,7 @@
/*
* 4N-GALAXY.DE PIDs for CAN-USB, USB-RS232, USB-RS422, USB-RS485,
- * USB-TTY activ, USB-TTY passiv. Some PIDs are used by several devices
+ * USB-TTY aktiv, USB-TTY passiv. Some PIDs are used by several devices
* and I'm not entirely sure which are used by which.
*/
#define FTDI_4N_GALAXY_DE_1_PID 0xF3C0
@@ -330,10 +330,10 @@
* Linx Technologies product ids
*/
#define LINX_SDMUSBQSS_PID 0xF448 /* Linx SDM-USB-QS-S */
-#define LINX_MASTERDEVEL2_PID 0xF449 /* Linx Master Development 2.0 */
-#define LINX_FUTURE_0_PID 0xF44A /* Linx future device */
-#define LINX_FUTURE_1_PID 0xF44B /* Linx future device */
-#define LINX_FUTURE_2_PID 0xF44C /* Linx future device */
+#define LINX_MASTERDEVEL2_PID 0xF449 /* Linx Master Development 2.0 */
+#define LINX_FUTURE_0_PID 0xF44A /* Linx future device */
+#define LINX_FUTURE_1_PID 0xF44B /* Linx future device */
+#define LINX_FUTURE_2_PID 0xF44C /* Linx future device */
/*
* Oceanic product ids
@@ -508,6 +508,20 @@
#define CONTEC_COM1USBH_PID 0x8311 /* COM-1(USB)H */
/*
+ * Contec products (http://www.contec.com)
+ * Submitted by Daniel Sangorrin
+ */
+#define CONTEC_VID 0x06CE /* Vendor ID */
+#define CONTEC_COM1USBH_PID 0x8311 /* COM-1(USB)H */
+
+/*
+ * Contec products (http://www.contec.com)
+ * Submitted by Daniel Sangorrin
+ */
+#define CONTEC_VID 0x06CE /* Vendor ID */
+#define CONTEC_COM1USBH_PID 0x8311 /* COM-1(USB)H */
+
+/*
* Definitions for B&B Electronics products.
*/
#define BANDB_VID 0x0856 /* B&B Electronics Vendor ID */
@@ -656,7 +670,7 @@
#define FALCOM_TWIST_PID 0x0001 /* Falcom Twist USB GPRS modem */
#define FALCOM_SAMBA_PID 0x0005 /* Falcom Samba USB GPRS modem */
-/* Larsen and Brusgaard AltiTrack/USBtrack */
+/* Larsen and Brusgaard AltiTrack/USBtrack */
#define LARSENBRUSGAARD_VID 0x0FD8
#define LB_ALTITRACK_PID 0x0001
@@ -985,7 +999,7 @@
#define ALTI2_N3_PID 0x6001 /* Neptune 3 */
/*
- * Dresden Elektronic Sensor Terminal Board
+ * Dresden Elektronik Sensor Terminal Board
*/
#define DE_VID 0x1cf1 /* Vendor ID */
#define STB_PID 0x0001 /* Sensor Terminal Board */

View File

@ -24,57 +24,7 @@ cp $KERNEL_CFG_FILE $LINUX/.config
sed -i -e "s|^CONFIG_INITRAMFS_SOURCE=.*$|CONFIG_INITRAMFS_SOURCE=\"$ROOT/$PKG_DIR/config/initramfs\"|" \
$LINUX/.config
if [ "$DEVTOOLS" = yes ]; then
echo "CONFIG_DEBUG_KERNEL=y" >> $LINUX/.config # needed for bootchart
echo "CONFIG_SCHEDSTATS=y" >> $LINUX/.config # needed for bootchart
echo "CONFIG_SCHED_DEBUG=y" >> $LINUX/.config # needed for bootchart
echo "# CONFIG_DEBUG_PERF_USE_VMALLOC is not set" >> $LINUX/.config
echo "# CONFIG_PCI_DEBUG is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_DRIVER is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_DEVRES is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_SHIRQ is not set" >> $LINUX/.config
echo "# CONFIG_DETECT_SOFTLOCKUP is not set" >> $LINUX/.config
echo "# CONFIG_DETECT_HUNG_TASK is not set" >> $LINUX/.config
echo "# CONFIG_TIMER_STATS is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_OBJECTS is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_KMEMLEAK is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_RT_MUTEXES is not set" >> $LINUX/.config
echo "# CONFIG_RT_MUTEX_TESTER is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_SPINLOCK is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_MUTEXES is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_LOCK_ALLOC is not set" >> $LINUX/.config
echo "# CONFIG_PROVE_LOCKING is not set" >> $LINUX/.config
echo "# CONFIG_LOCK_STAT is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_SPINLOCK_SLEEP is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_KOBJECT is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_HIGHMEM is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_INFO is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_VM is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_VIRTUAL is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_WRITECOUNT is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_LIST is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_SG is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_NOTIFIERS is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_CREDENTIALS is not set" >> $LINUX/.config
echo "# CONFIG_BOOT_PRINTK_DELAY is not set" >> $LINUX/.config
echo "# CONFIG_RCU_TORTURE_TEST is not set" >> $LINUX/.config
echo "# CONFIG_BACKTRACE_SELF_TEST is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set" >> $LINUX/.config
echo "# CONFIG_FAULT_INJECTION is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_PAGEALLOC is not set" >> $LINUX/.config
echo "# CONFIG_KGDB is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_STACKOVERFLOW is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_STACK_USAGE is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_PER_CPU_MAPS is not set" >> $LINUX/.config
echo "# CONFIG_X86_PTDUMP is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_RODATA is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_NX_TEST is not set" >> $LINUX/.config
echo "# CONFIG_CPA_DEBUG is not set" >> $LINUX/.config
echo "# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set" >> $LINUX/.config
echo "# CONFIG_MAXSMP is not set" >> $LINUX/.config
echo "# CONFIG_IOMMU_DEBUG is not set" >> $LINUX/.config
fi
# copy some extra firmware to linux tree
cp -R $PKG_DIR/firmware/* $LINUX/firmware
make -C $LINUX oldconfig

View File

@ -1 +1 @@
http://www.kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.34-rc1.tar.bz2
http://eu.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.3.tar.bz2

View File

@ -5,6 +5,7 @@
# Base
$SCRIPTS/install $MEDIACENTER
$SCRIPTS/install $MEDIACENTER-theme-Confluence
# $SCRIPTS/install $MEDIACENTER-theme-PM3-HD
# Plugins
$SCRIPTS/install plugins

View File

@ -2,5 +2,5 @@
. config/options
mkdir -p $INSTALL/usr/share/xbmc/skin/Confluence
cp -PR $PKG_BUILD/* $INSTALL/usr/share/xbmc/skin/Confluence
mkdir -p $INSTALL/usr/share/xbmc/addons/skin.confluence
cp -R $PKG_BUILD/* $INSTALL/usr/share/xbmc/addons/skin.confluence

View File

@ -1 +1 @@
http://sources.openelec.tv/svn/xbmc-theme-Confluence-29090.tar.bz2
http://sources.openelec.tv/svn/xbmc-theme-Confluence-29914.tar.bz2

View File

@ -0,0 +1,6 @@
#!/bin/sh
. config/options
mkdir -p $INSTALL/usr/share/xbmc/addons/skin.pm3-hd
cp -R $PKG_BUILD/* $INSTALL/usr/share/xbmc/addons/skin.pm3-hd

View File

@ -0,0 +1 @@
http://sources.openelec.tv/svn/xbmc-theme-PM3-HD-29914.tar.bz2

View File

@ -80,8 +80,6 @@ else
XBMC_CRYSTALHD="--disable-crystalhd"
fi
LDFLAGS="$LDFLAGS -lpython2.6"
cd $PKG_BUILD
cd xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss

View File

@ -1,12 +0,0 @@
#
# caching xbmc
#
# runlevels: openelec, textmode
if [ "$XBMC_CACHING" = "yes" ]; then
progress "caching XBMC"
cache_xbmc
fi

View File

@ -0,0 +1,24 @@
# starting XBMC
#
# runlevels: openelec
. /etc/profile
progress "starting XBMC"
XBMC_ARGS="--standalone -fs --lircdev /dev/lircd"
[ -f /usr/bin/autoupdate ] && /usr/bin/autoupdate &
while true; do
DISPLAY=:0.0 xbmc $XBMC_ARGS > /dev/null 2>&1
RET=$?
echo "Exited with code $RET"
[ "$RET" == 0 ] && sync && poweroff
[ "$RET" == 64 ] && sync && poweroff
[ "$RET" == 66 ] && sync && reboot
usleep 250000
done

View File

@ -17,6 +17,7 @@ $SCRIPTS/install libssh
$SCRIPTS/install dbus
$SCRIPTS/install hal
$SCRIPTS/install udisks
$SCRIPTS/install upower
$SCRIPTS/install ConsoleKit
$SCRIPTS/install libXt
@ -64,46 +65,47 @@ $SCRIPTS/install mysql
$SCRIPTS/install samba
PKG_DIR=`find $PACKAGES -type d -name $1`
PYTHON_LIBDIR="`ls -d $INSTALL/usr/lib/python*`"
mkdir -p $INSTALL/usr/bin
cp -PR $PKG_DIR/scripts/xbmc-session $INSTALL/usr/bin
cp -P $PKG_BUILD/xbmc.bin $INSTALL/usr/bin/xbmc
# cp -P $PKG_DIR/scripts/xbmc-session $INSTALL/usr/bin
cp -P $PKG_BUILD/tools/EventClients/Clients/XBMC\ Send/xbmc-send.py $INSTALL/usr/bin/xbmc-send
mkdir -p $INSTALL/usr/share/xbmc
cp -PR $PKG_BUILD/xbmc.bin $INSTALL/usr/share/xbmc
cp -PR $PKG_BUILD/xbmc-xrandr $INSTALL/usr/share/xbmc
cp -P $PKG_BUILD/xbmc-xrandr $INSTALL/usr/share/xbmc
mkdir -p $INSTALL/usr/share/xbmc/language
cp -PR $PKG_BUILD/language/* $INSTALL/usr/share/xbmc/language
mkdir -p $INSTALL/usr/share/xbmc/media/Fonts
cp -PR $PKG_BUILD/media/Fonts/*.ttf $INSTALL/usr/share/xbmc/media/Fonts
cp -P $PKG_BUILD/media/Fonts/*.ttf $INSTALL/usr/share/xbmc/media/Fonts
mkdir -p $INSTALL/usr/share/xbmc/media
cp -PR $PKG_BUILD/media/weather.zip $INSTALL/usr/share/xbmc/media/
cp -PR $PKG_BUILD/media/icon.png $INSTALL/usr/share/xbmc/media/
mkdir -p $INSTALL/usr/share/xbmc/skin
cp -P $PKG_BUILD/media/weather.zip $INSTALL/usr/share/xbmc/media/
cp -P $PKG_BUILD/media/icon.png $INSTALL/usr/share/xbmc/media/
cp -P $PKG_DIR/splash/Splash.png $INSTALL/usr/share/xbmc/media/
mkdir -p $INSTALL/usr/share/xbmc/sounds
cp -PR $PKG_BUILD/sounds/* $INSTALL/usr/share/xbmc/sounds
mkdir -p $INSTALL/usr/share/xbmc/system
cp -PR $PKG_BUILD/system/*linux.so $INSTALL/usr/share/xbmc/system
cp -PR $PKG_BUILD/system/*.xml $INSTALL/usr/share/xbmc/system
cp -PR $PKG_BUILD/system/*.conf $INSTALL/usr/share/xbmc/system
cp -P $PKG_BUILD/system/*linux.so $INSTALL/usr/share/xbmc/system
cp -P $PKG_BUILD/system/*.xml $INSTALL/usr/share/xbmc/system
cp -P $PKG_BUILD/system/*.conf $INSTALL/usr/share/xbmc/system
mkdir -p $INSTALL/usr/share/xbmc/system/keymaps
cp -PR $PKG_BUILD/system/keymaps/* $INSTALL/usr/share/xbmc/system/keymaps
mkdir -p $INSTALL/usr/share/xbmc/system/players/dvdplayer
cp -PR $PKG_BUILD/system/players/dvdplayer/*.so $INSTALL/usr/share/xbmc/system/players/dvdplayer
cp -P $PKG_BUILD/system/players/dvdplayer/*.so $INSTALL/usr/share/xbmc/system/players/dvdplayer
cp -PR $PKG_BUILD/system/players/dvdplayer/etc $INSTALL/usr/share/xbmc/system/players/dvdplayer
mkdir -p $INSTALL/usr/share/xbmc/system/players/paplayer
cp -PR $PKG_BUILD/system/players/paplayer/*.so $INSTALL/usr/share/xbmc/system/players/paplayer
cp -P $PKG_BUILD/system/players/paplayer/*.so $INSTALL/usr/share/xbmc/system/players/paplayer
mkdir -p $INSTALL/usr/share/xbmc/system/python
cp -PR $PKG_BUILD/system/python/*.so $INSTALL/usr/share/xbmc/system/python
cp -P $PKG_BUILD/system/python/*.so $INSTALL/usr/share/xbmc/system/python
mkdir -p $INSTALL/usr/share/xbmc/system/scrapers
cp -PR $PKG_BUILD/system/scrapers/* $INSTALL/usr/share/xbmc/system/scrapers
@ -111,6 +113,9 @@ mkdir -p $INSTALL/usr/share/xbmc/system/scrapers
mkdir -p $INSTALL/usr/share/xbmc/system/shaders
cp -PR $PKG_BUILD/system/shaders/* $INSTALL/usr/share/xbmc/system/shaders
mkdir -p $PYTHON_LIBDIR/site-packages
cp -PR $PKG_BUILD/tools/EventClients/lib/python/* $PYTHON_LIBDIR/site-packages
mkdir -p $INSTALL/usr/share/xbmc/userdata
cp -PR $PKG_BUILD/userdata/* $INSTALL/usr/share/xbmc/userdata
@ -123,4 +128,7 @@ mkdir -p $INSTALL/usr/share/xbmc/addons
# other programs needed to run
$SCRIPTS/install alsa
$SCRIPTS/install lirc
$SCRIPTS/install remote
[ ! "$LCD_DRIVER" = none ] && $SCRIPTS/install lcdproc
[ "$SENSOR_SUPPORT" = yes ] && $SCRIPTS/install lm_sensors
[ "$UPDATE_SUPPORT" = yes ] && $SCRIPTS/install autoupdate

View File

@ -1,6 +1,6 @@
diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
--- xbmc-28910/configure.in 2010-03-28 18:55:35.040753605 +0200
+++ xbmc-28910.patch/configure.in 2010-03-28 18:58:11.605628523 +0200
diff -Naur xbmc-29740/configure.in xbmc-29740.patch/configure.in
--- xbmc-29740/configure.in 2010-05-03 03:25:29.000000000 +0200
+++ xbmc-29740.patch/configure.in 2010-05-03 04:05:13.412131036 +0200
@@ -23,6 +23,8 @@
xrandr_disabled="== XRandR support disabled. SDL will be used for resolution support. =="
goom_enabled="== GOOM enabled. =="
@ -10,7 +10,7 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
pulse_not_found="== Could not find libpulse. PulseAudio support disabled. =="
pulse_disabled="== PulseAudio support manually disabled. =="
faac_not_found="== Could not find libfaac. FAAC support disabled. =="
@@ -152,6 +154,12 @@
@@ -168,6 +170,12 @@
[use_goom=$enableval],
[use_goom=no])
@ -23,7 +23,7 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
AC_PATH_PROG(CCACHE,ccache,none)
AC_ARG_ENABLE([ccache],
[AS_HELP_STRING([--enable-ccache],
@@ -531,6 +539,15 @@
@@ -579,6 +587,15 @@
fi
fi
@ -37,9 +37,9 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
+fi
+
### External libraries checks
if test "$use_external_libraries" = "yes"; then
AC_MSG_NOTICE($external_libraries_enabled)
@@ -862,6 +879,12 @@
# External FFmpeg
if test "$use_external_ffmpeg" = "yes"; then
@@ -943,6 +960,12 @@
final_message="$final_message\n GOOM:\t\tNo"
fi
@ -52,15 +52,15 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
if test "$use_pcre" = "yes"; then
final_message="$final_message\n PCRE Support:\tYes"
else
@@ -1106,6 +1129,7 @@
@@ -1181,6 +1204,7 @@
AC_SUBST(SDL_DEFINES)
AC_SUBST(BUILD_DVDCSS)
AC_SUBST(BUILD_GOOM)
+AC_SUBST(BUILD_XBMCPROJECTM)
AC_SUBST(USE_EXTERNAL_LIBRARIES)
AC_SUBST(USE_EXTERNAL_FFMPEG)
AC_SUBST(USE_EXTERNAL_LIBA52)
@@ -1451,7 +1475,7 @@
AC_SUBST(USE_EXTERNAL_LIBDTS)
@@ -1535,7 +1559,7 @@
-DSYSCONF_INSTALL_DIR:PATH="${sysconfdir}" -DSHARE_INSTALL_PREFIX:PATH="${datadir}" .
set +x
fi
@ -69,10 +69,10 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
if test "$host_vendor" != "apple" ; then
diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
--- xbmc-28910/Makefile.in 2010-03-28 17:12:32.000000000 +0200
+++ xbmc-28910.patch/Makefile.in 2010-03-28 18:58:11.636752616 +0200
@@ -105,8 +105,10 @@
diff -Naur xbmc-29740/Makefile.in xbmc-29740.patch/Makefile.in
--- xbmc-29740/Makefile.in 2010-05-03 03:25:29.000000000 +0200
+++ xbmc-29740.patch/Makefile.in 2010-05-03 04:04:11.589130864 +0200
@@ -106,8 +106,10 @@
VIS_DIRS=\
xbmc/visualizations/OpenGLSpectrum \
@ -85,7 +85,7 @@ diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
ifeq ($(findstring osx,$(ARCH)), osx)
VIS_DIRS+=xbmc/visualizations/iTunes
endif
@@ -303,7 +305,9 @@
@@ -306,7 +308,9 @@
visualizations: exports
$(MAKE) -C xbmc/visualizations/OpenGLSpectrum
$(MAKE) -C xbmc/visualizations/WaveForm

View File

@ -1,6 +1,6 @@
diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
--- xbmc-28910/configure.in 2010-03-28 19:01:27.995753591 +0200
+++ xbmc-28910.patch/configure.in 2010-03-28 19:02:17.307753519 +0200
diff -Naur xbmc-29740/configure.in xbmc-29740.patch/configure.in
--- xbmc-29740/configure.in 2010-05-03 04:06:14.609255790 +0200
+++ xbmc-29740.patch/configure.in 2010-05-03 04:07:44.163129774 +0200
@@ -25,6 +25,8 @@
goom_disabled="== GOOM disabled. =="
xbmcprojectm_enabled="== XBMCProjectM enabled. =="
@ -10,7 +10,7 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
pulse_not_found="== Could not find libpulse. PulseAudio support disabled. =="
pulse_disabled="== PulseAudio support manually disabled. =="
faac_not_found="== Could not find libfaac. FAAC support disabled. =="
@@ -160,6 +162,12 @@
@@ -176,6 +178,12 @@
[use_xbmcprojectm=$enableval],
[use_xbmcprojectm=yes])
@ -23,7 +23,7 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
AC_PATH_PROG(CCACHE,ccache,none)
AC_ARG_ENABLE([ccache],
[AS_HELP_STRING([--enable-ccache],
@@ -548,6 +556,15 @@
@@ -596,6 +604,15 @@
BUILD_XBMCPROJECTM=1
fi
@ -37,9 +37,9 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
+fi
+
### External libraries checks
if test "$use_external_libraries" = "yes"; then
AC_MSG_NOTICE($external_libraries_enabled)
@@ -885,6 +902,12 @@
# External FFmpeg
if test "$use_external_ffmpeg" = "yes"; then
@@ -966,6 +983,12 @@
final_message="$final_message\n XBMCProjectM:\tNo"
fi
@ -52,15 +52,15 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
if test "$use_pcre" = "yes"; then
final_message="$final_message\n PCRE Support:\tYes"
else
@@ -1130,6 +1153,7 @@
@@ -1205,6 +1228,7 @@
AC_SUBST(BUILD_DVDCSS)
AC_SUBST(BUILD_GOOM)
AC_SUBST(BUILD_XBMCPROJECTM)
+AC_SUBST(BUILD_RSXS)
AC_SUBST(USE_EXTERNAL_LIBRARIES)
AC_SUBST(USE_EXTERNAL_FFMPEG)
AC_SUBST(USE_EXTERNAL_LIBA52)
@@ -1529,7 +1553,7 @@
AC_SUBST(USE_EXTERNAL_LIBDTS)
@@ -1613,7 +1637,7 @@
--disable-lattice \
--disable-skyrocket
fi
@ -69,10 +69,10 @@ diff -Naur xbmc-28910/configure.in xbmc-28910.patch/configure.in
XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libbdnav/], [
if test "$host_vendor" = "apple" ; then
diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
--- xbmc-28910/Makefile.in 2010-03-28 19:01:27.997753604 +0200
+++ xbmc-28910.patch/Makefile.in 2010-03-28 19:02:17.308751221 +0200
@@ -100,8 +100,10 @@
diff -Naur xbmc-29740/Makefile.in xbmc-29740.patch/Makefile.in
--- xbmc-29740/Makefile.in 2010-05-03 04:06:14.610256210 +0200
+++ xbmc-29740.patch/Makefile.in 2010-05-03 04:07:08.523256011 +0200
@@ -101,8 +101,10 @@
lib/xbmc-dll-symbols \
lib/jsoncpp/jsoncpp/src/lib_json
@ -85,7 +85,7 @@ diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
VIS_DIRS=\
xbmc/visualizations/OpenGLSpectrum \
@@ -317,7 +319,9 @@
@@ -320,7 +322,9 @@
endif
endif
screensavers: exports

View File

@ -0,0 +1,12 @@
diff -Naur xbmc-29740/configure.in xbmc-29740.patch/configure.in
--- xbmc-29740/configure.in 2010-05-03 04:08:41.115131030 +0200
+++ xbmc-29740.patch/configure.in 2010-05-03 04:12:20.116129219 +0200
@@ -499,7 +499,7 @@
AC_DEFUN([XB_FIND_SONAME],
[
AC_MSG_CHECKING([for lib$2 soname])
- $1_SONAME=$( gcc -print-file-name=lib$2.so | \
+ $1_SONAME=$( $CC -print-file-name=lib$2.so | \
while read output; do objdump -p $output | \
grep "SONAME" | \
sed -e 's/ \+SONAME \+//'; done 2> /dev/null )

View File

@ -1,7 +1,7 @@
diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
--- xbmc-28910/Makefile.in 2010-03-28 19:09:49.356628842 +0200
+++ xbmc-28910.patch/Makefile.in 2010-03-28 19:28:17.265753408 +0200
@@ -495,7 +495,7 @@
diff -Naur xbmc-29740/Makefile.in xbmc-29740.patch/Makefile.in
--- xbmc-29740/Makefile.in 2010-05-03 04:08:41.116131093 +0200
+++ xbmc-29740.patch/Makefile.in 2010-05-03 04:16:42.386130163 +0200
@@ -497,7 +497,7 @@
$(MAKE) -C tools/TexturePacker/
install-bin: xbmc.bin # developement convenience target
@ -10,7 +10,7 @@ diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
ifeq ($(findstring osx,$(ARCH)), osx)
# TODO: add osx install
@@ -503,55 +503,55 @@
@@ -505,53 +505,53 @@
install: install-binaries install-arch install-datas install-web
install-binaries: install-scripts
@ -25,8 +25,8 @@ diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
install-arch:
@# Arch dependent files
- @find system screensavers visualisations -regextype posix-extended -type f -not -iregex ".*svn.*|.*win32(dx)?\.vis|.*osx\.vis" -iregex ".*$(ARCH).*|.*\.vis|.*\.xbs" -exec install -D "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
+ @find system screensavers visualisations -regextype posix-extended -type f -not -iregex ".*svn.*|.*win32(dx)?\.vis|.*osx\.vis" -iregex ".*$(ARCH).*|.*\.vis|.*\.xbs" -exec install -D "{}" $(DESTDIR)/$(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
- @find system addons -regextype posix-extended -type f -not -iregex ".*svn.*|.*win32(dx)?\.vis|.*osx\.vis" -iregex ".*$(ARCH).*|.*\.vis|.*\.xbs" -exec install -D "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
+ @find system addons -regextype posix-extended -type f -not -iregex ".*svn.*|.*win32(dx)?\.vis|.*osx\.vis" -iregex ".*$(ARCH).*|.*\.vis|.*\.xbs" -exec install -D "{}" $(DESTDIR)/$(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
install-scripts:
- @install -D tools/Linux/xbmc.sh $(prefix)/bin/xbmc
@ -49,9 +49,6 @@ diff -Naur xbmc-28910/Makefile.in xbmc-28910.patch/Makefile.in
@# Arch independent files
- @find addons language media scripts sounds userdata system -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.so|.*\.dll|.*\.pyd|.*python/.*\.zlib" -exec install -D -m 0644 "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
+ @find addons language media scripts sounds userdata system -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.so|.*\.dll|.*\.pyd|.*python/.*\.zlib" -exec install -D -m 0644 "{}" $(DESTDIR)/$(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
@# Skins
- @find skin -regextype posix-extended -type f -not -iregex '.*/\.svn/.*|^skin/[^/]*/media/.*[^x][^b][^t]' -exec install -D -m 0644 '{}' $(prefix)/share/xbmc/'{}' \; -printf " -- %-75.75f\r"
+ @find skin -regextype posix-extended -type f -not -iregex '.*/\.svn/.*|^skin/[^/]*/media/.*[^x][^b][^t]' -exec install -D -m 0644 '{}' $(DESTDIR)/$(prefix)/share/xbmc/'{}' \; -printf " -- %-75.75f\r"
@# Icons and links
- @mkdir -p $(prefix)/share/applications $(prefix)/share/pixmaps
- @cp -a tools/Linux/xbmc.png $(prefix)/share/pixmaps/

View File

@ -0,0 +1,12 @@
diff -Naur xbmc-29490/userdata/LCD.xml xbmc-29490.patch/userdata/LCD.xml
--- xbmc-29490/userdata/LCD.xml 2010-04-24 22:42:45.000000000 +0200
+++ xbmc-29490.patch/userdata/LCD.xml 2010-04-27 17:26:02.946045110 +0200
@@ -21,7 +21,7 @@
<line>Freemem: $INFO[System.FreeMemory]</line>
</video>
<general>
- <line>XBMC running...</line>
+ <line>*** OpenELEC.tv ***</line>
<line>$INFO[System.Time] $INFO[System.Date]</line>
<line>Freemem: $INFO[System.FreeMemory]</line>
<line>$INFO[System.ScreenWidth]x$INFO[System.ScreenHeight] $INFO[System.ScreenMode]</line>

View File

@ -0,0 +1,52 @@
diff -Naur xbmc-29490/system/Lircmap.xml xbmc-29490.patch/system/Lircmap.xml
--- xbmc-29490/system/Lircmap.xml 2010-04-24 22:45:26.000000000 +0200
+++ xbmc-29490.patch/system/Lircmap.xml 2010-04-28 22:00:13.734656322 +0200
@@ -362,4 +362,48 @@
<recordedtv>recordlist</recordedtv>
<title>teletext</title>
</remote>
+ <remote device="mediacenter">
+ <pause>pause</pause>
+ <stop>stop</stop>
+ <forward>fwd</forward>
+ <reverse>rew</reverse>
+ <left>left</left>
+ <right>right</right>
+ <up>up</up>
+ <down>down</down>
+ <select>ok</select>
+ <pageplus>ch+</pageplus>
+ <pageminus>ch-</pageminus>
+ <back>back</back>
+ <menu>clear</menu>
+ <title>play</title>
+ <info>info</info>
+ <skipplus>next</skipplus>
+ <skipminus>prev</skipminus>
+ <display>teletext</display>
+ <start>ehome</start>
+ <record>rec</record>
+ <volumeplus>vol+</volumeplus>
+ <volumeminus>vol-</volumeminus>
+ <mute>mute</mute>
+ <power>power</power>
+ <myvideo>video</myvideo>
+ <mymusic>music</mymusic>
+ <mypictures>pictures</mypictures>
+ <mytv>tv</mytv>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+ <mytv>red</mytv>
+ <mymusic>green</mymusic>
+ <mypictures>yellow</mypictures>
+ <myvideo>blue</myvideo>
+ </remote>
</lircmap>

View File

@ -1,28 +0,0 @@
#!/bin/sh
. /etc/profile
XBMC_ARGS="--standalone -fs --lircdev /dev/lircd"
if test "$XBMC_CACHING" = "yes" ; then
wait_for_xbmc_cache
XBMC_BIN="/var/cache/bin/xbmc.bin"
else
XBMC_BIN="/usr/share/xbmc/xbmc.bin"
fi
while true; do
if [ "$START_WM" = "yes" ]; then
$WINDOWMANAGER &
fi
$IONICE $XBMC_BIN $XBMC_ARGS $@ > /dev/null 2>&1
RET=$?
echo "Exited with code $RET"
[ "$RET" == 0 ] && sync && poweroff
[ "$RET" == 64 ] && sync && poweroff
[ "$RET" == 66 ] && sync && reboot
done

View File

Before

Width:  |  Height:  |  Size: 292 KiB

After

Width:  |  Height:  |  Size: 292 KiB

View File

@ -1 +1 @@
http://sources.openelec.tv/svn/xbmc-29090.tar.bz2
http://sources.openelec.tv/svn/xbmc-29914.tar.bz2

Some files were not shown because too many files have changed in this diff Show More