- 05 3月, 2014 1 次提交
-
-
由 Devin Heitmueller 提交于
Add support for the Trident DRX-J driver, including a card profile for the PCTV 80e which uses the chip. Thanks to Trident for allowing the release of this code under a BSD license, and of course Hauppauge/PCTV for pushing for its release to the community. [pdickeybeta@gmail.com: modified to fix compilation errors and also to move the driver files from the drx39xy subdirectory to the frontends directory] [m.chehab@samsung.com: fix merge conflicts, commented drx-j compilation and added EM28XX_R06_I2C_CLK setup also to the board setup] Signed-off-by: NDevin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 03 3月, 2014 1 次提交
-
-
由 Shuah Khan 提交于
em28xx usb driver will have to suspend and resume its extensions. Adding suspend and resume to em28xx_ops gives extensions the ability to install suspend and resume that can be invoked from em28xx_usb driver suspend() and resume() interfaces. Approach: Add power management support to em28xx usb driver. This driver works in conjunction with extensions for each of the functions on the USB device for video/audio/dvb/remote functionality that is present on media USB devices it supports. During suspend and resume each of these extensions will have to do their part in suspending the components they control. Adding suspend and resume hooks to the existing struct em28xx_ops will enable the extensions the ability to implement suspend and resume hooks to be called from em28xx driver. The overall approach is as follows: -- add suspend and resume hooks to em28xx_ops -- add suspend and resume routines to em28xx-core to invoke suspend and resume hooks for all registered extensions. -- change em28xx dvb, audio, input, and video extensions to implement em28xx_ops: suspend and resume hooks. These hooks do what is necessary to suspend and resume the devices they control. Signed-off-by: NShuah Khan <shuah.kh@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 15 1月, 2014 2 次提交
-
-
由 Frank Schaefer 提交于
The current code assumes that the analog + digital video endpoints are always at interface number 0 when changing the alternate setting. This seems to work fine for most existing devices. However, at least the SpeedLink VAD Laplace webcam has the video endpoint on interface number 3 (which fortunately doesn't cause any trouble because ist uses bulk transfers only). We already consider the actual interface number for audio endpoints, so rename the the audio_ifnum variable and use it for all device types. Also get get rid of a pointless (ifnum < 0) in em28xx-audio. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Mauro Carvalho Chehab 提交于
While the current hardcoded period is ok for the current values, we may latter change the driver to work with different bit rates or with different latencies than 64ms. So, adust the period size at runtime. Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 13 1月, 2014 1 次提交
-
-
由 Mauro Carvalho Chehab 提交于
Now that em28xx can be compiled without V4L support, we should call em28xx_setup_xc3028() on both em28xx-v4l and em28xx-dvb modules. Reported-by: NChris Lee <updatelee@gmail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 12 1月, 2014 1 次提交
-
-
由 Mauro Carvalho Chehab 提交于
The current code hardcodes the number of audio URBs, the number of packets per URB and the maximum URB size. This is not a good idea, as it: - wastes more bandwidth than necessary, by using a very large number of packets; - those constants are bound to an specific scenario, with a bandwidth of 48 kHz; - don't take the maximum endpoint size into account; - with urb->interval = 1 on xHCI, those constraints cause a "funny" setup: URBs with 64 packets inside, with only 24 bytes total. E. g. a complete waste of space. Change the code to do dynamic URB audio calculus and allocation. For now, use the same constraints as used before this patch, to avoid regressions. A good scenario (tested) seems to use those defines, instead: #define EM28XX_MAX_AUDIO_BUFS 8 #define EM28XX_MIN_AUDIO_PACKETS 2 But let's not do such change here, letting the optimization to happen on latter patches, after more tests. Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 10 1月, 2014 2 次提交
-
-
由 Mauro Carvalho Chehab 提交于
In the lack of a better spec, let's assume the timeout values compatible with SMBus spec: http://smbus.org/specs/smbus110.pdf at chapter 8 - Electrical Characteristics of SMBus devices Ok, SMBus is a subset of I2C, and not all devices will be following it, but the timeout value before this patch was not even following the spec. So, while we don't have a better guess for it, use 35 + 1 ms as the timeout. Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Mauro Carvalho Chehab 提交于
Instead of assuming that msleep() is precise, use a jiffies based code to wait for AC97 to be available. Reviewed-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 07 1月, 2014 3 次提交
-
-
由 Frank Schaefer 提交于
The audio configuration in chip config register 0x00 and eeprom are always consistent. But currently the audio configuration #defines for the chip config register say 0x20 means 3 sample rates and 0x30 5 sample rates, while the eeprom info output says 0x20 means 1 sample rate and 0x30 3 sample rates. I've checked the datasheet excerpts I have and it seems that the meaning of these bits is different for em2820/40 (1 and 3 sample rates) and em2860+ (3 and 5 smaple rates). I have also checked my Hauppauge WinTV USB 2 (em2840) and the chip/eeprom audio config 0x20 matches the sample rates reproted by the USB device descriptor (32k only). Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Mauro Carvalho Chehab 提交于
Use the same module version on all em28xx sub-modules, and use the same naming convention to describe the driver. Reviewed-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Mauro Carvalho Chehab 提交于
Now that all analog-specific code are at em28xx-video, convert it into an em28xx extension and load it as a separate module. Reviewed-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Tested-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 05 1月, 2014 2 次提交
-
-
由 Mauro Carvalho Chehab 提交于
In order to make easier for the next patches, do some cosmetic changes. No functional changes. Reviewed-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Mauro Carvalho Chehab 提交于
Now that we want to split the video handling to a separate module, move all video-specific functions to em28xx-video. No functional changes. Reviewed-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 21 12月, 2013 1 次提交
-
-
由 Frank Schaefer 提交于
For GPI-connected buttons without (hardware) debouncing, the polling interval needs to be reduced to detect button presses properly. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 19 12月, 2013 1 次提交
-
-
由 Antti Palosaari 提交于
Device has following chips: Empia EM28178, Montage M88DS3103, Montage M88TS2022, Allegro A8293. Signed-off-by: NAntti Palosaari <crope@iki.fi> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 11 12月, 2013 6 次提交
-
-
由 Frank Schaefer 提交于
The SpeedLink Vicious And Devine Laplace webcam is using an EM2765 bridge and an OV2640 sensor. It has a built-in microphone (USB standard device class) and provides 3 buttons (snapshot, illumination, mute) and 2 LEDs (capturing/mute and illumination/flash). It is also equipped with an eeprom. The device is available in two colors: white (1ae7:9003) and black (1ae7:9004). For further details see http://linuxtv.org/wiki/index.php/VAD_Laplace. Please note the following limitations that need to be addressed later: - resolution limited to 640x480 (sensor supports 1600x1200) - picture quality needs to be improved - AV-mute button doesn't work yet Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Frank Schaefer 提交于
The SpeedLink VAD Laplace webcam is equipped with an illumination button and an illumination LED. When the button is pressed, the driver must toggle the LED state via the corresponding GPO port. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Frank Schaefer 提交于
Introduce a LED role and store all LEDs in an array. Also provide a helper function to retrieve a specific LED. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Frank Schaefer 提交于
So far, the driver only supports a snapshot button which is assigned to register 0x0c bit 5. This special port has a built-in debouncing mechanism. For buttons connected to ordinary GPI ports, this patch implements a software debouncing mechanism. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Frank Schaefer 提交于
The current code supports only a single snapshot button assigned to register 0x0c bit 5. But devices may be equipped with multiple buttons with different functionalities and they can also be assigned to the various GPI-ports. Extend the em28xx-input code to handle multiple buttons assigned to different GPI-ports / register addresses and bits. Also make easier to extend the code with further button types. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Frank Schaefer 提交于
Some devices are equipped with a capturing status LED that needs to be switched on/off explicitly via a GPO port. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 31 10月, 2013 2 次提交
-
-
由 Jean-Francois Thibert 提交于
This patch adds support for the UB435-Q V2. You might need to use the device once with the Windows driver provided by KWorld in order to permanently reprogram the device descriptors. Thanks to Jarod Wilson for the initial attempt at adding support for this device. [m.chehab@samsung.com: Fixed Whitespace mangling, Coding Style and improved the error handling at DVB attach] Signed-off-by: NJean-Francois Thibert <jfthibert@google.com> Reviewed-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Guennadi Liakhovetski 提交于
Camera sensors usually require a master clock for data sampling. This patch registers such a clock source for em28xx cameras. This fixes the currently broken em28xx ov2640 camera support and can also be used by other camera sensors. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 19 6月, 2013 1 次提交
-
-
由 Frank Schaefer 提交于
The GPIO register caching is the result of wrong assumptions and incomplete knowledge about the GPIO registers and their functionality. Today, we know that it is not needed. It is also limited to a single register and therefore incomplete (newer chips are using multiple registers). Instead of extending the caching, get rid of it, because it has no real benefits and just bloats/complicates the code. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 21 5月, 2013 1 次提交
-
-
由 Jakob Haufe 提交于
Hardware is the same as MaxMedia UB425-TC but ships with a different remote. Signed-off-by: NJakob Haufe <sur5r@sur5r.net> Reviewed-by: NAntti Palosaari <crope@iki.fi> Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 29 3月, 2013 4 次提交
-
-
由 Frank Schaefer 提交于
This sensor is used by the "SpeedLink Vicious And Devine Laplace webcam" and others. It supports resolutions up to 1600x1200 (at 7-8 fps), but for resolutions higher than 640x480, further driver changes will be necessary, such as sensor output resolution switching (including further configuration changes), bridge xclk adjustment and disabling of 16 bit (12 bit) output formats at high resolutions. Image quality should also needs to be improved. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
em28xx-cards.c is very large and the sensor/camera related code is growing, so move this code to a separate source code file em28xx-camera.c. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
This chip can be found in the SpeedLink VAD Laplace webcam (1ae7:9003 and 1ae7:9004). Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
The webcam "SpeedLink VAD Laplace" (em2765 + ov2640) uses a special algorithm for i2c communication with the sensor, which is connected to a second i2c bus. We don't know yet how to find out which devices support/use it. It's very likely used by all em25xx and em276x+ bridges. Tests with other em28xx chips (em2820, em2882/em2883) show, that this algorithm always succeeds there although no slave device is connected. The algorithm likely also works for real i2c client devices (OV2640 uses SCCB), because the Windows driver seems to use it for probing Samsung and Kodak sensors. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 20 3月, 2013 1 次提交
-
-
由 Mauro Carvalho Chehab 提交于
This is an hybrid board. However, for analog, it requires a new driver for saa7136. So, for now, let's just add support for Digital TV. Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 19 3月, 2013 3 次提交
-
-
由 Mauro Carvalho Chehab 提交于
Register both buses 0 and 1 via I2C API. For now, bus 0 is used only by eeprom on all known devices. Later patches will be needed if this changes in the future. Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Mauro Carvalho Chehab 提交于
Prepare to register a separate bus for the second bus. For now, just add a new field. A latter patch will add the bits to make it work. This patch was generated by this script: perl -e 'while (<>) { if (s/EM2874_I2C_SECONDARY_BUS_SELECT.*\n//) { printf "\t\t.def_i2c_bus = 1,\n"; $found = 1; print $_ } else { if ($found) { s/^\s+// }; $found = 0; print $_; } }' \ drivers/media/usb/em28xx/em28xx-cards.c >a && mv a drivers/media/usb/em28xx/em28xx-cards.c Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Mauro Carvalho Chehab 提交于
Newer em28xx devices have 2 buses. Change the logic to allow using both buses. This patch was generated by this small script: for i in drivers/media/usb/em28xx/*.c; do sed 's,->i2c_adap,->i2c_adap[dev->def_i2c_bus],g;s,->i2c_client,->i2c_client[dev->def_i2c_bus],' done Of course, em28xx.h needed manual edit. Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 05 3月, 2013 7 次提交
-
-
由 Frank Schaefer 提交于
The new eeproms with 16 address width still have the the device config dataset (the content of the old 8 bit eeproms) embedded. Hauppauge also continues to include the tveeprom data structure inside this dataset in their devices. The start address of the dataset depends on the start address of the microcode and a variable additional offset. It should be mentioned that Camera devices seem to use a different dataset type, which is not yet supported. Tested with devices "Hauppauge HVR-930C". I've also checked the USB-log from the "MSI Digivox ATSC" and it works the same way. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
We currently reserve an array of 256 bytes for the eeprom content in the device struct. For eeproms with 16 bit address width it might even be necessary to increase the buffer size further. Having such a big chunk of memory reserved even if the device has no eeprom and keeping it after it has already been processed seems to be a waste of memory. Change the code to allocate + free the eeprom memory dynamically. This also makes it possible to handle different dataset sizes depending on what is stored/found in the eeprom. Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
Newer devices (em2874, em2884, em28174, em25xx, em27[6,7,8]x) use eeproms with 16 bit instead of 8 bit address width. The used eeprom type depends on the chip type, which makes sure eeproms can't be damaged. This patch adds basic support for 16 bit eeproms only, which includes - reading the content - calculating the eeprom hash - displaying the content The eeprom content uses a different format, for which support will be added with subsequent patches. Tested with the "Hauppauge HVR-930C" and the "Speedlink VAD Laplace webcam" (with additional experimental patches). Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
The data is stored as little endian in the eeprom. Hence the correct data types should be used and the data should be converted to the machine endianess before using it. The eeprom id (key) also isn't a 32 bit value but 4 separate bytes instead. [mchehab@redhat.com: Fix CodingStyle] Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Frank Schaefer 提交于
Signed-off-by: NFrank Schäfer <fschaefer.oss@googlemail.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-