From defa3edd60084d83303b9d17251493ad3da486c8 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Wed, 3 Sep 2008 09:49:20 +0100 Subject: backport commit aa7a7fb3990ffc74945494cbd2fc6e920825ee2c MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: Mauro Carvalho Chehab Author: David Woodhouse Define and use PCI_DEVICE_ID_MARVELL_88ALP01_CCIC for CAFÉ camera driver Also, stop looking at the NAND controller (0x4100) and checking the device class. For a while during development, all three functions on the chip had the same ID. We made them fix that fairly promptly, and we can forget about it now. Priority: normal Signed-off-by: Mauro Carvalho Chehab --- v4l/compat.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'v4l') diff --git a/v4l/compat.h b/v4l/compat.h index 0e2ccd7a9..f3dfceafe 100644 --- a/v4l/compat.h +++ b/v4l/compat.h @@ -250,4 +250,8 @@ static inline int list_is_singular(const struct list_head *head) #define snd_BUG_ON(cond) WARN((cond), "BUG? (%s)\n", __stringify(cond)) #endif +#ifndef PCI_DEVICE_ID_MARVELL_88ALP01_CCIC +#define PCI_DEVICE_ID_MARVELL_88ALP01_CCIC 0x4102 +#endif + #endif -- cgit v1.2.3 From ec60228e845ea89c0f4e3e5b2a0d7f3ce832f182 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Fri, 24 Oct 2008 08:44:03 -0200 Subject: Fix compilation with RHEL 5.2 kernel From: Mauro Carvalho Chehab RHEL 5 already declares bool. Still, there are some warnings that probably indicate that something else needs to be done for the code to work with RHEL5. Priority: normal Signed-off-by: Mauro Carvalho Chehab --- v4l/compat.h | 2 ++ v4l/scripts/make_config_compat.pl | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) (limited to 'v4l') diff --git a/v4l/compat.h b/v4l/compat.h index f3dfceafe..7325e15c4 100644 --- a/v4l/compat.h +++ b/v4l/compat.h @@ -55,7 +55,9 @@ #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) #define PCIAGP_FAIL 0 #define vmalloc_32_user(a) vmalloc_32(a) +#endif +#ifdef NEED_BOOL_TYPE /* bool type and enum-based definition of true and false was added in 2.6.19 */ typedef int bool; #define true 1 diff --git a/v4l/scripts/make_config_compat.pl b/v4l/scripts/make_config_compat.pl index e538c925b..bd34e7193 100755 --- a/v4l/scripts/make_config_compat.pl +++ b/v4l/scripts/make_config_compat.pl @@ -83,12 +83,32 @@ sub check_snd_ctl_boolean_mono_info() close INNET; } +sub check_bool() +{ + my $file = "$kdir/include/linux/types.h"; + my $old_syntax = 1; + + open INDEP, "<$file" or die "File not found: $file"; + while () { + if (m/^\s*typedef.*bool;/) { + $old_syntax = 0; + last; + } + } + + if ($old_syntax) { + $out.= "\n#define NEED_BOOL_TYPE 1\n"; + } + close INDEP; +} + sub check_other_dependencies() { check_spin_lock(); check_sound_driver_h(); check_snd_ctl_boolean_mono_info(); check_snd_pcm_rate_to_rate_bit(); + check_bool(); } # Do the basic rules -- cgit v1.2.3 From 9ac1186d1b2315e2d06b234777d6af07e9170396 Mon Sep 17 00:00:00 2001 From: Thierry MERLE Date: Thu, 23 Oct 2008 23:18:30 +0200 Subject: CinergyT2: on v4l-dvb update, remove the old cinergyT2 driver if present From: Thierry MERLE If a user installs the new CinergyT2 driver, on an kernel on which the old driver is present, the make install procedure does not remove the old driver if present. Just adding an entry in v4l/obsolete.txt does the trick for the user. Priority: normal Signed-off-by: Thierry MERLE --- v4l/obsolete.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'v4l') diff --git a/v4l/obsolete.txt b/v4l/obsolete.txt index e720a48b8..b495f6d96 100644 --- a/v4l/obsolete.txt +++ b/v4l/obsolete.txt @@ -4,6 +4,9 @@ video/video-buf # This file were replaced by videobuf-dvb video/video-buf-dvb +#This driver has been reworked and moved to dvb-usb +dvb/cinergyT2/cinergyT2 + # Those drivers were moved to common/tuners dvb/frontends/mt2060 dvb/frontends/mt2131 -- cgit v1.2.3 From 3c1b08410ee59c3b4f2ce840babb09c5a3beebd2 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sat, 25 Oct 2008 01:21:57 -0200 Subject: Improve make install to work properly with a distro that use non-standard dir for V4L/DVB modules From: Mauro Carvalho Chehab One distro stores kernel/drivers/media files on non-standard dirs. I can't see any logical rule for, once having the kernel original dir position, determine were the kernel driver were placed on that distro. For example, they put xc5000.ko driver inside /media/au0828, while the expected place would be something like /media/common/tuners. So, this patch do some tricks, when "make rminstall" or "make install" is called: 1) detect if it is such distro; 2) if so, it will run something like: find /media -name -exec rm '{}' \; where is the official V4L/DVB name for the compiled modules, and is the distro non-standard dir. This should remove the new V4L/DVB .ko modules that are located at the non-standard dir or inside one of its sub-directories. NOTICE: If there are other V4L/DVB drivers there that (1) aren't inside V4L/DVB tree; (2) weren't selected to compile; then those drivers will likely stop working. This patch doesn't affect the other distros. Priority: normal Signed-off-by: Mauro Carvalho Chehab --- v4l/scripts/make_makefile.pl | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'v4l') diff --git a/v4l/scripts/make_makefile.pl b/v4l/scripts/make_makefile.pl index 82821b43b..ac1b6cac0 100755 --- a/v4l/scripts/make_makefile.pl +++ b/v4l/scripts/make_makefile.pl @@ -157,6 +157,33 @@ sub removeobsolete() } } +# +# Special hack for Ubuntu with their backport mess +# +sub removeubuntu() +{ + my $dest = "/lib/modules/\$(KERNELRELEASE)/ubuntu/media"; + my $filelist; + + while ( my ($dir, $files) = each(%instdir) ) { + $filelist .= join(' ', keys %$files); + } + while ( my ($dir, $files) = each(%obsolete) ) { + $filelist .= join(' ', keys %$files); + } + $filelist =~ s/\s+$//; + + print OUT "\t\@if [ -d $dest ]; then "; + print OUT "printf \"\\nHmm... distro kernel with a non-standard place for module backports detected.\\n"; + print OUT "Please always prefer to use vanilla upstream kernel with V4L/DVB\\n"; + print OUT "I'll try to remove old/obsolete LUM files from $dest:\\n\"; "; + print OUT "files='", $filelist, "'; "; + + print OUT "for i in \$\$files;do find \"$dest\" \-name \"\$\$i\" \-exec echo \'{}\' \';\' ;"; + print OUT " find \"$dest\" \-name \"\$\$i\" \-exec rm \'{}\' \';\' ;"; + print OUT " done;"; + print OUT " fi\n"; +} getobsolete(); @@ -169,6 +196,7 @@ print OUT "\t\@echo \"Stripping debug info from files\"\n"; print OUT "\t\@strip --strip-debug \$(inst-m)\n\n"; removeobsolete(); +removeubuntu(); print OUT "\t\@echo \"Installing kernel modules under \$(DESTDIR)\$(KDIR26)/:\"\n"; @@ -191,8 +219,8 @@ print OUT "\t/sbin/depmod -a \$(KERNELRELEASE) \$(if \$(DESTDIR),-b \$(DESTDIR)) print OUT "media-rminstall::\n"; removeobsolete(); +removeubuntu(); -print OUT "\t\@echo -e \"\\nRemoving old \$(DEST) files\\n\"\n"; while ( my ($dir, $files) = each(%instdir) ) { print OUT "\t\@echo -e \"\\nRemoving old \$(KDIR26)/$dir files:\"\n"; print OUT "\t\@files='", join(' ', keys %$files), "'; "; -- cgit v1.2.3 From f46b85426d01f8ce77fd9a4a036cc0345ae1c4be Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sat, 25 Oct 2008 01:34:37 -0200 Subject: A small improvement at a comment added on the latest patch From: Mauro Carvalho Chehab Priority: normal Signed-off-by: Mauro Carvalho Chehab --- v4l/scripts/make_makefile.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'v4l') diff --git a/v4l/scripts/make_makefile.pl b/v4l/scripts/make_makefile.pl index ac1b6cac0..ce6f00516 100755 --- a/v4l/scripts/make_makefile.pl +++ b/v4l/scripts/make_makefile.pl @@ -158,7 +158,7 @@ sub removeobsolete() } # -# Special hack for Ubuntu with their backport mess +# Special hack for Ubuntu with their non-standard dir # sub removeubuntu() { -- cgit v1.2.3