summaryrefslogtreecommitdiff
path: root/linux/drivers/media
AgeCommit message (Collapse)Author
2008-04-30Use the same name convention for all tuners under common/tunersMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Auto generated by this script: for i in `find drivers/media/ -name Kconfig`; do cat $i |\ sed s,DVB_CORE_ATTACH,MEDIA_ATTACH,g |\ sed s,VIDEO_TUNER,MEDIA_TUNER,g |\ sed s,TUNER_SIMPLE,MEDIA_TUNER_SIMPLE,g |\ sed s,TUNER_TDA8290,MEDIA_TUNER_TDA8290,g |\ sed s,DVB_TDA827X,MEDIA_TUNER_TDA827X,g |\ sed s,DVB_TDA18271,MEDIA_TUNER_TDA18271,g |\ sed s,TUNER_TDA9887,MEDIA_TUNER_TDA9887,g |\ sed s,TUNER_TEA5761,MEDIA_TUNER_TEA5761,g |\ sed s,TUNER_TEA5767,MEDIA_TUNER_TEA5767,g |\ sed s,TUNER_MT20XX,MEDIA_TUNER_MT20XX,g |\ sed s,DVB_TUNER_MT2060,MEDIA_TUNER_MT2060,g |\ sed s,DVB_TUNER_MT2266,MEDIA_TUNER_MT2266,g |\ sed s,DVB_TUNER_MT2131,MEDIA_TUNER_MT2131,g |\ sed s,DVB_TUNER_QT1010,MEDIA_TUNER_QT1010,g |\ sed s,TUNER_XC2028,MEDIA_TUNER_XC2028,g |\ sed s,DVB_TUNER_XC5000,MEDIA_TUNER_XC5000,g >/tmp/temp_mv$$ mv /tmp/temp_mv$$ $i done for i in `find drivers/media/ -type f`; do cat $i |\ sed s,CONFIG_DVB_CORE_ATTACH,CONFIG_MEDIA_ATTACH,g |\ sed s,CONFIG_VIDEO_TUNER,CONFIG_MEDIA_TUNER,g |\ sed s,CONFIG_TUNER_SIMPLE,CONFIG_MEDIA_TUNER_SIMPLE,g |\ sed s,CONFIG_TUNER_TDA8290,CONFIG_MEDIA_TUNER_TDA8290,g |\ sed s,CONFIG_DVB_TDA827X,CONFIG_MEDIA_TUNER_TDA827X,g |\ sed s,CONFIG_DVB_TDA18271,CONFIG_MEDIA_TUNER_TDA18271,g |\ sed s,CONFIG_TUNER_TDA9887,CONFIG_MEDIA_TUNER_TDA9887,g |\ sed s,CONFIG_TUNER_TEA5761,CONFIG_MEDIA_TUNER_TEA5761,g |\ sed s,CONFIG_TUNER_TEA5767,CONFIG_MEDIA_TUNER_TEA5767,g |\ sed s,CONFIG_TUNER_MT20XX,CONFIG_MEDIA_TUNER_MT20XX,g |\ sed s,CONFIG_DVB_TUNER_MT2060,CONFIG_MEDIA_TUNER_MT2060,g |\ sed s,CONFIG_DVB_TUNER_MT2266,CONFIG_MEDIA_TUNER_MT2266,g |\ sed s,CONFIG_DVB_TUNER_MT2131,CONFIG_MEDIA_TUNER_MT2131,g |\ sed s,CONFIG_DVB_TUNER_QT1010,CONFIG_MEDIA_TUNER_QT1010,g |\ sed s,CONFIG_TUNER_XC2028,CONFIG_MEDIA_TUNER_XC2028,g |\ sed s,CONFIG_DVB_TUNER_XC5000,CONFIG_MEDIA_TUNER_XC5000,g >/tmp/temp_mv$$ mv /tmp/temp_mv$$ $i done Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-30backport tuners move patch from -gitMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Due to the feedback I got, I've changed the -git patch. This needs to be reflected also at -hg tree. kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-29cx88: Fix a warningMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> drivers/media/video/cx88/cx88-i2c.c: In function 'attach_inform': drivers/media/video/cx88/cx88-i2c.c:102: warning: unused variable 'tun_setup' Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-29merge:http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-28tuner: remove static dependencies on analog tuner sub-modulesMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-04-28merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-cx18Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-28cx18: new driver for the Conexant CX23418 MPEG encoder chipHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Many thanks to Steve Toth from Hauppauge and Nattu Dakshinamurthy from Conexant for their support. I am in particular thankful to Hauppauge since without their help this driver would not exist. It should also be noted that Steve did the work to get the DVB part up and running. Thank you! Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: G. Andrew Walls <awalls@radix.net>
2008-04-28ivtv: correct misspelled "HIMEM4G" to "HIGHMEM4G" in error messageHans Verkuil
From: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-04-28[2.6 patch] make mt9{m001,v022}_controls[] staticAdrian Bunk
This patch makes the needlessly global mt9{m001,v022}_controls[] static. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/mt9m001.c | 2 +- drivers/media/video/mt9v022.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) d7560162fe24391e091574b08b25ac124369fb7b diff --git a/linux/drivers/media/video/mt9m001.c b/linux/drivers/media/video/mt9m001.c index 3fb5f63..04864cf 100644
2008-04-28 make itd1000_fre_values[] static constMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> itd1000_fre_values[] can become static const. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-05 cx18/: possible cleanupsMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> This patch contains the following possible cleanups: - cx18-i2c.c should #include "cx18-i2c.h" for getting the prototypes of it's global functions - make the following needlessly global functions static: - cx18-fileops.c:cx18_claim_stream() - cx18-fileops.c:cx18_release_stream() - cx18-queue.c:cx18_queue_move() - remove the following unused functions: - cx18-driver.c:cx18_waitq() - cx18-queue.c:cx18_buf_copy_from_user() Signed-off-by: Adrian Bunk <bunk@kernel.org> Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06Fix FW_LOADER depencency at v4l/dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Since: 1) FW_LOADER is defined as: config FW_LOADER tristate "Userspace firmware loading support" depends on HOTPLUG 2) several V4L/DVB driver just selects it; 3) select is not smart enough to auto-select HOTPLUG, if select FW_LOADER. So, All drivers that select FW_LOADER should also depend on HOTPLUG. An easier solution (for the end-user perspective) would be to "select HOTPLUG". However, live is not simple. This would cause recursive dependency issues like this one: drivers/usb/Kconfig:62:error: found recursive dependency: USB -> USB_OHCI_HCD -> I2C -> MEDIA_TUNER -> MEDIA_TUNER_XC2028 -> HOTPLUG -> PCCARD -> PCMCIA -> USB_ARCH_HAS_HCD -> MOUSE_APPLETOUCH -> USB Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06DRX depends on HOTPLUG, due to FW_LOADER dependencyMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06cx88: fix Kconfig depencencies for FW_LOADERMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> cx88 doesn't need support for FW_LOADER. Instead, this is required only for cx88-blackbird. Also, cx88-blackbird depends on HOTPLUG, due to FW_LOADER dependency. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06Fix dependencies for tuner-xc2028 and em28xx-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> em28xx-dvb doesn't need FW_LOADER. Instead, tuner-xc2028 needs to select FW_LOADER. Also, this can happen only if HOTPLUG is selected, since FW_LOADER is dependent on HOTPLUG. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06Simplifies Kconfig rules.Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Since all tuners are dependent of I2C, move I2C dependency to MEDIA_TUNER. Also, simplifies the dependencies for the other Kconfig items. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06Re-creates VIDEO_TUNERMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> VIDEO_TUNER is responsible for compilation of tuners.ko module. This were the previous behaviour before the creation of MEDIA_TUNER. Before this patch, tuner.ko were created even for drivers that don't need a tuner (like webcam drivers). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06merge: http://linuxtv.org/hg/~mkrufky/tda18271Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-04tda18271: add tda_fail macro to log error casesMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-04 cinergyT2 build fixMauro Carvalho Chehab
From: Ingo Molnar <mingo@elte.hu> x86.git testing found the following build bug in v2.6.26-rc1: drivers/built-in.o: In function `cinergyt2_probe': cinergyT2.c:(.text+0xb6117): undefined reference to `input_allocate_device' cinergyT2.c:(.text+0xb6230): undefined reference to `input_register_device' cinergyT2.c:(.text+0xb623d): undefined reference to `input_free_device' with the following config: http://redhat.com/~mingo/misc/config-Sun_May__4_22_06_54_CEST_2008.bad The reason for the bug is that the cinergyT2 driver depends on CONFIG_INPUT functionality, but if INPUT is modular it's still possible to build CONFIG_DVB_CINERGYT2=y - which leads to missing symbols. The solution is to make DVB_CINERGYT2 dependent on INPUT. [ This solves the build problem - i have not tested the driver on this card. ] Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-05 multimedia/video: fix au0828 KconfigMauro Carvalho Chehab
From: Randy Dunlap <randy.dunlap@oracle.com> Fix undefined references in au0828: depends on USB and select VIDEO_TVEEPROM Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-04tda18271: fix error handling in tda18271c1_rf_tracking_filter_calibrationMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-04tda18271: fix error handling in tda18271c2_rf_tracking_filters_correctionMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-04tda18271: fix error handling in tda18271_channel_configurationMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-04tda18271: make tda18271_set_standby_mode less verbose for basic debugMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Only show debug from tda18271_set_standby_mode if DBG_ADV is set. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-04tda18271: abort rf band calibration loop on errorsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Abort rf band calibration loop for the TDA18271HD/C2 if an error is detected. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-03 build fix for drivers/media/video/au0828Mauro Carvalho Chehab
From: Ingo Molnar <mingo@elte.hu> x86.git testing found the following build failure in v2.6.26-rc1: MODPOST 424 modules ERROR: "tveeprom_hauppauge_analog" [drivers/media/video/au0828/au0828.ko] undefined! ERROR: "tveeprom_read" [drivers/media/video/au0828/au0828.ko] undefined! with this config: http://redhat.com/~mingo/misc/config-Sat_May__3_22_28_58_CEST_2008.bad this patch does what other video drivers do to utilize the VIDEO_TVEEPROM functionality (and this resolves the build problem) - but i have not checked it on real hardware and i have not checked whether the fix is complete. selections, so some items might still be missing - just not triggered with this specific config. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06merge: http://linuxtv.org/hg/~mkrufky/xc5000Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06merge: http://linuxtv.org/hg/~endriss/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-05xc5000: MEDIA_TUNER_XC5000 must select FW_LOADERMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Fix the following build error: drivers/built-in.o: In function `xc_load_fw_and_init_tuner': xc5000.c:(.text+0x2dacd): undefined reference to `request_firmware' xc5000.c:(.text+0x2daf0): undefined reference to `release_firmware' xc5000.c:(.text+0x2db85): undefined reference to `release_firmware' make[1]: *** [.tmp_vmlinux1] Error 1 Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-03tda18271: fix error handling in tda18271c2_rf_cal_init pathMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> fix error handling in tda18271c2_rf_cal_init immediate path Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-03tda18271: fix error handling in init and sleep pathsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-03dvb_ca_en50221: Fix High CPU load in 'top' due to budget_av slot pollingOliver Endriss
From: Robert Schedel <r.schedel@yahoo.de> This change addresses kernel bug #10459: In kernel 2.6.25 the budget_av driver polls for an CI slot in 100ms intervals (because no interrupt solution for budget_av cards is feasible due to HW reasons). If no CI/CAM is connected to the DVB card, polling times out only after 250ms. This periodic polling leads to high CPU load. The change increases the polling interval for empty slots from 100ms to 5s. Intervals for remaining slot states (invalid, in progress, ready) are unchanged, as they are either temporary conditions or no timeout should occur. Signed-off-by: Robert Schedel <r.schedel@yahoo.de> Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2008-05-02cx23885: remove remaining references to dvb-pllMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> The cx23885 driver used to use dvb-pll for LG-TDVS-H064F support on the FusionHDTV5 Express. This has since been converted to use tuner-simple instead, once digital tuning support was added to tuner-simple. Since cx23885 no longer uses dvb-pll, remove the #include "dvb-pll.h", and the DVB_PLL Kconfig selection. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-02cx23885: update model matrix for Hauppauge WinTV HVR-1200 & WinTV HVR-1700Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-02cx23885: add missing subsystem ID for Hauppauge HVR-1200 OEMMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-05-01cx18/ivtv: improve and fix out-of-memory handlingHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> - don't show kernel backtrace when the allocation of the buffers fails: the normal ivtv/cx18 messages are clear enough and the backtrace scares users. - fix cleanup after the buffer allocation fails (caused kernel panic). Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-05-01ivtv/cx18: fix compile warningsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Fix compile warnings if MODULE is not defined. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-05-01ivtv: prefix ivtv external functions with ivtv_Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Fix conflict with cx18 driver. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-04-28ivtv: POLLHUP must be returned on eof.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-04-28 fix SOC_CAMERA_MT9M001 build bugMauro Carvalho Chehab
From: Ingo Molnar <mingo@elte.hu> on latest -git, with this config: http://redhat.com/~mingo/misc/config-Mon_Apr_28_13_25_34_CEST_2008.bad CONFIG_SOC_CAMERA_MT9M001=y CONFIG_SOC_CAMERA_MT9V022=y # CONFIG_I2C is not set the build fails: drivers/built-in.o: In function `reg_read': mt9m001.c:(.text+0x140a87): undefined reference to `i2c_smbus_read_word_data' drivers/built-in.o: In function `reg_write': mt9m001.c:(.text+0x140b6e): undefined reference to `i2c_smbus_write_word_data' drivers/built-in.o: In function `reg_read': mt9v022.c:(.text+0x1413a7): undefined reference to `i2c_smbus_read_word_data' drivers/built-in.o: In function `reg_write': mt9v022.c:(.text+0x1414ce): undefined reference to `i2c_smbus_write_word_data' drivers/built-in.o: In function `mt9m001_mod_init': mt9m001.c:(.init.text+0x158a8): undefined reference to `i2c_register_driver' drivers/built-in.o: In function `mt9v022_mod_init': mt9v022.c:(.init.text+0x158b8): undefined reference to `i2c_register_driver' drivers/built-in.o: In function `mt9m001_mod_exit': mt9m001.c:(.exit.text+0x1656): undefined reference to `i2c_del_driver' drivers/built-in.o: In function `mt9v022_mod_exit': mt9v022.c:(.exit.text+0x1666): undefined reference to `i2c_del_driver' adding the missing I2C dependency fixes it. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-28 drivers/media/dvb/frontends/s5h1420.c: printk fixMauro Carvalho Chehab
From: Andrew Morton <akpm@linux-foundation.org> drivers/media/dvb/frontends/s5h1420.c: In function `s5h1420_setsymbolrate': drivers/media/dvb/frontends/s5h1420.c:484: warning: long long unsigned int format, u64 arg (arg 2) We do not know what type the architecture uses for u64. Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-27pvrusb2: Driver is no longer experimentalMike Isely
From: Mike Isely <isely@pobox.com> This driver has been in-kernel and reasonably stable for well over a year. It is in a stable form and is known to work well. Remove its experimental status. Signed-off-by: Mike Isely <isely@pobox.com>
2008-04-27pvrusb2-dvb: include dvb support by default and update Kconfig help textMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mike Isely <isely@pobox.com>
2008-04-27pvrusb2: always enable support for OnAir Creator / HDTV USB2Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> This was a build option in the past, to avoid conflicts with the cxusb module for digital televsion support. Now that dtv mode support has been merged into pvrusb2, the OnAir devices are fully supported by this single module. This no longer should be a build option. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mike Isely <isely@pobox.com>
2008-04-26pvrusb2-dvb: quiet down noise in kernel log for feed debugMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Get rid of the noise in dmesg during dvb feed changes, unless the appropriate debug trace flag is enabled. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Reviewed-by: Mike Isely <isely@pobox.com>
2008-04-26those kernel-sync didn't merged. Apply manuallyMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-26videobuf-core: backport brandon's patchMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> I and Brandon did similar patches. As Brandon patch where older, I've preserved his patch at -git. However, the patches weren't equal. kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-26backport changeset f000fd80937c0d94c67f9f3e7026f1fbc8ef8873Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Author: Jeff Garzik <jgarzik@redhat.com> [ALSA] Fix synchronize_irq() bugs, redundancies free_irq() calls synchronize_irq() for you, so there is no need for drivers to manually do the same thing (again). Thus, calls where sync-irq immediately precedes free-irq can be simplified. However, during this audit several bugs were noticed, where free-irq is preceded by a "irq >= 0" check... but the sync-irq call is not covered by the same check. So, where sync-irq could not be eliminated completely, the missing check was added. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>