pandora-kernel.git
12 years ago[media] em28xx-alsa: add mixer support for AC97 volume controls
Mauro Carvalho Chehab [Sun, 19 Jun 2011 16:06:40 +0000 (13:06 -0300)]
[media] em28xx-alsa: add mixer support for AC97 volume controls

Export ac97 volume controls via mixer.

Pulseaudio will probably handle it very badly, as it has
no idea about how volumes are wired, and how are they
associated with each TV input. Those wirings are
card model dependent, and we don't have the wiring mappings
for each supported device.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] em28xx: Allow to compile it without RC/input support
Mauro Carvalho Chehab [Sat, 18 Jun 2011 13:19:11 +0000 (10:19 -0300)]
[media] em28xx: Allow to compile it without RC/input support

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] em28xx: Fix a wrong enum at the ac97 control tables
Mauro Carvalho Chehab [Sat, 18 Jun 2011 10:02:49 +0000 (07:02 -0300)]
[media] em28xx: Fix a wrong enum at the ac97 control tables

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] em28xx: Don't initialize a var if won't be using it
Mauro Carvalho Chehab [Fri, 17 Jun 2011 23:28:51 +0000 (20:28 -0300)]
[media] em28xx: Don't initialize a var if won't be using it

Fixes most cases of initializing a var but not using it.

There are still 3 cases at em28xx-alsa, were those vars should
probably be used.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Basic working MMP camera driver
Jonathan Corbet [Sat, 11 Jun 2011 17:46:49 +0000 (14:46 -0300)]
[media] marvell-cam: Basic working MMP camera driver

Now we have a camera working over the marvell cam controller core.  It
works like the cafe driver and has all the same limitations, contiguous DMA
only being one of them.  But it's a start.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Allocate the i2c adapter in the platform driver
Jonathan Corbet [Sat, 11 Jun 2011 17:46:48 +0000 (14:46 -0300)]
[media] marvell-cam: Allocate the i2c adapter in the platform driver

The upcoming mmp-camera driver will need an i2c_adapter structure allocated
externally, so change the core adapter to a pointer and require the
platform code to fill it in.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Right-shift i2c slave ID's in the cafe driver
Jonathan Corbet [Sat, 11 Jun 2011 17:46:47 +0000 (14:46 -0300)]
[media] marvell-cam: Right-shift i2c slave ID's in the cafe driver

This makes the cafe i2c implement consistent with the rest of Linux so that
the core can use the same slave ID everywhere.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Move Cafe-specific register definitions to cafe-driver.c
Jonathan Corbet [Sat, 11 Jun 2011 17:46:46 +0000 (14:46 -0300)]
[media] marvell-cam: Move Cafe-specific register definitions to cafe-driver.c

Nobody else ever needs to see these, so let's hide them.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Remove the "untested" comment
Jonathan Corbet [Sat, 11 Jun 2011 17:46:45 +0000 (14:46 -0300)]
[media] marvell-cam: Remove the "untested" comment

This code is, indeed, tested :)

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Pass sensor parameters from the platform
Jonathan Corbet [Sat, 11 Jun 2011 17:46:44 +0000 (14:46 -0300)]
[media] marvell-cam: Pass sensor parameters from the platform

Depending on the controller, the ov7670 sensor may be told to work with a
different clock speed or to use the SMBUS protocol.  Remove the wired-in
code and pass that information from the platform layer.  The Cafe driver
now just assumes it's running on an OLPC XO 1; I do not believe it has ever
run anywhere else.

Cc: Daniel Drake <dsd@laptop.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Separate out the Marvell camera core
Jonathan Corbet [Sat, 11 Jun 2011 17:46:43 +0000 (14:46 -0300)]
[media] marvell-cam: Separate out the Marvell camera core

There will eventually be multiple users of the core camera controller, so
separate it from the bus/platform/i2c stuff.  I've tried to do the minimal
set of changes to get the driver functioning in this configuration; I did
clean up a bunch of old checkpatch gripes in the process.  This driver
works like the old one did on OLPC XO 1 systems.

Cc: Daniel Drake <dsd@laptop.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] marvell-cam: Move cafe-ccic into its own directory
Jonathan Corbet [Sat, 11 Jun 2011 17:46:42 +0000 (17:46 +0000)]
[media] marvell-cam: Move cafe-ccic into its own directory

This driver will soon become a family of drivers, so let's give it its own
place to live.  This move requires putting ov7670.h into include/media, but
there are no code changes.

Cc: Daniel Drake <dsd@laptop.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook: Use base64 for gif/png files
Mauro Carvalho Chehab [Thu, 16 Jun 2011 02:13:19 +0000 (23:13 -0300)]
[media] DocBook: Use base64 for gif/png files

The patch utility doesn't work with non-binary files. This causes some
tools to break, like generating tarball targets and the scripts that
generate diff patches at http://www.kernel.org/pub/linux/kernel/v2.6/.

So, let's convert all binaries to ascii using base64, and add a
logic at Makefile to convert them back into binaries at runtime.

Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
Reported-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/video: fix memory leak of snd_cx18_init()
Andre Bartke [Fri, 3 Jun 2011 18:06:58 +0000 (15:06 -0300)]
[media] drivers/media/video: fix memory leak of snd_cx18_init()

cxsc is not freed in the error case.

Signed-off-by: Andre Bartke <andre.bartke@gmail.com>
Cc: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] Correct and add some parameter descriptions
Hans Petter Selasky [Thu, 26 May 2011 08:06:09 +0000 (05:06 -0300)]
[media] Correct and add some parameter descriptions

>From 70d02ce19f64fae4ceee563501e8462a76e17b91 Mon Sep 17 00:00:00 2001

Signed-off-by: Hans Petter Selasky <hselasky@c2i.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] Remove unused definitions which can cause conflict with definitions in usb...
Hans Petter Selasky [Thu, 26 May 2011 07:56:55 +0000 (04:56 -0300)]
[media] Remove unused definitions which can cause conflict with definitions in usb/ch9.h

>From 0dd2949dfeae431ed4ffbd00fd14a10dc3747ad0 Mon Sep 17 00:00:00 2001

Signed-off-by: Hans Petter Selasky <hselasky@c2i.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] Correct error code from -ENOMEM to -EINVAL.
Hans Petter Selasky [Thu, 26 May 2011 07:49:52 +0000 (04:49 -0300)]
[media] Correct error code from -ENOMEM to -EINVAL.

Make sure the return value is set in all cases

>From 9b38a5c9878b5e4be2899ae291c4524f5f5fc218 Mon Sep 17 00:00:00 2001

Signed-off-by: Hans Petter Selasky <hselasky@c2i.net>
Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] rc-core: lirc use unsigned int
David Härdeman [Thu, 28 Apr 2011 15:13:58 +0000 (12:13 -0300)]
[media] rc-core: lirc use unsigned int

Durations can never be negative, so it makes sense to consistently use
unsigned int for LIRC transmission. Contrary to the initial impression,
this shouldn't actually change the userspace API.

Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s2255drv: firmware version update, vendor request change
Sensoray Linux Development [Mon, 4 Apr 2011 17:08:40 +0000 (14:08 -0300)]
[media] s2255drv: firmware version update, vendor request change

removes obsolete comments. updates firmware versions. firmware vendor request simplified.

Signed-off-by: Dean Anderson <linux-dev@sensoray.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook: Don't be noisy at make cleanmediadocs
Mauro Carvalho Chehab [Thu, 9 Jun 2011 19:34:29 +0000 (16:34 -0300)]
[media] DocBook: Don't be noisy at make cleanmediadocs

While here, remove the mediaindexdocs from PHONY.

Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years agoRevert "[media] dvb/audio.h: Remove definition for AUDIO_GET_PTS"
Mauro Carvalho Chehab [Thu, 9 Jun 2011 19:26:32 +0000 (16:26 -0300)]
Revert "[media] dvb/audio.h: Remove definition for AUDIO_GET_PTS"

Based on those feedback:
http://www.spinics.net/lists/linux-media/msg33704.html
http://www.spinics.net/lists/linux-media/msg33700.html

I'm reverting the removal of this unused ioctl, as it seems that some
drivers under development may be using. So, I'll wait until the next
merge window before removing those unused ioctls, to give a chance for
developers to submit their pending work.

This reverts commit db48923da6c528d461b5e764692239eb9c1b7a00.

Cc: Andreas Oberritter <obi@linuxtv.org>
Cc: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/video.xml: Document the remaining data structures
Mauro Carvalho Chehab [Wed, 8 Jun 2011 19:56:03 +0000 (16:56 -0300)]
[media] DocBook/video.xml: Document the remaining data structures

Now, all data structures are commented. A few ioctls remain undocumented:

Error: no ID for constraint linkend: VIDEO_GET_SIZE.
Error: no ID for constraint linkend: VIDEO_GET_FRAME_RATE.
Error: no ID for constraint linkend: VIDEO_GET_PTS.
Error: no ID for constraint linkend: VIDEO_GET_FRAME_COUNT.
Error: no ID for constraint linkend: VIDEO_COMMAND.
Error: no ID for constraint linkend: VIDEO_TRY_COMMAND.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/video.xml: Fix section references with video.h.xml
Mauro Carvalho Chehab [Wed, 8 Jun 2011 18:39:05 +0000 (15:39 -0300)]
[media] DocBook/video.xml: Fix section references with video.h.xml

Make the reference links at video.h.xml to match the ones at video.xml.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/Makefile: Remove osd.h header
Mauro Carvalho Chehab [Wed, 8 Jun 2011 18:17:12 +0000 (15:17 -0300)]
[media] DocBook/Makefile: Remove osd.h header

The av7110 uses an OSD API. Such API is not documented at all. Also,
the osd.h API uses camelCase and some other weird stuff. Also, dvb-core
doesn't recognize it.

I don't see any good reason why we should document it. It seems better
to just let it as-is. If ever needed, it is probably better to write
a different API for dvb-core.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/net.xml: Synchronize Network data structure
Mauro Carvalho Chehab [Wed, 8 Jun 2011 18:08:57 +0000 (15:08 -0300)]
[media] DocBook/net.xml: Synchronize Network data structure

There's no documentation at all for the DVB net API. Still, better to
remove a few warnings about the missing symbols. So, add the net data
structure inside the net.xml. Now, only the ioctl documentation is missed.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/demux.xml: Add the remaining data structures to the API spec
Mauro Carvalho Chehab [Wed, 8 Jun 2011 17:14:31 +0000 (14:14 -0300)]
[media] DocBook/demux.xml: Add the remaining data structures to the API spec

Still, there are a few ioctl's not documented:

Error: no ID for constraint linkend: DMX_GET_PES_PIDS.
Error: no ID for constraint linkend: DMX_GET_CAPS.
Error: no ID for constraint linkend: DMX_SET_SOURCE.
Error: no ID for constraint linkend: DMX_ADD_PID.
Error: no ID for constraint linkend: DMX_REMOVE_PID.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/demux.xml: Fix section references with dmx.h.xml
Mauro Carvalho Chehab [Wed, 8 Jun 2011 14:56:57 +0000 (11:56 -0300)]
[media] DocBook/demux.xml: Fix section references with dmx.h.xml

Make the reference links at dmx.h.xml to match the ones at demux.xml.

While here, also syncronizes the structures defined inside the API,
in order to match the current API.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/ca.xml: Describe structure ca_pid
Mauro Carvalho Chehab [Wed, 8 Jun 2011 14:34:31 +0000 (11:34 -0300)]
[media] DocBook/ca.xml: Describe structure ca_pid

This is the remaining missing structure at ca.xml. The ioctl's are still
missing through.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] Docbook/ca.xml: match section ID's with the reference links
Mauro Carvalho Chehab [Wed, 8 Jun 2011 14:29:27 +0000 (11:29 -0300)]
[media] Docbook/ca.xml: match section ID's with the reference links

Make sure that both ca.h.xml and ca.xml will match the same names for
the sections/links.

This way, it is now possible to identify API spec gaps:

Error: no ID for constraint linkend: ca-pid.
Error: no ID for constraint linkend: ca-pid.
Error: no ID for constraint linkend: CA_RESET.
Error: no ID for constraint linkend: CA_GET_CAP.
Error: no ID for constraint linkend: CA_GET_SLOT_INFO.
Error: no ID for constraint linkend: CA_GET_DESCR_INFO.
Error: no ID for constraint linkend: CA_GET_MSG.
Error: no ID for constraint linkend: CA_SEND_MSG.
Error: no ID for constraint linkend: CA_SET_DESCR.
Error: no ID for constraint linkend: CA_SET_PID.

Basically, in this case, no CA ioctl is described at the specs, and one
file structure (ca-pid) is missing.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dvb/audio.h: Remove definition for AUDIO_GET_PTS
Mauro Carvalho Chehab [Wed, 8 Jun 2011 14:25:26 +0000 (11:25 -0300)]
[media] dvb/audio.h: Remove definition for AUDIO_GET_PTS

While this ioctl is defined inside dvb/audio.h, it is not docummented
at the API specs, nor implemented on any driver inside the Linux Kernel.
So, it doesn't make sense to keep it here.

As this is not used anywere, removing it is not a regression. So,
there's no need to use the normal features-to-be-removed process.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook: Document AUDIO_CONTINUE ioctl
Mauro Carvalho Chehab [Wed, 8 Jun 2011 14:03:10 +0000 (11:03 -0300)]
[media] DocBook: Document AUDIO_CONTINUE ioctl

Although this ioctl is only used at the av7110 driver, it is not
described at the API docbook. Yet, AUDIO_PAUSE ioctl description
somewhat describes it. Fill the gap by using the information there
and by looking inside av7110 implementation.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/audio.xml: synchronize attribute changes
Mauro Carvalho Chehab [Wed, 8 Jun 2011 13:55:57 +0000 (10:55 -0300)]
[media] DocBook/audio.xml: synchronize attribute changes

Some attributes suffered some changes since DVBv1. Sync them with the
current API header files.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/audio.xml: match section ID's with the reference links
Mauro Carvalho Chehab [Wed, 8 Jun 2011 13:42:22 +0000 (10:42 -0300)]
[media] DocBook/audio.xml: match section ID's with the reference links

Make sure that both audio.h.xml and audio.xml will match the same names.
This way, it is now possible to identify API spec gaps:

Error: no ID for constraint linkend: AUDIO_CONTINUE.
Error: no ID for constraint linkend: AUDIO_GET_PTS.
Error: no ID for constraint linkend: AUDIO_BILINGUAL_CHANNEL_SELECT.

While here, fix the cut-and-paste description error on AUDIO_SET_KARAOKE.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook: Add the other DVB API header files
Mauro Carvalho Chehab [Wed, 8 Jun 2011 13:23:34 +0000 (10:23 -0300)]
[media] DocBook: Add the other DVB API header files

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Better name the ISDB-T layers
Mauro Carvalho Chehab [Wed, 8 Jun 2011 02:08:19 +0000 (23:08 -0300)]
[media] DocBook/dvbproperty.xml: Better name the ISDB-T layers

In order to improve the DVB index, replace the title to a
better name.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Add Satellite standards
Mauro Carvalho Chehab [Wed, 8 Jun 2011 01:13:35 +0000 (22:13 -0300)]
[media] DocBook/dvbproperty.xml: Add Satellite standards

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Add ATSC standard
Mauro Carvalho Chehab [Wed, 8 Jun 2011 01:08:13 +0000 (22:08 -0300)]
[media] DocBook/dvbproperty.xml: Add ATSC standard

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Add Cable standards
Mauro Carvalho Chehab [Wed, 8 Jun 2011 01:02:32 +0000 (22:02 -0300)]
[media] DocBook/dvbproperty.xml: Add Cable standards

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook: Finish synchronizing the frontend API
Mauro Carvalho Chehab [Wed, 8 Jun 2011 00:40:22 +0000 (21:40 -0300)]
[media] DocBook: Finish synchronizing the frontend API

Remove the remaining:
Error: no ID for constraint linkend:

With this patch, the dvb frontend API matches the current
dvb core implementation.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Document the terrestrial delivery systems
Mauro Carvalho Chehab [Tue, 7 Jun 2011 23:52:33 +0000 (20:52 -0300)]
[media] DocBook/dvbproperty.xml: Document the terrestrial delivery systems

Instead of repeating duplicate parameters to each delivery system,
just add a section for each specific delivery system, showing
what's applicable to each case. This helps userspace app developers
to know what DVB parameters are applicable to each delivery system.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/frontend.xml: Recomend the usage of the new API
Mauro Carvalho Chehab [Tue, 7 Jun 2011 23:43:25 +0000 (20:43 -0300)]
[media] DocBook/frontend.xml: Recomend the usage of the new API

The old way of setting delivery system parameters were to use
an union with specific per-system parameters. However, as newer
delivery systems required more data, the structure size weren't
enough to fit. So, recomend using the DVBS2API instead.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Reorganize the parameters
Mauro Carvalho Chehab [Tue, 7 Jun 2011 23:05:13 +0000 (20:05 -0300)]
[media] DocBook/dvbproperty.xml: Reorganize the parameters

Put the parameters at the sequencial order as they appear inside
the frontend.h header.

TODO: fix the per-standard section, to reflect the parameters
that should actually be used for each transmission system type.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Use links for all parameters
Mauro Carvalho Chehab [Tue, 7 Jun 2011 22:48:46 +0000 (19:48 -0300)]
[media] DocBook/dvbproperty.xml: Use links for all parameters

Instead of adding a program listing, just add there all parameters.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/dvbproperty.xml: Document the remaining S2API parameters
Mauro Carvalho Chehab [Tue, 7 Jun 2011 22:37:47 +0000 (19:37 -0300)]
[media] DocBook/dvbproperty.xml: Document the remaining S2API parameters

There were lots of DVB S2API parameters that were never documented.
Let's add a definition for all of them, based on what's currently
used inside the core and the drivers.

The description here is not complete nor perfect, so patches
improving it are welcome.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/frontend.xml: Better describe the frontend parameters
Mauro Carvalho Chehab [Tue, 7 Jun 2011 21:15:19 +0000 (18:15 -0300)]
[media] DocBook/frontend.xml: Better describe the frontend parameters

Update the DVB parameter structs to reflect VSB modulation and
improve a few descriptions.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/frontend.xml: add references for some missing info
Mauro Carvalho Chehab [Tue, 7 Jun 2011 20:58:59 +0000 (17:58 -0300)]
[media] DocBook/frontend.xml: add references for some missing info

The frontend.h.xml now references to the main document. However,
several references are missed.

Links the trivial ones with the corresponding API descriptions.

While here, updates the main API to reflect the API improvements.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/frontend.xml: Correlate dvb delivery systems
Mauro Carvalho Chehab [Tue, 7 Jun 2011 20:02:37 +0000 (17:02 -0300)]
[media] DocBook/frontend.xml: Correlate dvb delivery systems

As the DVB API provides two ways to specify the delivery
systems, correlate both ways into a table.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/frontend.xml: Link DVB S2API parameters
Mauro Carvalho Chehab [Tue, 7 Jun 2011 19:58:00 +0000 (16:58 -0300)]
[media] DocBook/frontend.xml: Link DVB S2API parameters

Associate the frontend.h DVB S2API parmeters to the corresponding
documentation at the spec.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/frontend.xml: Better document fe_type_t
Mauro Carvalho Chehab [Tue, 7 Jun 2011 19:17:00 +0000 (16:17 -0300)]
[media] DocBook/frontend.xml: Better document fe_type_t

The fe_type_t documentation was incomplete and not linked to the
dvb/frontend.h.xml. Properly document it.

Also, drop a note that newer formats are only supported via
FE_GET_PROPERTY/FE_GET_SET_PROPERTY ioctls.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook/Makefile: add references for several dvb structures
Mauro Carvalho Chehab [Tue, 7 Jun 2011 17:51:56 +0000 (14:51 -0300)]
[media] DocBook/Makefile: add references for several dvb structures

With this change, it is now possible to discover the gap between
the API defined inside include/dvb/frontend.h and the one documented
into the specs.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] v4l: Documentation about the JPGL pixel format
Jean-François Moine [Fri, 3 Jun 2011 06:33:41 +0000 (03:33 -0300)]
[media] v4l: Documentation about the JPGL pixel format

The JPG-Light, AKA Pegasus Lossless JPEG, is used in Divio webcams based
on NW 800/801/802 chips.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: make checkpatch.pl happy
Mauro Carvalho Chehab [Mon, 6 Jun 2011 19:51:11 +0000 (16:51 -0300)]
[media] xc4000: make checkpatch.pl happy

Solve the ./scripts/checkpatch.pl compliants for the patches
that added xc4000 support, including a few changes at dib0700.

While here, remove a few printk noise by converting some msgs
into debug ones.

Cc: Istvan Varga <istvan_v@mailbox.hu>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: removed card_type
istvan_v@mailbox.hu [Mon, 6 Jun 2011 16:03:44 +0000 (13:03 -0300)]
[media] xc4000: removed card_type

Removed the use of 'card_type' from the tuner configuration structure, and
replaced it with separate parameters to set board-specific configuration.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: check firmware version
istvan_v@mailbox.hu [Mon, 6 Jun 2011 16:00:17 +0000 (13:00 -0300)]
[media] xc4000: check firmware version

Enabled code to check if the version of the firmware reported by the hardware
is correct after uploading it.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dvb-usb/Kconfig: auto-select XC4000 tuner for dib0700
istvan_v@mailbox.hu [Mon, 6 Jun 2011 15:57:43 +0000 (12:57 -0300)]
[media] dvb-usb/Kconfig: auto-select XC4000 tuner for dib0700

Automatically select the xc4000 module for dib0700 if the tuner selection is
not customized.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: code cleanup
istvan_v@mailbox.hu [Mon, 6 Jun 2011 15:54:54 +0000 (12:54 -0300)]
[media] xc4000: code cleanup

Various coding style changes:
  - removed unused / commented out code
  - changed C++ style comments to C format
  - renamed functions and variables that included upper case letters in the name
  - removed tabs from module parameter descriptions
  - replaced the use of XC_RESULT_* with standard error codes

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: detect also xc4100
Istvan Varga [Sat, 4 Jun 2011 15:25:19 +0000 (12:25 -0300)]
[media] xc4000: detect also xc4100

Added code to detect the XC4100 chip, which is presumably an analog-only
"value" version of the XC4000. It is not sure, however, if any devices
using this have actually been produced and sold, so the patch may be
unneeded.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: removed redundant tuner reset
Istvan Varga [Sat, 4 Jun 2011 15:21:17 +0000 (12:21 -0300)]
[media] xc4000: removed redundant tuner reset

This patch causes the tuner reset command to be ignored in the firmware
code, since this only happens when the BASE/INIT1 firmware is loaded by
check_firmware(), and in that case check_firmware() already calls the
reset callback before starting to load the firmware.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: xc_tune_channel() cleanup
Istvan Varga [Sat, 4 Jun 2011 15:18:41 +0000 (12:18 -0300)]
[media] xc4000: xc_tune_channel() cleanup

Minor coding changes related to the xc_tune_channel() function.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: implemented analog TV and radio
Istvan Varga [Sat, 4 Jun 2011 15:17:22 +0000 (12:17 -0300)]
[media] xc4000: implemented analog TV and radio

The following patch implements support for analog TV and FM radio.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: added audio_std module parameter
Istvan Varga [Sat, 4 Jun 2011 15:15:51 +0000 (12:15 -0300)]
[media] xc4000: added audio_std module parameter

The 'audio_std' module parameter makes it possible to fine tune
some audio related aspects of the driver, like setting the exact
audio standard (NICAM, A2, etc.) to be used for some video standards.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: setting registers
Istvan Varga [Sat, 4 Jun 2011 15:12:42 +0000 (12:12 -0300)]
[media] xc4000: setting registers

This patch implements setting the registers in xc4000_set_params()
and xc4000_set_analog_params(). A new register is defined which enables
filtering of the composite video output (this is needed to avoid bad
picture quality with some boards).

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: debug message improvements
Istvan Varga [Sat, 4 Jun 2011 15:08:29 +0000 (12:08 -0300)]
[media] xc4000: debug message improvements

The following patch makes a few minor changes to the printing
of debug messages, and reporting the tuner status. The 'debug'
module parameter can now be set from 0 to 2 to control the
verbosity of debug messages.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: firmware initialization
Istvan Varga [Sat, 4 Jun 2011 15:04:51 +0000 (12:04 -0300)]
[media] xc4000: firmware initialization

This patch fixes/cleans up the loading of the firmware file when the
driver is loaded and initialized.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: implemented power management
Istvan Varga [Sat, 4 Jun 2011 15:03:03 +0000 (12:03 -0300)]
[media] xc4000: implemented power management

The following patch implements the xc4000_sleep() function.
The 'no_powerdown' module parameter is now interpreted differently:
  - 0 uses a device-specific default
  - 1 disables power management like before
  - 2 enables power management

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: added card_type
Istvan Varga [Fri, 3 Jun 2011 12:38:04 +0000 (09:38 -0300)]
[media] xc4000: added card_type

This patch adds support for selecting a card type in struct
xc4000_config, to allow for implementing some card specific code
in the driver.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: check_firmware() cleanup
Istvan Varga [Sat, 4 Jun 2011 14:59:54 +0000 (11:59 -0300)]
[media] xc4000: check_firmware() cleanup

This patch makes the following fixes in check_firmware():
  - there is only one BASE and INIT1 firmware for XC4000
  - loading SCODE is needed also for FM radio

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: simplified load_scode
Istvan Varga [Sat, 4 Jun 2011 14:56:18 +0000 (11:56 -0300)]
[media] xc4000: simplified load_scode

Removed unused code from load_scode() (all SCODE firmwares are
assumed to have the HAS_IF bit set).

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: simplified seek_firmware()
Istvan Varga [Sat, 4 Jun 2011 14:52:34 +0000 (11:52 -0300)]
[media] xc4000: simplified seek_firmware()

This patch simplifies the code in seek_firmware().

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: added firmware_name parameter
Istvan Varga [Sat, 4 Jun 2011 14:48:16 +0000 (11:48 -0300)]
[media] xc4000: added firmware_name parameter

The firmware_name module parameter makes it possible to set the firmware
file name. It defaults to "xc4000.fw" if not specified.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: fixed frequency error
Istvan Varga [Fri, 3 Jun 2011 15:27:30 +0000 (12:27 -0300)]
[media] xc4000: fixed frequency error

The xc_get_frequency_error() function reported the frequency error
incorrectly. The data read from the hardware is a signed integer, in
15625 Hz units. The attached patch fixes the bug.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: added mutex
Istvan Varga [Fri, 3 Jun 2011 15:23:33 +0000 (12:23 -0300)]
[media] xc4000: added mutex

This patch adds a mutex to xc4000_priv, to protect the driver
from being accessed by multiple processes at the same time.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: added support for 7 MHz DVB-T
Istvan Varga [Fri, 3 Jun 2011 15:17:59 +0000 (12:17 -0300)]
[media] xc4000: added support for 7 MHz DVB-T

The following patch implements support for DVB-T with 7 MHz bandwidth.

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: updated standards table
Istvan Varga [Fri, 3 Jun 2011 13:55:24 +0000 (10:55 -0300)]
[media] xc4000: updated standards table

This patch makes the following changes to the standards table:
  - added 'u16 int_freq' to struct XC_TV_STANDARD (needed for analog TV
    and radio, 0 for DVB-T)
  - added new standard for SECAM-D/K video with PAL-D/K audio
  - the 'int_freq' values are now specified in the table
  - changed VideoMode for NTSC and PAL-B/G standards

Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: code cleanup
Istvan Varga [Fri, 3 Jun 2011 13:11:48 +0000 (10:11 -0300)]
[media] xc4000: code cleanup

This is the first of a set of patches that update the original xc4000
sources to my modified version. It removes some unused code, and makes
a few minor formatting changes.

[mchehab@redhat.com: re-add XC_TUNE_ANALOG/XC_TUNE_DIGITAL constants, to avoid compilation breakage]
Signed-off-by: Istvan Varga <istvan_v@mailbox.hu>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: Fix a few bad whitespaces on it
Mauro Carvalho Chehab [Thu, 2 Jun 2011 14:36:56 +0000 (11:36 -0300)]
[media] xc4000: Fix a few bad whitespaces on it

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: remove notes from bringup of PCTV 340e
Devin Heitmueller [Sun, 27 Dec 2009 21:58:11 +0000 (18:58 -0300)]
[media] dib0700: remove notes from bringup of PCTV 340e

Remove some inline comments I had written from when I was computing the proper
dib7000p configuration to work with the xc4000.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: cleanup dmesg logging
Devin Heitmueller [Sun, 27 Dec 2009 21:15:14 +0000 (18:15 -0300)]
[media] xc4000: cleanup dmesg logging

Remove some printk() calls added during driver development, and demote some
other messages to debug only (to reduce dmesg chatter).

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: rename firmware image filename
Devin Heitmueller [Sun, 27 Dec 2009 20:55:13 +0000 (17:55 -0300)]
[media] xc4000: rename firmware image filename

Give the xc4000 firmware filename a filename that makes more sense for public
release.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: turn off debug logging by default
Devin Heitmueller [Sun, 27 Dec 2009 20:50:43 +0000 (17:50 -0300)]
[media] xc4000: turn off debug logging by default

Don't dump debug into to dmesg by default (something I had enabled during
bringup of the xc4000 driver).

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: make PCTV 340e work!
Devin Heitmueller [Sun, 27 Dec 2009 20:44:31 +0000 (17:44 -0300)]
[media] dib0700: make PCTV 340e work!

Fixup the PLL and AGC configs so that the 340e works (correcting errors I made
when I did the original config blindly).

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: get rid of hard-coded 8MHz firmware config
Devin Heitmueller [Mon, 5 Oct 2009 04:27:14 +0000 (01:27 -0300)]
[media] xc4000: get rid of hard-coded 8MHz firmware config

Remove a hack I had put in to force the firmware to be 8MHz, now setting
the firmware properly based on the target standard.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: fixup PLL config for PCTV 340e
Devin Heitmueller [Mon, 5 Oct 2009 03:34:04 +0000 (00:34 -0300)]
[media] dib0700: fixup PLL config for PCTV 340e

Based on a reference trace under Windows, reverse engineer the PLL config.
Note that the xtal is not yet setup, and the timf cannot be determined yet
because my reference trace doesn't actually achieve a signal lock.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: handle dib0700 broken i2c stretching
Devin Heitmueller [Mon, 5 Oct 2009 02:09:18 +0000 (23:09 -0300)]
[media] xc4000: handle dib0700 broken i2c stretching

It was confirmed by DibCom that i2c stretching is broken in the i2c master
on the dib7700.  So we need to put a hack into the xc4000 driver to not
complain in certain very specific cases where we know i2c stretching occurs.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: setup dib7000p AGC config for PCTV 340e
Devin Heitmueller [Tue, 28 Jul 2009 04:16:05 +0000 (01:16 -0300)]
[media] xc4000: setup dib7000p AGC config for PCTV 340e

Setup a proper AGC config for the 340e, based on the Windows USB trace

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: use if_khz provided in xc4000_config
Devin Heitmueller [Tue, 28 Jul 2009 03:04:27 +0000 (00:04 -0300)]
[media] xc4000: use if_khz provided in xc4000_config

Remove hard-coded references to 5400, using the value passed in when the
xc4000 is attached.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: continued cleanup of the firmware loading routine
Devin Heitmueller [Tue, 28 Jul 2009 02:51:54 +0000 (23:51 -0300)]
[media] xc4000: continued cleanup of the firmware loading routine

Properly setup the standard firmware loading and scode loading, as well as
getting rid of a ton of dead code.  Note that I am getting a single i2c
error when the standard firmware sets the video standard, but everything else
seems to be loading properly now.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: add code to do standard and scode firmware loading
Devin Heitmueller [Sat, 25 Jul 2009 20:39:54 +0000 (17:39 -0300)]
[media] xc4000: add code to do standard and scode firmware loading

Add code to handle firmware blobs for the standard and scode.  Note there
appears to be some issue with loading the DTV8 standard firmware, probably
related to direct/indirect mode.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: remove xc5000 firmware loading routine
Devin Heitmueller [Thu, 23 Jul 2009 00:56:37 +0000 (21:56 -0300)]
[media] xc4000: remove xc5000 firmware loading routine

Since we use the xc3028 version of the firmware file parsing routine (which
includes support for scodes and separate blobs), we can drop the xc5000
version of the code.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: remove XREG_BUSY code only supported in xc5000
Devin Heitmueller [Thu, 23 Jul 2009 00:52:11 +0000 (21:52 -0300)]
[media] xc4000: remove XREG_BUSY code only supported in xc5000

The xc4000 driver is based on the original xc5000 driver, and while the
xc5000 supports the XREG_BUSY register, the xc4000 does not.  So remove the
code in question.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: properly set type for init1 firmware
Devin Heitmueller [Thu, 23 Jul 2009 00:49:28 +0000 (21:49 -0300)]
[media] xc4000: properly set type for init1 firmware

We need to set the firmware type properly in order to locate the init1
firmware.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: cut over to using xc5000 version for loading i2c sequences
Devin Heitmueller [Mon, 20 Jul 2009 05:15:31 +0000 (02:15 -0300)]
[media] xc4000: cut over to using xc5000 version for loading i2c sequences

The xc3028 version does i2c splitting in a different manner than xc4000 and
xc5000, so reuse the xc5000 version of the routine (the key here being that
xc4000 expects the first *two* bytes to be the same for splitting transactions.

Doing it the xc3028 way was resulting in i2c errors partially through the
firmware load.  With this change, it would appear that the entire base firmware
is being loaded successfully (product id now properly shows 0x0FA0).

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] xc4000: pull in firmware management code from xc3028
Devin Heitmueller [Mon, 20 Jul 2009 03:54:57 +0000 (00:54 -0300)]
[media] xc4000: pull in firmware management code from xc3028

Switch over to using the firmware management routines from the tuner-xc2028,
since that has support for scodes, etc.

This code still requires signficant cleanup, and at this point the base
firmware does not load properly (i2c write errors about 300 bytes in).

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib7000p: setup dev.parent for i2c master built into 7000p
Devin Heitmueller [Mon, 20 Jul 2009 03:45:25 +0000 (00:45 -0300)]
[media] dib7000p: setup dev.parent for i2c master built into 7000p

We need to set the dev.parent member on the dib7000p on its i2c master, or
else calls to request_firmware() will hit an oops in 2.6.31.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: add a sleep before attempting to detect dib7000p
Devin Heitmueller [Mon, 20 Jul 2009 03:42:33 +0000 (00:42 -0300)]
[media] dib0700: add a sleep before attempting to detect dib7000p

Add a sleep since in some cases the dib7000p wasn't online when being probed.
The optimal timing has not yet been determined.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: successfully connect to xc4000 over i2c for PCTV 340e
Devin Heitmueller [Tue, 30 Jun 2009 00:11:02 +0000 (21:11 -0300)]
[media] dib0700: successfully connect to xc4000 over i2c for PCTV 340e

Use the correct i2c bus to communicate with the tuner, and properly setup the
reset GPIO and i2c address.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: properly setup GPIOs for PCTV 340e
Devin Heitmueller [Wed, 24 Jun 2009 03:07:01 +0000 (00:07 -0300)]
[media] dib0700: properly setup GPIOs for PCTV 340e

Provide a frontend setup routine for the PCTV 340e which takes into account
the specific GPIO setup of the board.

Note that this patch does *not* take into account the xc4000 reset pin, which
is attached to the dib7000.

Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: add USB id for PCTV 340eSE
Devin Heitmueller [Wed, 24 Jun 2009 01:48:02 +0000 (22:48 -0300)]
[media] dib0700: add USB id for PCTV 340eSE

Add the board profile for the PCTV 340eSE, since that's what I have here
for development.

[mchehab@redhat.com: rebased on the top of the current tree]
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dib0700: add initial code for PCTV 340e by Davide Ferri
Davide Ferri [Wed, 24 Jun 2009 01:34:06 +0000 (22:34 -0300)]
[media] dib0700: add initial code for PCTV 340e by Davide Ferri

This is initial code written by Davide Ferri for the PCTV 340e, including
a new xc4000 driver.  I am checking in all the code unmodified, and making
no assertions about its quality (other than confirming it compiles).

[mchehab@redhat.com: rebased on the top of the current tree]
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Davide Ferri <davidef1986@gmail.com>
Cc: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] mt9v011: Fixed gain calculation
Johannes Obermaier [Thu, 2 Jun 2011 16:03:41 +0000 (13:03 -0300)]
[media] mt9v011: Fixed gain calculation

The implementation of the gain calculation for this sensor is incorrect.
It is only working for the first 127 values.

The reason is, that the gain cannot be set directly by writing a value
into the gain registers of the sensor. The gain register work this way
(see datasheet page 24): bits 0 to 6 are called "initial gain". These
are linear. But bits 7 and 8 ("analog multiplicative factors") and bits
9 and 10 ("digital multiplicative factors") work completely different:
Each of these bits increase the gain by the factor 2. So if the bits
7-10 are 0011, 0110, 1100 or 0101 for example, the gain from bits 0-6 is
multiplied by 4. The order of the bits 7-10 is not important for the
resulting gain. (But there are some recommended values for low noise)

The current driver doesn't do this correctly: If the current gain is 000
0111 1111 (127) and the gain is increased by 1, you would expect the
image to become brighter. But the image is completly dark, because the
new gain is 000 1000 0000 (128). This means: Initial gain of 0,
multiplied by 2. The result is 0.

This patch adds a new function which does the gain calculation and also
fixes the same bug for red_balance and blue_balance. Additionally, the
driver follows the recommendation from the datasheet, which says, that
the gain should always be above 0x0020.

Tested-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Johannes Obermaier <johannes.obermaier@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>