[PATCH] LifeView FlyTV Platinum FM: GPIO usage
authorPeter Missel <peter.missel@onlinehome.de>
Sun, 1 May 2005 15:59:05 +0000 (08:59 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Sun, 1 May 2005 15:59:05 +0000 (08:59 -0700)
This is take two of a patch that should have appeared two days ago, before
yesterday's "remote control" patch for the same card.

This patch sets unconnected GPIO to Output to keep them from floating (just
good driver writing practice, being nice to the chip), and uses GPIO16 to
switch TV vs.  FM - this pin switches inputs onto the tuner, as well as the
audio output from the tuner into the 7135 SIF input.  Consequently, FM
radio support is being un-commented because it's now working (sort of, see
below).

These two patches get the card almost fully operational; there appears to
be a bug in tda8290.c remaining that puts an offset onto the tuned
frequency in FM radio mode.  We're investigating.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/media/video/saa7134/saa7134-cards.c

index cfe4b57..72a7b24 100644 (file)
@@ -183,12 +183,12 @@ struct saa7134_board saa7134_boards[] = {
                .name           = "LifeView FlyTV Platinum FM",
                .audio_clock    = 0x00200000,
                .tuner_type     = TUNER_PHILIPS_TDA8290,
-//             .gpiomask       = 0xe000,
+               .gpiomask       = 0x1E000,      /* Set GP16 and unused 15,14,13 to Output */
                .inputs         = {{
                        .name = name_tv,
                        .vmux = 1,
                        .amux = TV,
-//                     .gpio = 0x0000,
+                       .gpio = 0x10000,        /* GP16=1 selects TV input */
                        .tv   = 1,
                 },{
 /*                     .name = name_tv_mono,
@@ -212,12 +212,12 @@ struct saa7134_board saa7134_boards[] = {
                        .amux = LINE2,
 //                     .gpio = 0x4000,
                }},
-/*             .radio = {
+               .radio = {
                        .name = name_radio,
-                       .amux = LINE2,
-                       .gpio = 0x2000,
+                       .amux = TV,
+                       .gpio = 0x00000,        /* GP16=0 selects FM radio antenna */
                },
-*/     },
+       },
        [SAA7134_BOARD_EMPRESS] = {
                /* "Gert Vervoort" <gert.vervoort@philips.com> */
                .name           = "EMPRESS",