Re: WinTV 1100 HD Model 1108

2009-12-19 Thread Antonio Marcos López Alonso
El Viernes 18 Diciembre 2009, fabio tirapelle escribió:
 Hi
 
 I use the Hauppauge WinTV 1100 HD Model 1108 on Ubuntu 9.10 with Mythtv
  0.22 Do you know if there is problem with this card? This question as the
  signal sometimes scratch. It seems a problem during process the mpeg
  stream from DVB-T
 
 Thanks
 

I own a HVR-1100 but do not know this model HD 1108. But yes, since several 
kernel revisions ago sound and video are stuttering for me. I have not done 
further investigations as I am trying other cards but maybe tweaking some cx88 
module parameters could help.

Cheers
Antonio
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [patch] media video cx23888 driver: fix possible races using new kfifo_API kfifo_reset()

2009-12-19 Thread Mauro Carvalho Chehab
Em 18-12-2009 21:43, Andy Walls escreveu:
 On Fri, 2009-12-18 at 23:21 +0100, Stefani Seibold wrote:
 Fix the cx23888 driver to use the new kfifo API. Using kfifo_reset() may
 result in a possible race conditions. This patch fix it by using
 spinlock around the kfifo_reset() function.

 The patch-set is against mm tree from 11-Dec-2009

 Greetings,
 Stefani

 Signed-off-by: Stefani Seibold stef...@seibold.net
 
 For both this patch together with your previous patch:
 
 Reviewed-by: Andy Walls awa...@radix.net
 Acked-by: Andy Walls awa...@radix.net
Acked-by: Mauro Carvalho Chehab mche...@redhat.com
 
 Thanks Stefani.
 
 Regards,
 Andy
 
 ---
  cx23888-ir.c |9 +
  1 file changed, 9 insertions(+)

 --- mmotm.orig/drivers/media/video/cx23885/cx23888-ir.c  2009-12-18 
 22:57:13.588337402 +0100
 +++ mmotm/drivers/media/video/cx23885/cx23888-ir.c   2009-12-18 
 23:15:14.651365720 +0100
 @@ -519,6 +519,7 @@ static int cx23888_ir_irq_handler(struct
  {
  struct cx23888_ir_state *state = to_state(sd);
  struct cx23885_dev *dev = state-dev;
 +unsigned long flags;
  
  u32 cntrl = cx23888_ir_read4(dev, CX23888_IR_CNTRL_REG);
  u32 irqen = cx23888_ir_read4(dev, CX23888_IR_IRQEN_REG);
 @@ -629,8 +630,11 @@ static int cx23888_ir_irq_handler(struct
  cx23888_ir_write4(dev, CX23888_IR_CNTRL_REG, cntrl);
  *handled = true;
  }
 +
 +spin_lock_irqsave(state-rx_kfifo_lock, flags);
  if (kfifo_len(state-rx_kfifo) = CX23888_IR_RX_KFIFO_SIZE / 2)
  events |= V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ;
 +spin_unlock_irqrestore(state-rx_kfifo_lock, flags);
  
  if (events)
  v4l2_subdev_notify(sd, V4L2_SUBDEV_IR_RX_NOTIFY, events);
 @@ -783,7 +787,12 @@ static int cx23888_ir_rx_s_parameters(st
  o-interrupt_enable = p-interrupt_enable;
  o-enable = p-enable;
  if (p-enable) {
 +unsigned long flags;
 +
 +spin_lock_irqsave(state-rx_kfifo_lock, flags);
  kfifo_reset(state-rx_kfifo);
 +/* reset tx_fifo too if there is one... */
 +spin_unlock_irqrestore(state-rx_kfifo_lock, flags);
  if (p-interrupt_enable)
  irqenable_rx(dev, IRQEN_RSE | IRQEN_RTE | IRQEN_ROE);
  control_rx_enable(dev, p-enable);


 
 --
 To unsubscribe from this list: send the line unsubscribe linux-media in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


How to make a Zaapa LR301AP DVB-T card work

2009-12-19 Thread Antonio Marcos López Alonso
Hi all,

I borrowed a Zaapa LR301AP DVB-T card from a friend to try to make it work in 
Linux, so I kindly request your help. The card features one antenna input, one 
IR input (remote and sensor wire being lost) and one AV input. Here follows 
the system info:


On-board printed info:

Main chip: Philips SAA 7134 HL
Other chips: TDA 10046A, TDA 8274, MDT 2005ES-G.

lspci -vnn

00:0c.0 Multimedia controller [0480]: Philips Semiconductors SAA7134/SAA7135HL 
Video Broadcast Decoder [1131:7134] (rev 01)
Subsystem: Device [4e42:0301]   
   
Flags: bus master, medium devsel, latency 64, IRQ 11
   
Memory at dc00 (32-bit, non-prefetchable) [size=1K] 
   
Capabilities: [40] Power Management version 1   
   
Kernel driver in use: saa7134 

dmesg | grep saa
***
saa7130/34: v4l2 driver version 0.2.15 loaded   

  
[8.854415] saa7134 :00:0c.0: PCI INT A - Link[LNKB] - GSI 11 (level, 
low) - IRQ 11
[8.854423] saa7134[0]: found at :00:0c.0, rev: 1, irq: 11, latency: 
64, mmio: 0xdc00
[8.854430] saa7134[0]: subsystem: 4e42:0301, board: UNKNOWN/GENERIC 
[card=0,autodetected]
[8.854453] saa7134[0]: board init: gpio is 1
[8.854458] IRQ 11/saa7134[0]: IRQF_DISABLED is not guaranteed on shared 
IRQs
[9.004012] saa7134[0]: i2c eeprom 00: 42 4e 01 03 54 20 1c 00 43 43 a9 1c 
55 d2 b2 92
[9.004022] saa7134[0]: i2c eeprom 10: 00 ff 86 0f ff 20 ff ff ff ff ff ff 
ff ff ff ff
[9.004030] saa7134[0]: i2c eeprom 20: 01 40 01 03 03 01 01 03 08 ff 01 e2 
ff ff ff ff
[9.004038] saa7134[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004045] saa7134[0]: i2c eeprom 40: ff 1b 00 c0 ff 10 01 00 ff ff ff ff 
ff ff ff ff
[9.004052] saa7134[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004059] saa7134[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004067] saa7134[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004074] saa7134[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004081] saa7134[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004089] saa7134[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004096] saa7134[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004103] saa7134[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004111] saa7134[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004118] saa7134[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004125] saa7134[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff
[9.004271] saa7134[0]: registered device video0 [v4l2]
[9.004299] saa7134[0]: registered device vbi0
[9.565411] saa7134 ALSA driver for DMA sound loaded
[9.565424] IRQ 11/saa7134[0]: IRQF_DISABLED is not guaranteed on shared 
IRQs
[9.565451] saa7134[0]/alsa: saa7134[0] at 0xdc00 irq 11 registered as 
card -1
[ 3368.737762] saa7134[0]/irq[10,4295734480]: r=0x20 s=0x00 PE
[ 3368.737770] saa7134[0]/irq: looping -- clearing PE (parity error!) enable 
bit


No DVB-T button appears in Kaffeine, so the card is not being detected by the 
app.

Thanks for any help
Antonio
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: linux-next: Tree for December 19 (media/mantis)

2009-12-19 Thread Manu Abraham
On Sat, Dec 19, 2009 at 7:18 AM, Randy Dunlap randy.dun...@oracle.com wrote:
 On Sat, 19 Dec 2009 11:04:57 +1100 Stephen Rothwell wrote:

 Hi all,

 I said:
  News:  there will be no linux-next releases until at least Dec 24 and,
  more likely, Dec 29.  Have a Merry Christmas and take a break.  :-)

 Well, I decided I had time for one more so it will be based in -rc1).

 This one has not had the build testing *between* merges, but has had all
 the normal build testing at the end.  Since the latter testing showed no
 problems, this just means that there may be more unbisectable points in
 the tree (but that is unlikely).



 ERROR: ir_input_register [drivers/media/dvb/mantis/mantis_core.ko] 
 undefined!
 ERROR: ir_input_unregister [drivers/media/dvb/mantis/mantis_core.ko] 
 undefined!
 ERROR: ir_input_init [drivers/media/dvb/mantis/mantis_core.ko] undefined!
 ERROR: input_free_device [drivers/media/dvb/mantis/mantis_core.ko] 
 undefined!
 ERROR: input_allocate_device [drivers/media/dvb/mantis/mantis_core.ko] 
 undefined!



 CONFIG_INPUT=n

Attached patch to fix the issue.

Fix Input dependency for Mantis

From: Manu Abraham abraham.m...@gmail.com
Signed-off-by: Manu Abraham m...@linuxtv.org

Regards,
Manu
diff --git a/drivers/media/dvb/mantis/Kconfig b/drivers/media/dvb/mantis/Kconfig
index f9219cd..f7b72a3 100644
--- a/drivers/media/dvb/mantis/Kconfig
+++ b/drivers/media/dvb/mantis/Kconfig
@@ -1,6 +1,6 @@
 config MANTIS_CORE
 	tristate Mantis/Hopper PCI bridge based devices
-	depends on PCI  I2C
+	depends on PCI  I2C  INPUT
 
 	help
 	  Support for PCI cards based on the Mantis and Hopper PCi bridge.


Re: Pinnacle Hybrid Pro Stick USB scan problems

2009-12-19 Thread Douglas Schilling Landgraf

Hi Andreas,

On 12/19/2009 06:46 AM, Andreas Lunderhage wrote:

There is a missing header file in the repo...

/home/lunderhage/v4l-dvb/v4l/radio-miropcm20.c:20:23: error: 
sound/aci.h: No such file or directory


Can someone push that file into the repo or send it to me, please?



Thanks for your report.

Please add into v4l/versions.txt file:
[2.6.33]
RADIO_MIROPCM20

then

make distclean
make
make rmmod
make install

Cheers
Douglas

BR
/Andreas

Devin Heitmueller wrote:
On Mon, Dec 14, 2009 at 2:05 PM, Andreas Lunderhage 
lunderh...@home.se wrote:

Hi,

I have problems scanning with my Pinnacle Hybrid Pro Stick (320E). When
using the scan command, it finds the channels in the first mux in 
the mux
file but it fails to tune the next ones. If I use Kaffeine to scan, 
it gives
the same result but I can also see that the signal strength shows 
99% on

those muxes it fails to scan.

I thinks this is a problem with the tuning since if I watch one 
channel and
switch to another (on another mux), it fails to tune. If I stop the 
viewing

of the current channel first, then it will succeed tuning the next.

I'm running Ubuntu 9.04 32-bit (kernel 2.6.28-17-generic) with the code
built from the repository today.
I'm also running Ubuntu 9.10 64-bit (kernel 2.6.31-16) (on another 
machine),

but it gives the same problem.


First, make sure you are running the latest v4l-dvb code (instructions
at http://linuxtv.org/repo), and then try commenting out line 181 of
em28xx-cards.c and see if that fixes the issue.

Devin



--
video4linux-list mailing list
Unsubscribe 
mailto:video4linux-list-requ...@redhat.com?subject=unsubscribe

https://www.redhat.com/mailman/listinfo/video4linux-list


--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: linux-next: Tree for December 19 (media/mantis)

2009-12-19 Thread Randy Dunlap
On Sat, 19 Dec 2009 21:11:50 +0400 Manu Abraham wrote:

 On Sat, Dec 19, 2009 at 7:18 AM, Randy Dunlap randy.dun...@oracle.com wrote:
  On Sat, 19 Dec 2009 11:04:57 +1100 Stephen Rothwell wrote:
 
  Hi all,
 
  I said:
   News:  there will be no linux-next releases until at least Dec 24 and,
   more likely, Dec 29.  Have a Merry Christmas and take a break.  :-)
 
  Well, I decided I had time for one more so it will be based in -rc1).
 
  This one has not had the build testing *between* merges, but has had all
  the normal build testing at the end.  Since the latter testing showed no
  problems, this just means that there may be more unbisectable points in
  the tree (but that is unlikely).
 
 
 
  ERROR: ir_input_register [drivers/media/dvb/mantis/mantis_core.ko] 
  undefined!
  ERROR: ir_input_unregister [drivers/media/dvb/mantis/mantis_core.ko] 
  undefined!
  ERROR: ir_input_init [drivers/media/dvb/mantis/mantis_core.ko] undefined!
  ERROR: input_free_device [drivers/media/dvb/mantis/mantis_core.ko] 
  undefined!
  ERROR: input_allocate_device [drivers/media/dvb/mantis/mantis_core.ko] 
  undefined!
 
 
 
  CONFIG_INPUT=n
 
 Attached patch to fix the issue.
 
 Fix Input dependency for Mantis
 
 From: Manu Abraham abraham.m...@gmail.com
 Signed-off-by: Manu Abraham m...@linuxtv.org

Acked-by: Randy Dunlap randy.dun...@oracle.com

Thanks.

---
~Randy
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[cron job] v4l-dvb daily build 2.6.22 and up: ERRORS, 2.6.16-2.6.21: ERRORS

2009-12-19 Thread Hans Verkuil
This message is generated daily by a cron job that builds v4l-dvb for
the kernels and architectures in the list below.

Results of the daily build of v4l-dvb:

date:Sat Dec 19 19:00:02 CET 2009
path:http://www.linuxtv.org/hg/v4l-dvb
changeset:   13836:9defbd461e5f
gcc version: gcc (GCC) 4.3.1
hardware:x86_64
host os: 2.6.26

linux-2.6.30-armv5: OK
linux-2.6.31-armv5: OK
linux-2.6.32-armv5: OK
linux-2.6.32-armv5-davinci: OK
linux-2.6.30-armv5-ixp: OK
linux-2.6.31-armv5-ixp: OK
linux-2.6.32-armv5-ixp: OK
linux-2.6.30-armv5-omap2: OK
linux-2.6.31-armv5-omap2: OK
linux-2.6.32-armv5-omap2: OK
linux-2.6.22.19-i686: ERRORS
linux-2.6.23.12-i686: ERRORS
linux-2.6.24.7-i686: ERRORS
linux-2.6.25.11-i686: ERRORS
linux-2.6.26-i686: WARNINGS
linux-2.6.27-i686: ERRORS
linux-2.6.28-i686: ERRORS
linux-2.6.29.1-i686: ERRORS
linux-2.6.30-i686: ERRORS
linux-2.6.31-i686: ERRORS
linux-2.6.32-i686: ERRORS
linux-2.6.30-m32r: OK
linux-2.6.31-m32r: OK
linux-2.6.32-m32r: OK
linux-2.6.30-mips: WARNINGS
linux-2.6.31-mips: OK
linux-2.6.32-mips: OK
linux-2.6.30-powerpc64: WARNINGS
linux-2.6.31-powerpc64: OK
linux-2.6.32-powerpc64: WARNINGS
linux-2.6.22.19-x86_64: ERRORS
linux-2.6.23.12-x86_64: ERRORS
linux-2.6.24.7-x86_64: ERRORS
linux-2.6.25.11-x86_64: ERRORS
linux-2.6.26-x86_64: WARNINGS
linux-2.6.27-x86_64: OK
linux-2.6.28-x86_64: OK
linux-2.6.29.1-x86_64: WARNINGS
linux-2.6.30-x86_64: OK
linux-2.6.31-x86_64: WARNINGS
linux-2.6.32-x86_64: WARNINGS
spec: OK
sparse (linux-2.6.32): ERRORS
linux-2.6.16.61-i686: ERRORS
linux-2.6.17.14-i686: ERRORS
linux-2.6.18.8-i686: ERRORS
linux-2.6.19.5-i686: ERRORS
linux-2.6.20.21-i686: ERRORS
linux-2.6.21.7-i686: ERRORS
linux-2.6.16.61-x86_64: ERRORS
linux-2.6.17.14-x86_64: ERRORS
linux-2.6.18.8-x86_64: ERRORS
linux-2.6.19.5-x86_64: ERRORS
linux-2.6.20.21-x86_64: ERRORS
linux-2.6.21.7-x86_64: ERRORS

Detailed results are available here:

http://www.xs4all.nl/~hverkuil/logs/Saturday.log

Full logs are available here:

http://www.xs4all.nl/~hverkuil/logs/Saturday.tar.bz2

The V4L-DVB specification from this daily build is here:

http://www.xs4all.nl/~hverkuil/spec/media.html
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: How to make a Zaapa LR301AP DVB-T card work

2009-12-19 Thread hermann pitton
Hi,

Am Samstag, den 19.12.2009, 14:00 + schrieb Antonio Marcos López
Alonso:
 Hi all,
 
 I borrowed a Zaapa LR301AP DVB-T card from a friend to try to make it work in 
 Linux, so I kindly request your help. The card features one antenna input, 
 one 
 IR input (remote and sensor wire being lost) and one AV input. Here follows 
 the system info:
 
 
 On-board printed info:
 
 Main chip: Philips SAA 7134 HL
 Other chips: TDA 10046A, TDA 8274, MDT 2005ES-G.
 
 lspci -vnn
 
 00:0c.0 Multimedia controller [0480]: Philips Semiconductors 
 SAA7134/SAA7135HL 
 Video Broadcast Decoder [1131:7134] (rev 01)
 Subsystem: Device [4e42:0301] 
  
 Flags: bus master, medium devsel, latency 64, IRQ 11  
  
 Memory at dc00 (32-bit, non-prefetchable) [size=1K]   
  
 Capabilities: [40] Power Management version 1 
  
 Kernel driver in use: saa7134 
 
 dmesg | grep saa
 ***
 saa7130/34: v4l2 driver version 0.2.15 loaded 
   
   
 [8.854415] saa7134 :00:0c.0: PCI INT A - Link[LNKB] - GSI 11 
 (level, 
 low) - IRQ 11
 [8.854423] saa7134[0]: found at :00:0c.0, rev: 1, irq: 11, latency: 
 64, mmio: 0xdc00
 [8.854430] saa7134[0]: subsystem: 4e42:0301, board: UNKNOWN/GENERIC 
 [card=0,autodetected]
 [8.854453] saa7134[0]: board init: gpio is 1
 [8.854458] IRQ 11/saa7134[0]: IRQF_DISABLED is not guaranteed on shared 
 IRQs
 [9.004012] saa7134[0]: i2c eeprom 00: 42 4e 01 03 54 20 1c 00 43 43 a9 1c 
 55 d2 b2 92
 [9.004022] saa7134[0]: i2c eeprom 10: 00 ff 86 0f ff 20 ff ff ff ff ff ff 
 ff ff ff ff
 [9.004030] saa7134[0]: i2c eeprom 20: 01 40 01 03 03 01 01 03 08 ff 01 e2 
 ff ff ff ff
 [9.004038] saa7134[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004045] saa7134[0]: i2c eeprom 40: ff 1b 00 c0 ff 10 01 00 ff ff ff ff 
 ff ff ff ff
 [9.004052] saa7134[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004059] saa7134[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004067] saa7134[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004074] saa7134[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004081] saa7134[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004089] saa7134[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004096] saa7134[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004103] saa7134[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004111] saa7134[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004118] saa7134[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004125] saa7134[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff 
 ff ff ff ff
 [9.004271] saa7134[0]: registered device video0 [v4l2]
 [9.004299] saa7134[0]: registered device vbi0
 [9.565411] saa7134 ALSA driver for DMA sound loaded
 [9.565424] IRQ 11/saa7134[0]: IRQF_DISABLED is not guaranteed on shared 
 IRQs
 [9.565451] saa7134[0]/alsa: saa7134[0] at 0xdc00 irq 11 registered as 
 card -1
 [ 3368.737762] saa7134[0]/irq[10,4295734480]: r=0x20 s=0x00 PE
 [ 3368.737770] saa7134[0]/irq: looping -- clearing PE (parity error!) enable 
 bit
 
 
 No DVB-T button appears in Kaffeine, so the card is not being detected by the 
 app.
 

please try with card=86.

If everything is fine, we add it to auto detection.

Cheers,
Hermann




--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 3/4 v13] TVP7002 driver for DM365

2009-12-19 Thread Alexey Klimov
Hello,

On Fri, Dec 18, 2009 at 8:07 PM,  santiago.nu...@ridgerun.com wrote:
 From: Santiago Nunez-Corrales santiago.nu...@ridgerun.com

 This patch provides the implementation of the TVP7002 decoder
 driver for DM365. Implemented using the V4L2 DV presets API.
 Removed shadow register values. Testing shows that the device
 needs not to be powered down and up for correct behaviour.
 Improved readability. Uses helper function for preset information.

 Signed-off-by: Santiago Nunez-Corrales santiago.nu...@ridgerun.com
 ---
  drivers/media/video/tvp7002.c | 1189 
 +
  1 files changed, 1189 insertions(+), 0 deletions(-)
  create mode 100644 drivers/media/video/tvp7002.c

 diff --git a/drivers/media/video/tvp7002.c b/drivers/media/video/tvp7002.c
 new file mode 100644
 index 000..058ffda
 --- /dev/null
 +++ b/drivers/media/video/tvp7002.c
 @@ -0,0 +1,1189 @@
 +/* Texas Instruments Triple 8-/10-BIT 165-/110-MSPS Video and Graphics
 + * Digitizer with Horizontal PLL registers
 + *
 + * Copyright (C) 2009 Texas Instruments Inc
 + * Author: Santiago Nunez-Corrales santiago.nu...@ridgerun.com
 + *
 + * This code is partially based upon the TVP5150 driver
 + * written by Mauro Carvalho Chehab (mche...@infradead.org),
 + * the TVP514x driver written by Vaibhav Hiremath hvaib...@ti.com
 + * and the TVP7002 driver in the TI LSP 2.10.00.14. Revisions by
 + * Muralidharan Karicheri and Snehaprabha Narnakaje (TI).
 + *
 + * This program is free software; you can redistribute it and/or modify
 + * it under the terms of the GNU General Public License as published by
 + * the Free Software Foundation; either version 2 of the License, or
 + * (at your option) any later version.
 + *
 + * This program is distributed in the hope that it will be useful,
 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 + * GNU General Public License for more details.
 + *
 + * You should have received a copy of the GNU General Public License
 + * along with this program; if not, write to the Free Software
 + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 + */
 +#include linux/delay.h
 +#include linux/i2c.h
 +#include linux/videodev2.h
 +#include media/tvp7002.h
 +#include media/v4l2-device.h
 +#include media/v4l2-chip-ident.h
 +#include media/v4l2-common.h
 +#include tvp7002_reg.h
 +
 +MODULE_DESCRIPTION(TI TVP7002 Video and Graphics Digitizer driver);
 +MODULE_AUTHOR(Santiago Nunez-Corrales santiago.nu...@ridgerun.com);
 +MODULE_LICENSE(GPL);
 +
 +/* Module Name */
 +#define TVP7002_MODULE_NAME    tvp7002
 +
 +/* I2C retry attempts */
 +#define I2C_RETRY_COUNT                (5)
 +
 +/* End of registers */
 +#define TVP7002_EOR            0x5c
 +
 +/* Read write definition for registers */
 +#define TVP7002_READ           0
 +#define TVP7002_WRITE          1
 +#define TVP7002_RESERVED       2
 +
 +/* Interlaced vs progressive mask and shift */
 +#define TVP7002_IP_SHIFT       5
 +#define TVP7002_INPR_MASK      (0x01  TVP7002_IP_SHIFT)
 +
 +/* Shift for CPL and LPF registers */
 +#define TVP7002_CL_SHIFT       8
 +#define TVP7002_CL_MASK                0x0f
 +
 +/* Debug functions */
 +static int debug;
 +module_param(debug, bool, 0644);
 +MODULE_PARM_DESC(debug, Debug level (0-2));
 +
 +/* Structure for register values */
 +struct i2c_reg_value {
 +       u8 reg;
 +       u8 value;
 +       u8 type;
 +};
 +
 +/*
 + * Register default values (according to tvp7002 datasheet)
 + * In the case of read-only registers, the value (0xff) is
 + * never written. R/W functionality is controlled by the
 + * writable bit in the register struct definition.
 + */
 +static const struct i2c_reg_value tvp7002_init_default[] = {
 +       { TVP7002_CHIP_REV, 0xff, TVP7002_READ },
 +       { TVP7002_HPLL_FDBK_DIV_MSBS, 0x67, TVP7002_WRITE },
 +       { TVP7002_HPLL_FDBK_DIV_LSBS, 0x20, TVP7002_WRITE },
 +       { TVP7002_HPLL_CRTL, 0xa0, TVP7002_WRITE },
 +       { TVP7002_HPLL_PHASE_SEL, 0x80, TVP7002_WRITE },
 +       { TVP7002_CLAMP_START, 0x32, TVP7002_WRITE },
 +       { TVP7002_CLAMP_W, 0x20, TVP7002_WRITE },
 +       { TVP7002_HSYNC_OUT_W, 0x60, TVP7002_WRITE },
 +       { TVP7002_B_FINE_GAIN, 0x00, TVP7002_WRITE },
 +       { TVP7002_G_FINE_GAIN, 0x00, TVP7002_WRITE },
 +       { TVP7002_R_FINE_GAIN, 0x00, TVP7002_WRITE },
 +       { TVP7002_B_FINE_OFF_MSBS, 0x80, TVP7002_WRITE },
 +       { TVP7002_G_FINE_OFF_MSBS, 0x80, TVP7002_WRITE },
 +       { TVP7002_R_FINE_OFF_MSBS, 0x80, TVP7002_WRITE },
 +       { TVP7002_SYNC_CTL_1, 0x20, TVP7002_WRITE },
 +       { TVP7002_HPLL_AND_CLAMP_CTL, 0x2e, TVP7002_WRITE },
 +       { TVP7002_SYNC_ON_G_THRS, 0x5d, TVP7002_WRITE },
 +       { TVP7002_SYNC_SEPARATOR_THRS, 0x47, TVP7002_WRITE },
 +       { TVP7002_HPLL_PRE_COAST, 0x00, TVP7002_WRITE },
 +       { TVP7002_HPLL_POST_COAST, 0x00, TVP7002_WRITE },
 +       { TVP7002_SYNC_DETECT_STAT, 0xff, TVP7002_READ },
 +       {