aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-06-23ipv6: Use correct data types for ICMPv6 type and codeBrian Haley20-38/+38
Change all the code that deals directly with ICMPv6 type and code values to use u8 instead of a signed int as that's the actual data type. Signed-off-by: Brian Haley <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-06-23net: let KS8842 driver depend on HAS_IOMEMHeiko Carstens1-0/+1
Fixes this compile error on s390: CC drivers/net/ks8842.o drivers/net/ks8842.c: In function 'ks8842_select_bank': drivers/net/ks8842.c:124: error: implicit declaration of function 'iowrite16' drivers/net/ks8842.c: In function 'ks8842_write8': drivers/net/ks8842.c:131: error: implicit declaration of function 'iowrite8' Cc: Richard Rojfors <[email protected]> Signed-off-by: Heiko Carstens <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-06-23can: let SJA1000 driver depend on HAS_IOMEMHeiko Carstens1-1/+1
Fixes this compile error on s390: drivers/net/can/sja1000/sja1000_platform.c: In function 'sp_read_reg': drivers/net/can/sja1000/sja1000_platform.c:42: error: implicit declaration of function 'ioread8' drivers/net/can/sja1000/sja1000_platform.c: In function 'sp_write_reg': drivers/net/can/sja1000/sja1000_platform.c:47: error: implicit declaration of function 'iowrite8' drivers/net/can/sja1000/sja1000_platform.c: In function 'sp_probe': drivers/net/can/sja1000/sja1000_platform.c:79: error: implicit declaration of function 'ioremap_nocache' Cc: Wolfgang Grandegger <[email protected]> Cc: Oliver Hartkopp <[email protected]> Signed-off-by: Heiko Carstens <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-06-23netxen: fix firmware init handshakeDhananjay Phadke2-18/+22
Make sure all functions run firmware init handshake. If PCI function 0 fails to initialize firmware, mark the state failed so that other functions on the same board bail out quickly instead of waiting 30s for firmware handshake. Signed-off-by: Dhananjay Phadke <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-06-23netxen: fix build with without CONFIG_PMDhananjay Phadke1-0/+4
wrap pci suspend() and resume() with CONFIG_PM check. Signed-off-by: Dhananjay Phadke <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-06-23timers: Fix timer_migration interface which accepts any number as inputArun R Bharadwaj1-1/+4
Poornima Nayek reported: | Timer migration interface /proc/sys/kernel/timer_migration in | 2.6.30-git9 accepts any numerical value as input. | | Steps to reproduce: | 1. echo -6666666 > /proc/sys/kernel/timer_migration | 2. cat /proc/sys/kernel/timer_migration | -6666666 | | 1. echo 44444444444444444444444444444444444444444444444444444444444 > /proc/sys/kernel/timer_migration | 2. cat /proc/sys/kernel/timer_migration | -1357789412 | | Expected behavior: Should 'echo: write error: Invalid argument' while | setting any value other then 0 & 1 Restrict valid values to 0 and 1. Reported-by: Poornima Nayak <[email protected]> Tested-by: Poornima Nayak <[email protected]> Signed-off-by: Arun R Bharadwaj <[email protected]> Cc: poornima nayak <[email protected]> Cc: Arun Bharadwaj <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
2009-06-23sh: Fix up more dma-mapping fallout.Paul Mundt1-6/+6
commit dbe6f1869188b6e04e38aa861dd198befb08bcd7 ("dma-mapping: mark dma_sync_single and dma_sync_sg as deprecated" conveniently broke every single SH build. In the future it would be great if people could at least bother figuring out how to use grep. Signed-off-by: Paul Mundt <[email protected]>
2009-06-23x86: Move init_gbpages() to setup_arch()Pekka J Enberg2-17/+16
The init_gbpages() function is conditionally called from init_memory_mapping() function. There are two call-sites where this 'after_bootmem' condition can be true: setup_arch() and mem_init() via pci_iommu_alloc(). Therefore, it's safe to move the call to init_gbpages() to setup_arch() as it's always called before mem_init(). This removes an after_bootmem use - paving the way to remove all uses of that state variable. Signed-off-by: Pekka Enberg <[email protected]> Acked-by: Yinghai Lu <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
2009-06-23sh: SH7786 SMP support.Paul Mundt3-24/+18
SH7786 is roughly identical to SH-X3 proto SMP, though there are only 2 CPUs. This just wraps in to the existing SH-X3 SMP code with some minor changes for SH7786, including wiring up the IPIs properly, enabling IRQ_PER_CPU, and so forth. Signed-off-by: Paul Mundt <[email protected]>
2009-06-23sh: Wire up the uncached fixmap on sh64 as well.Paul Mundt1-2/+0
Now that sh64 also can use the uncached section, wire up the fixmap for it as well. Signed-off-by: Paul Mundt <[email protected]>
2009-06-23sh: Use local TLB flush in set_pte_phys().Paul Mundt1-1/+1
set_pte_phys() presently uses the global flush_tlb_one(), which locks on SMP trying to do the IPI. As we have not even initialized the other CPUs at this point, switch to the local_ variant so the flush happens on the boot CPU. Signed-off-by: Paul Mundt <[email protected]>
2009-06-23sh: Provide cpu_idle_wait() to fix up cpuidle/SMP build.Paul Mundt3-1/+26
Crib the x86 cpu_idle_wait() implementation and shove it in with the idle code, subsequently enabling ARCH_HAS_CPU_IDLE_WAIT. Signed-off-by: Paul Mundt <[email protected]>
2009-06-23CRISv10: remove redundant tests on unsignedRoel Kluin1-2/+2
Since dmanr is unsigned, negatives are wrapped and caught by the other test. Signed-off-by: Roel Kluin <[email protected]> Acked-by: Jesper Nilsson <[email protected]>
2009-06-23[WATCHDOG] wdt_pci.c: remove #ifdef CONFIG_WDT_501_PCIWim Van Sebroeck2-74/+66
Change the wdt_pci.c watchdog driver so that the code is the same for both the PCI-WDT500 as the PCI-WDT501 card. The selection of the card is now being done via the module parameter: 'type' instead of the config option CONFIG_WDT_501_PCI. Signed-off-by: Wim Van Sebroeck <[email protected]>
2009-06-23[WATCHDOG] hpwdt: Add NMI priority optionTom Mingarelli2-9/+36
Add a priority option so that the user can choose if we do the NMI first or last. Signed-off-by: Thomas Mingarelli <[email protected]> Signed-off-by: Wim Van Sebroeck <[email protected]>
2009-06-23[WATCHDOG] OMAP fixes: enable clock in probe, trigger timer reloadUlrik Bech Hald1-0/+7
This patch contains two fixes: 1)In omap_wdt_probe() the watchdog is reset and disabled. This requires register access and the clks needs to be enabled temporarily 2)In omap_wdt_open() the timer register needs to be reloaded to trigger a new timer value (the default of 60s) Tested on OMAP34xx platform (Zoom1) Reviewed-by: Kevin Hilman <[email protected]> Signed-off-by: Ulrik Bech Hald <[email protected]> Signed-off-by: Wim Van Sebroeck <[email protected]>
2009-06-23V4L/DVB (12131): BUGFIX: An incorrect Carrier Recovery Loop optimization ↵Manu Abraham1-3/+6
table was being loaded for a given chip version. This would cause the optimization in tuning not to be applied and thus a failed expectation, in tuning speed increment. The patch swaps the tables in use. It also fixes a possible one in a million condition where state->dev_ver implies an older Cut (Cut < 2.0, eventhough the driver doesn't attach to any Cut older than 2.0) or even negative (due to a bad I2C bus master driver) for the card combination. Thanks to Mauro Carvalho Chehab <[email protected]> for pointing out the issue at large. Signed-off-by: Manu Abraham <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12130): Fix a redundant compiler warningManu Abraham1-1/+1
drivers/media/dvb/frontends/stv090x.c: In function ‘stv090x_optimize_carloop_short’: drivers/media/dvb/frontends/stv090x.c:2677: warning: ‘short_crl’ may be used uninitialized in this function Signed-off-by: Manu Abraham <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12003): v4l2: Move bounding code outside I2C ifdef blockTrent Piepho1-1/+2
On Fri, 12 Jun 2009, Randy Dunlap wrote: > From: Randy Dunlap <[email protected]> > > Move v4l_bound_align_image() outside of an #ifdef CONFIG_I2C block > so that it is always built. Fixes a build error: clamp_align() should be moved as well, since it's only used by v4l_bound_align_image(). I'm attaching an alternate version that fixes this. Labeled the endif too. Reported-by: Randy Dunlap <[email protected]> Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11913): cx231xx: TRY_FMT should not actually set anythingTrent Piepho3-23/+7
In the TRY_FMT handler the function get_scale() is called to find what the scaler hardware will produce for a requested size. The problem is that get_scale(struct cx231xx *dev, ..., unsigned int *vscale, unsigned int *hscale) saves the calculated scale values into both the pointer arguments and into dev's hscale and vscale fields. TRY_FMT shouldn't actually change anything in the device state. The code to in get_scale() that writes to dev->[hv]scale can just be deleted. In all cases when dev's fields should be modified, get_scale() was called with get_scale(dev, ..., &dev->hscale, &dev->vscale), so dev was getting updated anyway. This didn't actually cause a problem because nothing ever actually made use of the hscale and vscale fields. I changed cx231xx_resolution_set() to use those fields rather than re-calculate them with a call to get_scale(). Updating [hv]scale in cx231xx_resolution_set() isn't necessary because every call of cx231xx_resolution_set() was already preceded by a call to get_scale() or setting the [hv]scale fields, so they will be always be up-to-date w.r.t. width and height. Removing the call to get_scale() from cx231xx_resolution_set() allowed making get_scale() a static function, which is a good thing for something with such a short name. There is already another function with the same name in the em28xx driver, but that one is static. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11912): em28xx: Use v4l bounding/alignment functionTrent Piepho1-26/+12
The v4l function has a better algorithm for aligning image size. It appears that the em2800 can only scale by 50% or 100%, i.e. the only heights supported might be 240 and 480. In that case the old code would set any height other than 240 to 480. Request 240 get 240, but request 239 and then you get 480. Change it to round to the nearest supported value. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11911): cx231xx: Use v4l bounding/alignment functionTrent Piepho1-13/+3
The v4l function has a better algorithm for aligning image size. Cc: Srinivasa Deevi <[email protected]> Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11910): mt9: Use v4l bounding/alignment functionTrent Piepho3-29/+9
The v4l function has a better algorithm for aligning image size. Cc: Guennadi Liakhovetski <[email protected]> Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11909): cx23885: Use v4l bounding/alignment functionTrent Piepho1-9/+2
The v4l function has a better algorithm for aligning image size. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11908): w8968cf: Use v4l bounding/alignment functionTrent Piepho1-21/+14
The v4l function has a better algorithm for aligning image size. The existing code was casting pointers to u32 and to unsigned int into pointers to u16. This could mess up if someone passed in an image size greater than 65,535 and on big-endian platforms it won't work at all. The existing bounding code would shrink an image if it was too big, but returned ERANGE if it was too small. The code will not shrink or expand as necessary. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11907): cx88: Use v4l bounding/alignment functionTrent Piepho1-9/+2
The v4l function has a better algorithm for aligning image size. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11906): saa7134: Use v4l bounding/alignment functionTrent Piepho1-9/+2
The v4l function has a better algorithm for aligning image size. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11905): vivi: Use v4l bounding/alignment functionTrent Piepho1-9/+2
The v4l function has a better algorithm for aligning image size. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11904): zoran: Use v4l bounding/alignment functiobTrent Piepho1-10/+4
The v4l function has a better algorithm for aligning image size. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11903): sh_mobile_ceu_camera: Use v4l bounding/alignment functionTrent Piepho1-10/+2
The v4l function has a better algorithm for aligning image size. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11902): pxa-camera: Use v4l bounding/alignment functionTrent Piepho1-27/+7
The v4l function has a better algorithm for aligning image size. For instance the old code would change 159x243 into 156x240 to meet the alignment requirements. The new function will use 160x243, which is a lot closer to what was asked for originally. Cc: Robert Jarzmik <[email protected]> Cc: Guennadi Liakhovetski <[email protected]> Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (11901): v4l2: Create helper function for bounding and aligning imagesTrent Piepho2-1/+84
Most hardware has limits on minimum and maximum image dimensions and also requirements about alignment. For example, image width must be even or a multiple of four. Some hardware has requirements that the total image size (width * height) be a multiple of some power of two. v4l_bound_align_image() will enforce min and max width and height, power of two alignment on width and height, and power of two alignment on total image size. It uses an efficient algorithm that will try to find the "closest" image size that meets the requirements. Signed-off-by: Trent Piepho <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12128): v4l2: update framework documentation.Hans Verkuil1-0/+24
Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12125): v4l2: add new s_config subdev ops and ↵Hans Verkuil3-1/+127
v4l2_i2c_new_subdev_cfg/board calls Add a new s_config core ops call: this is called with the irq and platform data to be used to initialize the subdev. Added new v4l2_i2c_new_subdev_cfg and v4l2_i2c_new_subdev_board calls that allows you to pass these new arguments. The existing v4l2_i2c_new_subdev functions were modified to also call s_config. In the future the existing v4l2_i2c_new_subdev functions will be replaced by a single v4l2_i2c_new_subdev function similar to v4l2_i2c_new_subdev_cfg but without the irq and platform_data arguments. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12122): pvrusb2: De-obfuscate code which handles routing schemesMike Isely3-20/+20
This change does not change any outward behavior; it merely chops down some large if-conditions with embedded assignments into something a little more maintainable for others (I of course never had a problem with this...). Signed-off-by: Mike Isely <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12121): pvrusb2: Improve handling of routing schemesMike Isely4-32/+44
The pvrusb2 driver has a concept of "routing scheme" which defines which physical inputs should be connected based on application's choice of logical input. The correct "routing scheme" depends on the specific device since different devices might wire up their muxes Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12120): pvrusb2: Change initial default frequency settingMike Isely1-2/+2
Change default frequency to be US Broadcast channel 3 - with the transition to d igital the previous value has now become useless. This change is PURELY to help with my testing (I need to set some kind of default so it might as well be some thing usable). Signed-off-by: Mike Isely <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12119): pvrusb2: Re-fix hardware scaling on video standard changeMike Isely1-0/+1
The cx25840 module's VBI initialization logic uses the current video standard as part of its internal algorithm. This therefore means that we probably need to make sure that the correct video standard has been set before initializing VBI. (Normally we would not care about VBI, but as described in an earlier changeset, VBI must be initialized correctly on the cx25840 in order for the chip's hardware scaler to operate correctly.) It's kind of messy to force the video standard to be set before initializing VBI (mainly because we can't know what the app really wants that early in the initialization process). So this patch does the next best thing: VBI is re-initialized after any point where the video standard has been set. Signed-off-by: Mike Isely <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12118): pvrusb2: Fix hardware scaling when used with cx25840Mike Isely1-24/+31
The cx25840 module requires that its VBI initialization entry point be called in order for hardware-scaled video capture to work properly - even if we don't care about VBI. Making this behavior even more subtle is that if the capture resolution is set to 720x480 - which is the default that the pvrusb2 driver sets up - then the cx25840 bypasses the hardware scaler. Therefore this problem does not manifest itself until some other resolution, e.g. 640x480, is tried. MythTV typically defaults to 640x480 or 480x480, which means that things break whenever the driver is used with MythTV. This all has been known for a while (since at least Nov 2006), but recent changes in the pvrusb2 driver (specifically in regards to sub-device support) caused this to break again. VBI initialization must happen *after* the chip's firmware is loaded, not before. With this fix, 24xxx devices work correctly again. A related fix that is part of this changeset is that now we re-initialize VBI any time after we issue a reset to the cx25840 driver. Issuing a chip reset erases the state that the VBI setup previously did. Until the HVR-1950 came along this subtlety went unnoticed, because the pvrusb2 driver previously never issued such a reset. But with the HVR-1950 we have to do that reset in order to correctly transition from digital back to analog mode - and since the HVR-1950 always starts in digital mode (required for the DVB side to initialize correctly) then this device has never had a chance to work correctly in analog mode! Analog capture on the HVR-1950 has been broken this *ENTIRE* time. I had missed it until now because I've usually been testing at the default 720x480 resolution which does not require scaling... What fun. By re-initializing VBI after a cx25840 chip reset, correct behavior is restored. Signed-off-by: Mike Isely <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12116): cx23885: ensure correct IF freq is used on HVR1200 & HVR1700Michael Krufky1-0/+10
Ensure that we're programming the tda18271 tuner with the correct IF frequencies to match the programming of the TDA10048 DVB-T demod for the HVR1200 and HVR1700 products. Signed-off-by: Michael Krufky <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12115): tda10048: add missing entry to pll_tab for 3.8 MHz IFMichael Krufky1-0/+1
Thanks for Terry Wu for pointing out the missing entry. Cc: Terry Wu <[email protected]> Signed-off-by: Michael Krufky <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12112): cx231xx: fix uninitialized variable.Hans Verkuil1-1/+1
The variable 'rc' could be used uninitialized in the cx231xx_capture_start function. Sri informed me that it should be initialized to -1. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12111): tcm825x: remove incorrect __exit_p wrapperHans Verkuil1-2/+2
tcm825x_remove is not necessarily called on module exit, it can also be called when the i2c_adapter is removed. While the i2c adapter might never be removed on an embedded system, in practice this sensor driver can also be used in e.g. a USB webcam where this is a perfectly acceptable thing to do. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12109): radio-tea5764: fix incorrect rxsubchans valueHans Verkuil1-1/+3
rxsubchans was only set when stereo was detected, otherwise it was left to 0 instead of setting it to mono. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12108): v4l2-i2c-drv.h: add comment describing when not to use this ↵Hans Verkuil1-1/+4
header. Make it very clear that this header should not be used for i2c drivers that do not need to be compiled for pre-2.6.26 kernels. As soon as the minimum supported kernel in the v4l-dvb repository becomes 2.6.26 or up, then this header should be removed entirely. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12107): smscoreapi: fix compile warningHans Verkuil1-2/+2
gcc 4.3.1 generates this warning: v4l/smscoreapi.c: In function 'smscore_gpio_configure': v4l/smscoreapi.c:1481: warning: 'GroupNum' may be used uninitialized in this function v4l/smscoreapi.c:1480: warning: 'TranslatedPinNum' may be used uninitialized in this function While in practice this will not happen, it is something that the compiler can't determine. Initializing these two local variables to 0 suppresses this warning. Cc: Udi Atar <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12104): ivtv/cx18: fix regression: class controls are no longer seenHans Verkuil3-0/+6
A previous change (v4l2-common: remove v4l2_ctrl_query_fill_std) broke the handling of class controls in VIDIOC_QUERYCTRL. The MPEG class control was broken for all drivers that use the cx2341x module and the USER class control was broken for ivtv and cx18. This change adds back proper class control support. Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12102): em28xx: add Remote control support for EVGA inDtubeDevin Heitmueller3-0/+27
Add an IR profile for the EVGA inDtube remote control (which is an NEC type remote) Signed-off-by: Devin Heitmueller <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12101): em28xx: add support for EVGA inDtubeDevin Heitmueller4-0/+51
Add support for the EVGA inDtube. Both ATSC and analog side validated as fully functional. Thanks to Jake Crimmins from EVGA for providing the correct GPIO info. Thanks to Alan Hagge for doing all the device testing. Thanks to Greg Williamson for providing hardware for testing. Cc: Jake Crimmins <[email protected]> Cc: Alan Hagge <[email protected]> Cc: Greg Williamson <[email protected]> Signed-off-by: Devin Heitmueller <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2009-06-23V4L/DVB (12100): em28xx: make sure the analog GPIOs are set if we used a ↵Devin Heitmueller1-0/+6
card hint In cases where the board had a default USB ID, we would not indentify the board until after the call to em28xx_set_mode(). As a result, for those boards the analog GPIOs were not being set before probing the i2c bus for devices (the probe would occur with the GPIOs being all high). Make a call to em28xx_set_mode() so that the GPIOs are set properly before probing the i2c bus for devices. This problem was detected with the EVGA inDtube, where the tvp5150 is not powered on unless GPIO1 is pulled low. Signed-off-by: Devin Heitmueller <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>