linux/drivers/media/video/saa7134/saa7134-cards.c
<<
>>
Prefs
   1/*
   2 *
   3 * device driver for philips saa7134 based TV cards
   4 * card-specific stuff.
   5 *
   6 * (c) 2001-04 Gerd Knorr <kraxel@bytesex.org> [SuSE Labs]
   7 *
   8 *  This program is free software; you can redistribute it and/or modify
   9 *  it under the terms of the GNU General Public License as published by
  10 *  the Free Software Foundation; either version 2 of the License, or
  11 *  (at your option) any later version.
  12 *
  13 *  This program is distributed in the hope that it will be useful,
  14 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  15 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16 *  GNU General Public License for more details.
  17 *
  18 *  You should have received a copy of the GNU General Public License
  19 *  along with this program; if not, write to the Free Software
  20 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21 */
  22
  23#include <linux/init.h>
  24#include <linux/module.h>
  25#include <linux/i2c.h>
  26#include <linux/i2c-algo-bit.h>
  27
  28#include "saa7134-reg.h"
  29#include "saa7134.h"
  30#include "tuner-xc2028.h"
  31#include <media/v4l2-common.h>
  32#include <media/tveeprom.h>
  33#include "tea5767.h"
  34#include "tda18271.h"
  35#include "xc5000.h"
  36
  37/* commly used strings */
  38static char name_mute[]    = "mute";
  39static char name_radio[]   = "Radio";
  40static char name_tv[]      = "Television";
  41static char name_tv_mono[] = "TV (mono only)";
  42static char name_comp[]    = "Composite";
  43static char name_comp1[]   = "Composite1";
  44static char name_comp2[]   = "Composite2";
  45static char name_comp3[]   = "Composite3";
  46static char name_comp4[]   = "Composite4";
  47static char name_svideo[]  = "S-Video";
  48
  49/* ------------------------------------------------------------------ */
  50/* board config info                                                  */
  51
  52/* If radio_type !=UNSET, radio_addr should be specified
  53 */
  54
  55struct saa7134_board saa7134_boards[] = {
  56        [SAA7134_BOARD_UNKNOWN] = {
  57                .name           = "UNKNOWN/GENERIC",
  58                .audio_clock    = 0x00187de7,
  59                .tuner_type     = TUNER_ABSENT,
  60                .radio_type     = UNSET,
  61                .tuner_addr     = ADDR_UNSET,
  62                .radio_addr     = ADDR_UNSET,
  63
  64                .inputs         = {{
  65                        .name = "default",
  66                        .vmux = 0,
  67                        .amux = LINE1,
  68                }},
  69        },
  70        [SAA7134_BOARD_PROTEUS_PRO] = {
  71                /* /me */
  72                .name           = "Proteus Pro [philips reference design]",
  73                .audio_clock    = 0x00187de7,
  74                .tuner_type     = TUNER_PHILIPS_PAL,
  75                .radio_type     = UNSET,
  76                .tuner_addr     = ADDR_UNSET,
  77                .radio_addr     = ADDR_UNSET,
  78
  79                .inputs         = {{
  80                        .name = name_comp1,
  81                        .vmux = 0,
  82                        .amux = LINE1,
  83                },{
  84                        .name = name_tv,
  85                        .vmux = 1,
  86                        .amux = TV,
  87                        .tv   = 1,
  88                },{
  89                        .name = name_tv_mono,
  90                        .vmux = 1,
  91                        .amux = LINE2,
  92                        .tv   = 1,
  93                }},
  94                .radio = {
  95                        .name = name_radio,
  96                        .amux = LINE2,
  97                },
  98        },
  99        [SAA7134_BOARD_FLYVIDEO3000] = {
 100                /* "Marco d'Itri" <md@Linux.IT> */
 101                .name           = "LifeView FlyVIDEO3000",
 102                .audio_clock    = 0x00200000,
 103                .tuner_type     = TUNER_PHILIPS_PAL,
 104                .radio_type     = UNSET,
 105                .tuner_addr     = ADDR_UNSET,
 106                .radio_addr     = ADDR_UNSET,
 107
 108                .gpiomask       = 0xe000,
 109                .inputs         = {{
 110                        .name = name_tv,
 111                        .vmux = 1,
 112                        .amux = TV,
 113                        .gpio = 0x8000,
 114                        .tv   = 1,
 115                },{
 116                        .name = name_tv_mono,
 117                        .vmux = 1,
 118                        .amux = LINE2,
 119                        .gpio = 0x0000,
 120                        .tv   = 1,
 121                },{
 122                        .name = name_comp1,
 123                        .vmux = 0,
 124                        .amux = LINE2,
 125                        .gpio = 0x4000,
 126                },{
 127                        .name = name_comp2,
 128                        .vmux = 3,
 129                        .amux = LINE2,
 130                        .gpio = 0x4000,
 131                },{
 132                        .name = name_svideo,
 133                        .vmux = 8,
 134                        .amux = LINE2,
 135                        .gpio = 0x4000,
 136                }},
 137                .radio = {
 138                        .name = name_radio,
 139                        .amux = LINE2,
 140                        .gpio = 0x2000,
 141                },
 142                .mute = {
 143                        .name = name_mute,
 144                        .amux = TV,
 145                        .gpio = 0x8000,
 146                },
 147        },
 148        [SAA7134_BOARD_FLYVIDEO2000] = {
 149                /* "TC Wan" <tcwan@cs.usm.my> */
 150                .name           = "LifeView/Typhoon FlyVIDEO2000",
 151                .audio_clock    = 0x00200000,
 152                .tuner_type     = TUNER_LG_PAL_NEW_TAPC,
 153                .radio_type     = UNSET,
 154                .tuner_addr     = ADDR_UNSET,
 155                .radio_addr     = ADDR_UNSET,
 156
 157                .gpiomask       = 0xe000,
 158                .inputs         = {{
 159                        .name = name_tv,
 160                        .vmux = 1,
 161                        .amux = LINE2,
 162                        .gpio = 0x0000,
 163                        .tv   = 1,
 164                },{
 165                        .name = name_comp1,
 166                        .vmux = 0,
 167                        .amux = LINE2,
 168                        .gpio = 0x4000,
 169                },{
 170                        .name = name_comp2,
 171                        .vmux = 3,
 172                        .amux = LINE2,
 173                        .gpio = 0x4000,
 174                },{
 175                        .name = name_svideo,
 176                        .vmux = 8,
 177                        .amux = LINE2,
 178                        .gpio = 0x4000,
 179                }},
 180                .radio = {
 181                        .name = name_radio,
 182                        .amux = LINE2,
 183                        .gpio = 0x2000,
 184                },
 185                .mute = {
 186                        .name = name_mute,
 187                        .amux = LINE2,
 188                        .gpio = 0x8000,
 189                },
 190        },
 191        [SAA7134_BOARD_FLYTVPLATINUM_MINI] = {
 192                /* "Arnaud Quette" <aquette@free.fr> */
 193                .name           = "LifeView FlyTV Platinum Mini",
 194                .audio_clock    = 0x00200000,
 195                .tuner_type     = TUNER_PHILIPS_TDA8290,
 196                .radio_type     = UNSET,
 197                .tuner_addr     = ADDR_UNSET,
 198                .radio_addr     = ADDR_UNSET,
 199
 200                .inputs         = {{
 201                        .name = name_tv,
 202                        .vmux = 1,
 203                        .amux = TV,
 204                        .tv   = 1,
 205                },{
 206                        .name = name_comp1,     /* Composite signal on S-Video input */
 207                        .vmux = 0,
 208                        .amux = LINE2,
 209                },{
 210                        .name = name_comp2,     /* Composite input */
 211                        .vmux = 3,
 212                        .amux = LINE2,
 213                },{
 214                        .name = name_svideo,
 215                        .vmux = 8,
 216                        .amux = LINE2,
 217                }},
 218        },
 219        [SAA7134_BOARD_FLYTVPLATINUM_FM] = {
 220                /* LifeView FlyTV Platinum FM (LR214WF) */
 221                /* "Peter Missel <peter.missel@onlinehome.de> */
 222                .name           = "LifeView FlyTV Platinum FM / Gold",
 223                .audio_clock    = 0x00200000,
 224                .tuner_type     = TUNER_PHILIPS_TDA8290,
 225                .radio_type     = UNSET,
 226                .tuner_addr     = ADDR_UNSET,
 227                .radio_addr     = ADDR_UNSET,
 228
 229                .gpiomask       = 0x1E000,      /* Set GP16 and unused 15,14,13 to Output */
 230                .inputs         = {{
 231                        .name = name_tv,
 232                        .vmux = 1,
 233                        .amux = TV,
 234                        .gpio = 0x10000,        /* GP16=1 selects TV input */
 235                        .tv   = 1,
 236                },{
 237/*                      .name = name_tv_mono,
 238                        .vmux = 1,
 239                        .amux = LINE2,
 240                        .gpio = 0x0000,
 241                        .tv   = 1,
 242                },{
 243*/                      .name = name_comp1,     /* Composite signal on S-Video input */
 244                        .vmux = 0,
 245                        .amux = LINE2,
 246/*                      .gpio = 0x4000,         */
 247                },{
 248                        .name = name_comp2,     /* Composite input */
 249                        .vmux = 3,
 250                        .amux = LINE2,
 251/*                      .gpio = 0x4000,         */
 252                },{
 253                        .name = name_svideo,    /* S-Video signal on S-Video input */
 254                        .vmux = 8,
 255                        .amux = LINE2,
 256/*                      .gpio = 0x4000,         */
 257                }},
 258                .radio = {
 259                        .name = name_radio,
 260                        .amux = TV,
 261                        .gpio = 0x00000,        /* GP16=0 selects FM radio antenna */
 262                },
 263                .mute = {
 264                        .name = name_mute,
 265                        .amux = TV,
 266                        .gpio = 0x10000,
 267                },
 268        },
 269        [SAA7134_BOARD_ROVERMEDIA_LINK_PRO_FM] = {
 270                /* RoverMedia TV Link Pro FM (LR138 REV:I) */
 271                /* Eugene Yudin <Eugene.Yudin@gmail.com> */
 272                .name           = "RoverMedia TV Link Pro FM",
 273                .audio_clock    = 0x00200000,
 274                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3, /* TCL MFPE05 2 */
 275                .radio_type     = UNSET,
 276                .tuner_addr     = ADDR_UNSET,
 277                .radio_addr     = ADDR_UNSET,
 278                .tda9887_conf   = TDA9887_PRESENT,
 279                .gpiomask       = 0xe000,
 280                .inputs         = { {
 281                        .name = name_tv,
 282                        .vmux = 1,
 283                        .amux = TV,
 284                        .gpio = 0x8000,
 285                        .tv   = 1,
 286                }, {
 287                        .name = name_tv_mono,
 288                        .vmux = 1,
 289                        .amux = LINE2,
 290                        .gpio = 0x0000,
 291                        .tv   = 1,
 292                }, {
 293                        .name = name_comp1,
 294                        .vmux = 0,
 295                        .amux = LINE2,
 296                        .gpio = 0x4000,
 297                }, {
 298                        .name = name_comp2,
 299                        .vmux = 3,
 300                        .amux = LINE2,
 301                        .gpio = 0x4000,
 302                }, {
 303                        .name = name_svideo,
 304                        .vmux = 8,
 305                        .amux = LINE2,
 306                        .gpio = 0x4000,
 307                } },
 308                .radio = {
 309                        .name = name_radio,
 310                        .amux = LINE2,
 311                        .gpio = 0x2000,
 312                },
 313                .mute = {
 314                        .name = name_mute,
 315                        .amux = TV,
 316                        .gpio = 0x8000,
 317                },
 318        },
 319        [SAA7134_BOARD_EMPRESS] = {
 320                /* "Gert Vervoort" <gert.vervoort@philips.com> */
 321                .name           = "EMPRESS",
 322                .audio_clock    = 0x00187de7,
 323                .tuner_type     = TUNER_PHILIPS_PAL,
 324                .radio_type     = UNSET,
 325                .tuner_addr     = ADDR_UNSET,
 326                .radio_addr     = ADDR_UNSET,
 327                .empress_addr   = 0x20,
 328
 329                .inputs         = {{
 330                        .name = name_comp1,
 331                        .vmux = 0,
 332                        .amux = LINE1,
 333                },{
 334                        .name = name_svideo,
 335                        .vmux = 8,
 336                        .amux = LINE1,
 337                },{
 338                        .name = name_tv,
 339                        .vmux = 1,
 340                        .amux = LINE2,
 341                        .tv   = 1,
 342                }},
 343                .radio = {
 344                        .name = name_radio,
 345                        .amux = LINE2,
 346                },
 347                .mpeg      = SAA7134_MPEG_EMPRESS,
 348                .video_out = CCIR656,
 349        },
 350        [SAA7134_BOARD_MONSTERTV] = {
 351                /* "K.Ohta" <alpha292@bremen.or.jp> */
 352                .name           = "SKNet Monster TV",
 353                .audio_clock    = 0x00187de7,
 354                .tuner_type     = TUNER_PHILIPS_NTSC_M,
 355                .radio_type     = UNSET,
 356                .tuner_addr     = ADDR_UNSET,
 357                .radio_addr     = ADDR_UNSET,
 358
 359                .inputs         = {{
 360                        .name = name_tv,
 361                        .vmux = 1,
 362                        .amux = TV,
 363                        .tv   = 1,
 364                },{
 365                        .name = name_comp1,
 366                        .vmux = 0,
 367                        .amux = LINE1,
 368                },{
 369                        .name = name_svideo,
 370                        .vmux = 8,
 371                        .amux = LINE1,
 372                }},
 373                .radio = {
 374                        .name = name_radio,
 375                        .amux = LINE2,
 376                },
 377        },
 378        [SAA7134_BOARD_MD9717] = {
 379                .name           = "Tevion MD 9717",
 380                .audio_clock    = 0x00200000,
 381                .tuner_type     = TUNER_PHILIPS_PAL,
 382                .radio_type     = UNSET,
 383                .tuner_addr     = ADDR_UNSET,
 384                .radio_addr     = ADDR_UNSET,
 385                .inputs         = {{
 386                        .name = name_tv,
 387                        .vmux = 1,
 388                        .amux = TV,
 389                        .tv   = 1,
 390                },{
 391                        /* workaround for problems with normal TV sound */
 392                        .name = name_tv_mono,
 393                        .vmux = 1,
 394                        .amux = LINE2,
 395                        .tv   = 1,
 396                },{
 397                        .name = name_comp1,
 398                        .vmux = 0,
 399                        .amux = LINE1,
 400                },{
 401                        .name = name_comp2,
 402                        .vmux = 3,
 403                        .amux = LINE1,
 404                },{
 405                        .name = name_svideo,
 406                        .vmux = 8,
 407                        .amux = LINE1,
 408                }},
 409                .radio = {
 410                        .name = name_radio,
 411                        .amux = LINE2,
 412                },
 413               .mute = {
 414                       .name = name_mute,
 415                       .amux = TV,
 416               },
 417        },
 418        [SAA7134_BOARD_TVSTATION_RDS] = {
 419                /* Typhoon TV Tuner RDS: Art.Nr. 50694 */
 420                .name           = "KNC One TV-Station RDS / Typhoon TV Tuner RDS",
 421                .audio_clock    = 0x00200000,
 422                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
 423                .radio_type     = UNSET,
 424                .tuner_addr     = ADDR_UNSET,
 425                .radio_addr     = ADDR_UNSET,
 426                .tda9887_conf   = TDA9887_PRESENT,
 427                .inputs         = {{
 428                        .name = name_tv,
 429                        .vmux = 1,
 430                        .amux = TV,
 431                        .tv   = 1,
 432                },{
 433                        .name = name_tv_mono,
 434                        .vmux = 1,
 435                        .amux   = LINE2,
 436                        .tv   = 1,
 437                },{
 438
 439                        .name = name_svideo,
 440                        .vmux = 8,
 441                        .amux = LINE1,
 442                },{
 443                        .name = name_comp1,
 444                        .vmux = 3,
 445                        .amux = LINE1,
 446                },{
 447
 448                        .name = "CVid over SVid",
 449                        .vmux = 0,
 450                        .amux = LINE1,
 451                }},
 452                .radio = {
 453                        .name = name_radio,
 454                        .amux = LINE2,
 455                },
 456        },
 457        [SAA7134_BOARD_TVSTATION_DVR] = {
 458                .name           = "KNC One TV-Station DVR",
 459                .audio_clock    = 0x00200000,
 460                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
 461                .radio_type     = UNSET,
 462                .tuner_addr     = ADDR_UNSET,
 463                .radio_addr     = ADDR_UNSET,
 464                .empress_addr   = 0x20,
 465                .tda9887_conf   = TDA9887_PRESENT,
 466                .gpiomask       = 0x820000,
 467                .inputs         = {{
 468                        .name = name_tv,
 469                        .vmux = 1,
 470                        .amux = TV,
 471                        .tv   = 1,
 472                        .gpio = 0x20000,
 473                },{
 474                        .name = name_svideo,
 475                        .vmux = 8,
 476                        .amux = LINE1,
 477                        .gpio = 0x20000,
 478                },{
 479                        .name = name_comp1,
 480                        .vmux = 3,
 481                        .amux = LINE1,
 482                        .gpio = 0x20000,
 483                }},
 484                .radio          = {
 485                        .name = name_radio,
 486                        .amux = LINE2,
 487                        .gpio = 0x20000,
 488                },
 489                .mpeg           = SAA7134_MPEG_EMPRESS,
 490                .video_out      = CCIR656,
 491        },
 492        [SAA7134_BOARD_CINERGY400] = {
 493                .name           = "Terratec Cinergy 400 TV",
 494                .audio_clock    = 0x00200000,
 495                .tuner_type     = TUNER_PHILIPS_PAL,
 496                .radio_type     = UNSET,
 497                .tuner_addr     = ADDR_UNSET,
 498                .radio_addr     = ADDR_UNSET,
 499                .inputs         = {{
 500                        .name = name_tv,
 501                        .vmux = 1,
 502                        .amux = TV,
 503                        .tv   = 1,
 504                },{
 505                        .name = name_comp1,
 506                        .vmux = 4,
 507                        .amux = LINE1,
 508                },{
 509                        .name = name_svideo,
 510                        .vmux = 8,
 511                        .amux = LINE1,
 512                },{
 513                        .name = name_comp2, /* CVideo over SVideo Connector */
 514                        .vmux = 0,
 515                        .amux = LINE1,
 516                }}
 517        },
 518        [SAA7134_BOARD_MD5044] = {
 519                .name           = "Medion 5044",
 520                .audio_clock    = 0x00187de7, /* was: 0x00200000, */
 521                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
 522                .radio_type     = UNSET,
 523                .tuner_addr     = ADDR_UNSET,
 524                .radio_addr     = ADDR_UNSET,
 525                .tda9887_conf   = TDA9887_PRESENT,
 526                .inputs         = {{
 527                        .name = name_tv,
 528                        .vmux = 1,
 529                        .amux = TV,
 530                        .tv   = 1,
 531                },{
 532                        /* workaround for problems with normal TV sound */
 533                        .name = name_tv_mono,
 534                        .vmux = 1,
 535                        .amux = LINE2,
 536                        .tv   = 1,
 537                },{
 538                        .name = name_comp1,
 539                        .vmux = 0,
 540                        .amux = LINE2,
 541                },{
 542                        .name = name_comp2,
 543                        .vmux = 3,
 544                        .amux = LINE2,
 545                },{
 546                        .name = name_svideo,
 547                        .vmux = 8,
 548                        .amux = LINE2,
 549                }},
 550                .radio = {
 551                        .name = name_radio,
 552                        .amux = LINE2,
 553                },
 554        },
 555        [SAA7134_BOARD_KWORLD] = {
 556                .name           = "Kworld/KuroutoShikou SAA7130-TVPCI",
 557                .audio_clock    = 0x00187de7,
 558                .tuner_type     = TUNER_PHILIPS_NTSC_M,
 559                .radio_type     = UNSET,
 560                .tuner_addr     = ADDR_UNSET,
 561                .radio_addr     = ADDR_UNSET,
 562                .inputs         = {{
 563                        .name = name_svideo,
 564                        .vmux = 8,
 565                        .amux = LINE1,
 566                },{
 567                        .name = name_comp1,
 568                        .vmux = 3,
 569                        .amux = LINE1,
 570                },{
 571                        .name = name_tv,
 572                        .vmux = 1,
 573                        .amux = LINE2,
 574                        .tv   = 1,
 575                }},
 576        },
 577        [SAA7134_BOARD_CINERGY600] = {
 578                .name           = "Terratec Cinergy 600 TV",
 579                .audio_clock    = 0x00200000,
 580                .tuner_type     = TUNER_PHILIPS_PAL,
 581                .radio_type     = UNSET,
 582                .tuner_addr     = ADDR_UNSET,
 583                .radio_addr     = ADDR_UNSET,
 584                .tda9887_conf   = TDA9887_PRESENT,
 585                .inputs         = {{
 586                        .name = name_tv,
 587                        .vmux = 1,
 588                        .amux = TV,
 589                        .tv   = 1,
 590                },{
 591                        .name = name_comp1,
 592                        .vmux = 4,
 593                        .amux = LINE1,
 594                },{
 595                        .name = name_svideo,
 596                        .vmux = 8,
 597                        .amux = LINE1,
 598                },{
 599                        .name = name_comp2, /* CVideo over SVideo Connector */
 600                        .vmux = 0,
 601                        .amux = LINE1,
 602                }},
 603                .radio = {
 604                        .name = name_radio,
 605                        .amux = LINE2,
 606                },
 607        },
 608        [SAA7134_BOARD_MD7134] = {
 609                .name           = "Medion 7134",
 610                .audio_clock    = 0x00187de7,
 611                .tuner_type     = TUNER_PHILIPS_FMD1216ME_MK3,
 612                .radio_type     = UNSET,
 613                .tuner_addr     = ADDR_UNSET,
 614                .radio_addr     = ADDR_UNSET,
 615                .tda9887_conf   = TDA9887_PRESENT,
 616                .mpeg           = SAA7134_MPEG_DVB,
 617                .inputs = {{
 618                        .name   = name_tv,
 619                        .vmux   = 1,
 620                        .amux   = TV,
 621                        .tv     = 1,
 622                },{
 623                        .name   = name_comp1,
 624                        .vmux   = 0,
 625                        .amux   = LINE1,
 626                },{
 627                        .name   = name_svideo,
 628                        .vmux   = 8,
 629                        .amux   = LINE1,
 630                }},
 631                .radio = {
 632                        .name   = name_radio,
 633                        .amux   = LINE2,
 634               },
 635               .mute = {
 636                       .name = name_mute,
 637                       .amux = TV,
 638                },
 639        },
 640        [SAA7134_BOARD_TYPHOON_90031] = {
 641                /* aka Typhoon "TV+Radio", Art.Nr 90031 */
 642                /* Tom Zoerner <tomzo at users sourceforge net> */
 643                .name           = "Typhoon TV+Radio 90031",
 644                .audio_clock    = 0x00200000,
 645                .tuner_type     = TUNER_PHILIPS_PAL,
 646                .radio_type     = UNSET,
 647                .tuner_addr     = ADDR_UNSET,
 648                .radio_addr     = ADDR_UNSET,
 649                .tda9887_conf   = TDA9887_PRESENT,
 650                .inputs         = {{
 651                        .name   = name_tv,
 652                        .vmux   = 1,
 653                        .amux   = TV,
 654                        .tv     = 1,
 655                },{
 656                        .name   = name_comp1,
 657                        .vmux   = 3,
 658                        .amux   = LINE1,
 659                },{
 660                        .name   = name_svideo,
 661                        .vmux   = 8,
 662                        .amux   = LINE1,
 663                }},
 664                .radio = {
 665                        .name   = name_radio,
 666                        .amux   = LINE2,
 667                },
 668        },
 669        [SAA7134_BOARD_ELSA] = {
 670                .name           = "ELSA EX-VISION 300TV",
 671                .audio_clock    = 0x00187de7,
 672                .tuner_type     = TUNER_HITACHI_NTSC,
 673                .radio_type     = UNSET,
 674                .tuner_addr     = ADDR_UNSET,
 675                .radio_addr     = ADDR_UNSET,
 676                .inputs         = {{
 677                        .name = name_svideo,
 678                        .vmux = 8,
 679                        .amux = LINE1,
 680                },{
 681                        .name   = name_comp1,
 682                        .vmux   = 0,
 683                        .amux   = LINE1,
 684                },{
 685                        .name = name_tv,
 686                        .vmux = 4,
 687                        .amux = LINE2,
 688                        .tv   = 1,
 689                }},
 690        },
 691        [SAA7134_BOARD_ELSA_500TV] = {
 692                .name           = "ELSA EX-VISION 500TV",
 693                .audio_clock    = 0x00187de7,
 694                .tuner_type     = TUNER_HITACHI_NTSC,
 695                .radio_type     = UNSET,
 696                .tuner_addr     = ADDR_UNSET,
 697                .radio_addr     = ADDR_UNSET,
 698                .inputs         = {{
 699                        .name = name_svideo,
 700                        .vmux = 7,
 701                        .amux = LINE1,
 702                },{
 703                        .name = name_tv,
 704                        .vmux = 8,
 705                        .amux = TV,
 706                        .tv   = 1,
 707                },{
 708                        .name = name_tv_mono,
 709                        .vmux = 8,
 710                        .amux = LINE2,
 711                        .tv   = 1,
 712                }},
 713        },
 714        [SAA7134_BOARD_ELSA_700TV] = {
 715                .name           = "ELSA EX-VISION 700TV",
 716                .audio_clock    = 0x00187de7,
 717                .tuner_type     = TUNER_HITACHI_NTSC,
 718                .radio_type     = UNSET,
 719                .tuner_addr     = ADDR_UNSET,
 720                .radio_addr     = ADDR_UNSET,
 721                .inputs         = {{
 722                        .name = name_tv,
 723                        .vmux = 4,
 724                        .amux = LINE2,
 725                        .tv   = 1,
 726                },{
 727                        .name = name_comp1,
 728                        .vmux = 6,
 729                        .amux = LINE1,
 730                },{
 731                        .name = name_svideo,
 732                        .vmux = 7,
 733                        .amux = LINE1,
 734                }},
 735                .mute           = {
 736                        .name = name_mute,
 737                        .amux = TV,
 738                },
 739        },
 740        [SAA7134_BOARD_ASUSTeK_TVFM7134] = {
 741                .name           = "ASUS TV-FM 7134",
 742                .audio_clock    = 0x00187de7,
 743                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
 744                .radio_type     = UNSET,
 745                .tuner_addr     = ADDR_UNSET,
 746                .radio_addr     = ADDR_UNSET,
 747                .tda9887_conf   = TDA9887_PRESENT,
 748                .inputs         = {{
 749                        .name = name_tv,
 750                        .vmux = 1,
 751                        .amux = TV,
 752                        .tv   = 1,
 753                },{
 754                        .name = name_comp1,
 755                        .vmux = 4,
 756                        .amux = LINE2,
 757                },{
 758                        .name = name_svideo,
 759                        .vmux = 6,
 760                        .amux = LINE2,
 761                }},
 762                .radio = {
 763                        .name = name_radio,
 764                        .amux = LINE1,
 765                },
 766        },
 767        [SAA7134_BOARD_ASUSTeK_TVFM7135] = {
 768                .name           = "ASUS TV-FM 7135",
 769                .audio_clock    = 0x00187de7,
 770                .tuner_type     = TUNER_PHILIPS_TDA8290,
 771                .radio_type     = UNSET,
 772                .tuner_addr     = ADDR_UNSET,
 773                .radio_addr     = ADDR_UNSET,
 774                .gpiomask       = 0x200000,
 775                .inputs         = {{
 776                        .name = name_tv,
 777                        .vmux = 1,
 778                        .amux = TV,
 779                        .gpio = 0x0000,
 780                        .tv   = 1,
 781                },{
 782                        .name = name_comp1,
 783                        .vmux = 4,
 784                        .amux = LINE2,
 785                        .gpio = 0x0000,
 786                },{
 787                        .name = name_svideo,
 788                        .vmux = 6,
 789                        .amux = LINE2,
 790                        .gpio = 0x0000,
 791                }},
 792                .radio = {
 793                        .name = name_radio,
 794                        .amux = TV,
 795                        .gpio = 0x200000,
 796                },
 797                .mute  = {
 798                        .name = name_mute,
 799                        .gpio = 0x0000,
 800                },
 801
 802        },
 803        [SAA7134_BOARD_VA1000POWER] = {
 804                .name           = "AOPEN VA1000 POWER",
 805                .audio_clock    = 0x00187de7,
 806                .tuner_type     = TUNER_PHILIPS_NTSC,
 807                .radio_type     = UNSET,
 808                .tuner_addr     = ADDR_UNSET,
 809                .radio_addr     = ADDR_UNSET,
 810                .inputs         = {{
 811                        .name = name_svideo,
 812                        .vmux = 8,
 813                        .amux = LINE1,
 814                },{
 815                        .name = name_comp1,
 816                        .vmux = 3,
 817                        .amux = LINE1,
 818                },{
 819                        .name = name_tv,
 820                        .vmux = 1,
 821                        .amux = LINE2,
 822                        .tv   = 1,
 823                }},
 824        },
 825        [SAA7134_BOARD_10MOONSTVMASTER] = {
 826                /* "lilicheng" <llc@linuxfans.org> */
 827                .name           = "10MOONS PCI TV CAPTURE CARD",
 828                .audio_clock    = 0x00200000,
 829                .tuner_type     = TUNER_LG_PAL_NEW_TAPC,
 830                .radio_type     = UNSET,
 831                .tuner_addr     = ADDR_UNSET,
 832                .radio_addr     = ADDR_UNSET,
 833                .gpiomask       = 0xe000,
 834                .inputs         = {{
 835                        .name = name_tv,
 836                        .vmux = 1,
 837                        .amux = LINE2,
 838                        .gpio = 0x0000,
 839                        .tv   = 1,
 840                },{
 841                        .name = name_comp1,
 842                        .vmux = 0,
 843                        .amux = LINE2,
 844                        .gpio = 0x4000,
 845                },{
 846                        .name = name_comp2,
 847                        .vmux = 3,
 848                        .amux = LINE2,
 849                        .gpio = 0x4000,
 850                },{
 851                        .name = name_svideo,
 852                        .vmux = 8,
 853                        .amux = LINE2,
 854                        .gpio = 0x4000,
 855                }},
 856                .radio = {
 857                        .name = name_radio,
 858                        .amux = LINE2,
 859                        .gpio = 0x2000,
 860                },
 861                .mute = {
 862                        .name = name_mute,
 863                        .amux = LINE2,
 864                        .gpio = 0x8000,
 865                },
 866        },
 867        [SAA7134_BOARD_BMK_MPEX_NOTUNER] = {
 868                /* "Andrew de Quincey" <adq@lidskialf.net> */
 869                .name           = "BMK MPEX No Tuner",
 870                .audio_clock    = 0x200000,
 871                .tuner_type     = TUNER_ABSENT,
 872                .radio_type     = UNSET,
 873                .tuner_addr     = ADDR_UNSET,
 874                .radio_addr     = ADDR_UNSET,
 875                .empress_addr   = 0x20,
 876                .inputs         = {{
 877                        .name = name_comp1,
 878                        .vmux = 4,
 879                        .amux = LINE1,
 880                },{
 881                        .name = name_comp2,
 882                        .vmux = 3,
 883                        .amux = LINE1,
 884                },{
 885                        .name = name_comp3,
 886                        .vmux = 0,
 887                        .amux = LINE1,
 888                },{
 889                        .name = name_comp4,
 890                        .vmux = 1,
 891                        .amux = LINE1,
 892                },{
 893                        .name = name_svideo,
 894                        .vmux = 8,
 895                        .amux = LINE1,
 896                }},
 897                .mpeg      = SAA7134_MPEG_EMPRESS,
 898                .video_out = CCIR656,
 899        },
 900        [SAA7134_BOARD_VIDEOMATE_TV] = {
 901                .name           = "Compro VideoMate TV",
 902                .audio_clock    = 0x00187de7,
 903                .tuner_type     = TUNER_PHILIPS_NTSC_M,
 904                .radio_type     = UNSET,
 905                .tuner_addr     = ADDR_UNSET,
 906                .radio_addr     = ADDR_UNSET,
 907                .inputs         = {{
 908                        .name = name_svideo,
 909                        .vmux = 8,
 910                        .amux = LINE1,
 911                },{
 912                        .name = name_comp1,
 913                        .vmux = 3,
 914                        .amux = LINE1,
 915                },{
 916                        .name = name_tv,
 917                        .vmux = 1,
 918                        .amux = LINE2,
 919                        .tv   = 1,
 920                }},
 921        },
 922        [SAA7134_BOARD_VIDEOMATE_TV_GOLD_PLUS] = {
 923                .name           = "Compro VideoMate TV Gold+",
 924                .audio_clock    = 0x00187de7,
 925                .tuner_type     = TUNER_PHILIPS_NTSC_M,
 926                .gpiomask       = 0x800c0000,
 927                .radio_type     = UNSET,
 928                .tuner_addr     = ADDR_UNSET,
 929                .radio_addr     = ADDR_UNSET,
 930                .inputs         = {{
 931                        .name = name_svideo,
 932                        .vmux = 8,
 933                        .amux = LINE1,
 934                        .gpio = 0x06c00012,
 935                },{
 936                        .name = name_comp1,
 937                        .vmux = 3,
 938                        .amux = LINE1,
 939                        .gpio = 0x0ac20012,
 940                },{
 941                        .name = name_tv,
 942                        .vmux = 1,
 943                        .amux = LINE2,
 944                        .gpio = 0x08c20012,
 945                        .tv   = 1,
 946                }},                             /* radio and probably mute is missing */
 947        },
 948        [SAA7134_BOARD_CRONOS_PLUS] = {
 949                /*
 950                gpio pins:
 951                        0  .. 3   BASE_ID
 952                        4  .. 7   PROTECT_ID
 953                        8  .. 11  USER_OUT
 954                        12 .. 13  USER_IN
 955                        14 .. 15  VIDIN_SEL
 956                */
 957                .name           = "Matrox CronosPlus",
 958                .tuner_type     = TUNER_ABSENT,
 959                .radio_type     = UNSET,
 960                .tuner_addr     = ADDR_UNSET,
 961                .radio_addr     = ADDR_UNSET,
 962                .gpiomask       = 0xcf00,
 963                .inputs         = {{
 964                        .name = name_comp1,
 965                        .vmux = 0,
 966                        .gpio = 2 << 14,
 967                },{
 968                        .name = name_comp2,
 969                        .vmux = 0,
 970                        .gpio = 1 << 14,
 971                },{
 972                        .name = name_comp3,
 973                        .vmux = 0,
 974                        .gpio = 0 << 14,
 975                },{
 976                        .name = name_comp4,
 977                        .vmux = 0,
 978                        .gpio = 3 << 14,
 979                },{
 980                        .name = name_svideo,
 981                        .vmux = 8,
 982                        .gpio = 2 << 14,
 983                }},
 984        },
 985        [SAA7134_BOARD_MD2819] = {
 986                .name           = "AverMedia M156 / Medion 2819",
 987                .audio_clock    = 0x00187de7,
 988                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
 989                .radio_type     = UNSET,
 990                .tuner_addr     = ADDR_UNSET,
 991                .radio_addr     = ADDR_UNSET,
 992                .tda9887_conf   = TDA9887_PRESENT,
 993                .gpiomask       = 0x03,
 994                .inputs         = {{
 995                        .name = name_tv,
 996                        .vmux = 1,
 997                        .amux = TV,
 998                        .tv   = 1,
 999                        .gpio = 0x00,
1000                }, {
1001                        .name = name_comp1,
1002                        .vmux = 3,
1003                        .amux = LINE1,
1004                        .gpio = 0x02,
1005                }, {
1006                        .name = name_comp2,
1007                        .vmux = 0,
1008                        .amux = LINE1,
1009                        .gpio = 0x02,
1010                }, {
1011                        .name = name_svideo,
1012                        .vmux = 8,
1013                        .amux = LINE1,
1014                        .gpio = 0x02,
1015                } },
1016                .radio = {
1017                        .name = name_radio,
1018                        .amux = LINE1,
1019                        .gpio = 0x01,
1020                },
1021                .mute  = {
1022                        .name = name_mute,
1023                        .amux = TV,
1024                        .gpio = 0x00,
1025                },
1026        },
1027        [SAA7134_BOARD_BMK_MPEX_TUNER] = {
1028                /* "Greg Wickham <greg.wickham@grangenet.net> */
1029                .name           = "BMK MPEX Tuner",
1030                .audio_clock    = 0x200000,
1031                .tuner_type     = TUNER_PHILIPS_PAL,
1032                .radio_type     = UNSET,
1033                .tuner_addr     = ADDR_UNSET,
1034                .radio_addr     = ADDR_UNSET,
1035                .empress_addr   = 0x20,
1036                .inputs         = {{
1037                        .name = name_comp1,
1038                        .vmux = 1,
1039                        .amux = LINE1,
1040                },{
1041                        .name = name_svideo,
1042                        .vmux = 8,
1043                        .amux = LINE1,
1044                },{
1045                        .name = name_tv,
1046                        .vmux = 3,
1047                        .amux = TV,
1048                        .tv   = 1,
1049                }},
1050                .mpeg      = SAA7134_MPEG_EMPRESS,
1051                .video_out = CCIR656,
1052        },
1053        [SAA7134_BOARD_ASUSTEK_TVFM7133] = {
1054                .name           = "ASUS TV-FM 7133",
1055                .audio_clock    = 0x00187de7,
1056                /* probably wrong, the 7133 one is the NTSC version ...
1057                * .tuner_type  = TUNER_PHILIPS_FM1236_MK3 */
1058                .tuner_type     = TUNER_LG_NTSC_NEW_TAPC,
1059                .radio_type     = UNSET,
1060                .tuner_addr     = ADDR_UNSET,
1061                .radio_addr     = ADDR_UNSET,
1062                .tda9887_conf   = TDA9887_PRESENT,
1063                .inputs         = {{
1064                        .name = name_tv,
1065                        .vmux = 1,
1066                        .amux = TV,
1067                        .tv   = 1,
1068
1069                },{
1070                        .name = name_comp1,
1071                        .vmux = 4,
1072                        .amux = LINE2,
1073                },{
1074                        .name = name_svideo,
1075                        .vmux = 6,
1076                        .amux = LINE2,
1077                }},
1078                .radio = {
1079                        .name = name_radio,
1080                        .amux = LINE1,
1081                },
1082        },
1083        [SAA7134_BOARD_PINNACLE_PCTV_STEREO] = {
1084                .name           = "Pinnacle PCTV Stereo (saa7134)",
1085                .audio_clock    = 0x00187de7,
1086                .tuner_type     = TUNER_MT2032,
1087                .radio_type     = UNSET,
1088                .tuner_addr     = ADDR_UNSET,
1089                .radio_addr     = ADDR_UNSET,
1090                .tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE,
1091                .inputs         = {{
1092                        .name = name_tv,
1093                        .vmux = 3,
1094                        .amux = TV,
1095                        .tv   = 1,
1096                },{
1097                        .name = name_comp1,
1098                        .vmux = 0,
1099                        .amux = LINE2,
1100                },{
1101                        .name = name_comp2,
1102                        .vmux = 1,
1103                        .amux = LINE2,
1104                },{
1105                        .name = name_svideo,
1106                        .vmux = 8,
1107                        .amux = LINE2,
1108                }},
1109        },
1110        [SAA7134_BOARD_MANLI_MTV002] = {
1111                /* Ognjen Nastic <ognjen@logosoft.ba> */
1112                .name           = "Manli MuchTV M-TV002",
1113                .audio_clock    = 0x00200000,
1114                .tuner_type     = TUNER_PHILIPS_PAL,
1115                .radio_type     = UNSET,
1116                .tuner_addr     = ADDR_UNSET,
1117                .radio_addr     = ADDR_UNSET,
1118                .inputs         = {{
1119                        .name = name_svideo,
1120                        .vmux = 8,
1121                        .amux = LINE1,
1122                },{
1123                        .name   = name_comp1,
1124                        .vmux   = 1,
1125                        .amux   = LINE1,
1126                },{
1127                        .name = name_tv,
1128                        .vmux = 3,
1129                        .amux = LINE2,
1130                        .tv   = 1,
1131                }},
1132                .radio = {
1133                        .name = name_radio,
1134                        .amux = LINE2,
1135                },
1136        },
1137        [SAA7134_BOARD_MANLI_MTV001] = {
1138                /* Ognjen Nastic <ognjen@logosoft.ba> UNTESTED */
1139                .name           = "Manli MuchTV M-TV001",
1140                .audio_clock    = 0x00200000,
1141                .tuner_type     = TUNER_PHILIPS_PAL,
1142                .radio_type     = UNSET,
1143                .tuner_addr     = ADDR_UNSET,
1144                .radio_addr     = ADDR_UNSET,
1145                .inputs         = {{
1146                        .name = name_svideo,
1147                        .vmux = 8,
1148                        .amux = LINE1,
1149                },{
1150                        .name = name_comp1,
1151                        .vmux = 1,
1152                        .amux = LINE1,
1153                },{
1154                        .name = name_tv,
1155                        .vmux = 3,
1156                        .amux = LINE2,
1157                        .tv   = 1,
1158                }},
1159                .mute = {
1160                        .name = name_mute,
1161                        .amux = LINE1,
1162                },
1163        },
1164        [SAA7134_BOARD_TG3000TV] = {
1165                /* TransGear 3000TV */
1166                .name           = "Nagase Sangyo TransGear 3000TV",
1167                .audio_clock    = 0x00187de7,
1168                .tuner_type     = TUNER_PHILIPS_NTSC_M,
1169                .radio_type     = UNSET,
1170                .tuner_addr     = ADDR_UNSET,
1171                .radio_addr     = ADDR_UNSET,
1172                .inputs         = {{
1173                        .name = name_tv,
1174                        .vmux = 1,
1175                        .amux = LINE2,
1176                        .tv   = 1,
1177                },{
1178                        .name = name_comp1,
1179                        .vmux = 3,
1180                        .amux = LINE2,
1181                },{
1182                        .name = name_svideo,
1183                        .vmux = 8,
1184                        .amux = LINE2,
1185                }},
1186        },
1187        [SAA7134_BOARD_ECS_TVP3XP] = {
1188                .name           = "Elitegroup ECS TVP3XP FM1216 Tuner Card(PAL-BG,FM) ",
1189                .audio_clock    = 0x187de7,  /* xtal 32.1 MHz */
1190                .tuner_type     = TUNER_PHILIPS_PAL,
1191                .radio_type     = UNSET,
1192                .tuner_addr     = ADDR_UNSET,
1193                .radio_addr     = ADDR_UNSET,
1194                .inputs         = {{
1195                        .name   = name_tv,
1196                        .vmux   = 1,
1197                        .amux   = TV,
1198                        .tv     = 1,
1199                },{
1200                        .name   = name_tv_mono,
1201                        .vmux   = 1,
1202                        .amux   = LINE2,
1203                        .tv     = 1,
1204                },{
1205                        .name   = name_comp1,
1206                        .vmux   = 3,
1207                        .amux   = LINE1,
1208                },{
1209                        .name   = name_svideo,
1210                        .vmux   = 8,
1211                        .amux   = LINE1,
1212                },{
1213                        .name   = "CVid over SVid",
1214                        .vmux   = 0,
1215                        .amux   = LINE1,
1216                }},
1217                .radio = {
1218                        .name   = name_radio,
1219                        .amux   = LINE2,
1220                },
1221        },
1222        [SAA7134_BOARD_ECS_TVP3XP_4CB5] = {
1223                .name           = "Elitegroup ECS TVP3XP FM1236 Tuner Card (NTSC,FM)",
1224                .audio_clock    = 0x187de7,
1225                .tuner_type     = TUNER_PHILIPS_NTSC,
1226                .radio_type     = UNSET,
1227                .tuner_addr     = ADDR_UNSET,
1228                .radio_addr     = ADDR_UNSET,
1229                .inputs         = {{
1230                        .name   = name_tv,
1231                        .vmux   = 1,
1232                        .amux   = TV,
1233                        .tv     = 1,
1234                },{
1235                        .name   = name_tv_mono,
1236                        .vmux   = 1,
1237                        .amux   = LINE2,
1238                        .tv     = 1,
1239                },{
1240                        .name   = name_comp1,
1241                        .vmux   = 3,
1242                        .amux   = LINE1,
1243                },{
1244                        .name   = name_svideo,
1245                        .vmux   = 8,
1246                        .amux   = LINE1,
1247                },{
1248                        .name   = "CVid over SVid",
1249                        .vmux   = 0,
1250                        .amux   = LINE1,
1251                }},
1252                .radio = {
1253                        .name   = name_radio,
1254                        .amux   = LINE2,
1255                },
1256        },
1257    [SAA7134_BOARD_ECS_TVP3XP_4CB6] = {
1258                /* Barry Scott <barry.scott@onelan.co.uk> */
1259                .name           = "Elitegroup ECS TVP3XP FM1246 Tuner Card (PAL,FM)",
1260                .audio_clock    = 0x187de7,
1261                .tuner_type     = TUNER_PHILIPS_PAL_I,
1262                .radio_type     = UNSET,
1263                .tuner_addr     = ADDR_UNSET,
1264                .radio_addr     = ADDR_UNSET,
1265                .inputs         = {{
1266                        .name   = name_tv,
1267                        .vmux   = 1,
1268                        .amux   = TV,
1269                        .tv     = 1,
1270                },{
1271                        .name   = name_tv_mono,
1272                        .vmux   = 1,
1273                        .amux   = LINE2,
1274                        .tv     = 1,
1275                },{
1276                        .name   = name_comp1,
1277                        .vmux   = 3,
1278                        .amux   = LINE1,
1279                },{
1280                        .name   = name_svideo,
1281                        .vmux   = 8,
1282                        .amux   = LINE1,
1283                },{
1284                        .name   = "CVid over SVid",
1285                        .vmux   = 0,
1286                        .amux   = LINE1,
1287                }},
1288                .radio = {
1289                        .name   = name_radio,
1290                        .amux   = LINE2,
1291                },
1292        },
1293        [SAA7134_BOARD_AVACSSMARTTV] = {
1294                /* Roman Pszonczenko <romka@kolos.math.uni.lodz.pl> */
1295                .name           = "AVACS SmartTV",
1296                .audio_clock    = 0x00187de7,
1297                .tuner_type     = TUNER_PHILIPS_PAL,
1298                .radio_type     = UNSET,
1299                .tuner_addr     = ADDR_UNSET,
1300                .radio_addr     = ADDR_UNSET,
1301                .inputs         = {{
1302                        .name = name_tv,
1303                        .vmux = 1,
1304                        .amux = TV,
1305                        .tv   = 1,
1306                },{
1307                        .name = name_tv_mono,
1308                        .vmux = 1,
1309                        .amux = LINE2,
1310                        .tv   = 1,
1311                },{
1312                        .name = name_comp1,
1313                        .vmux = 0,
1314                        .amux = LINE2,
1315                },{
1316                        .name = name_comp2,
1317                        .vmux = 3,
1318                        .amux = LINE2,
1319                },{
1320                        .name = name_svideo,
1321                        .vmux = 8,
1322                        .amux = LINE2,
1323                }},
1324                .radio = {
1325                        .name = name_radio,
1326                        .amux = LINE2,
1327                        .gpio = 0x200000,
1328                },
1329        },
1330        [SAA7134_BOARD_AVERMEDIA_DVD_EZMAKER] = {
1331                /* Michael Smith <msmith@cbnco.com> */
1332                .name           = "AVerMedia DVD EZMaker",
1333                .audio_clock    = 0x00187de7,
1334                .tuner_type     = TUNER_ABSENT,
1335                .radio_type     = UNSET,
1336                .tuner_addr     = ADDR_UNSET,
1337                .radio_addr     = ADDR_UNSET,
1338                .inputs         = {{
1339                        .name = name_comp1,
1340                        .vmux = 3,
1341                },{
1342                        .name = name_svideo,
1343                        .vmux = 8,
1344                }},
1345        },
1346        [SAA7134_BOARD_AVERMEDIA_M103] = {
1347                /* Massimo Piccioni <dafastidio@libero.it> */
1348                .name           = "AVerMedia MiniPCI DVB-T Hybrid M103",
1349                .audio_clock    = 0x187de7,
1350                .tuner_type     = TUNER_XC2028,
1351                .radio_type     = UNSET,
1352                .tuner_addr     = ADDR_UNSET,
1353                .radio_addr     = ADDR_UNSET,
1354                 .mpeg           = SAA7134_MPEG_DVB,
1355                 .inputs         = {{
1356                         .name = name_tv,
1357                         .vmux = 1,
1358                         .amux = TV,
1359                         .tv   = 1,
1360                 } },
1361        },
1362        [SAA7134_BOARD_NOVAC_PRIMETV7133] = {
1363                /* toshii@netbsd.org */
1364                .name           = "Noval Prime TV 7133",
1365                .audio_clock    = 0x00200000,
1366                .tuner_type     = TUNER_ALPS_TSBH1_NTSC,
1367                .radio_type     = UNSET,
1368                .tuner_addr     = ADDR_UNSET,
1369                .radio_addr     = ADDR_UNSET,
1370                .inputs         = {{
1371                        .name = name_comp1,
1372                        .vmux = 3,
1373                },{
1374                        .name = name_tv,
1375                        .vmux = 1,
1376                        .amux = TV,
1377                        .tv   = 1,
1378                },{
1379                        .name = name_svideo,
1380                        .vmux = 8,
1381                }},
1382        },
1383        [SAA7134_BOARD_AVERMEDIA_STUDIO_305] = {
1384                .name           = "AverMedia AverTV Studio 305",
1385                .audio_clock    = 0x00187de7,
1386                .tuner_type     = TUNER_PHILIPS_FM1256_IH3,
1387                .radio_type     = UNSET,
1388                .tuner_addr     = ADDR_UNSET,
1389                .radio_addr     = ADDR_UNSET,
1390                .tda9887_conf   = TDA9887_PRESENT,
1391                .inputs         = {{
1392                        .name = name_tv,
1393                        .vmux = 1,
1394                        .amux = LINE2,
1395                        .tv   = 1,
1396                },{
1397                        .name = name_comp1,
1398                        .vmux = 0,
1399                        .amux = LINE2,
1400                },{
1401                        .name = name_comp2,
1402                        .vmux = 3,
1403                        .amux = LINE2,
1404                },{
1405                        .name = name_svideo,
1406                        .vmux = 8,
1407                        .amux = LINE2,
1408                }},
1409                .radio = {
1410                        .name = name_radio,
1411                        .amux = LINE2,
1412                },
1413                .mute = {
1414                        .name = name_mute,
1415                        .amux = LINE1,
1416                },
1417        },
1418        [SAA7134_BOARD_AVERMEDIA_STUDIO_505] = {
1419                /* Vasiliy Temnikov <vaka@newmail.ru> */
1420                .name           = "AverMedia AverTV Studio 505",
1421                .audio_clock    = 0x00187de7,
1422                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
1423                .radio_type     = UNSET,
1424                .tuner_addr     = ADDR_UNSET,
1425                .radio_addr     = ADDR_UNSET,
1426                .tda9887_conf   = TDA9887_PRESENT,
1427                .inputs         = { {
1428                        .name = name_tv,
1429                        .vmux = 1,
1430                        .amux = LINE2,
1431                        .tv   = 1,
1432                }, {
1433                        .name = name_comp1,
1434                        .vmux = 0,
1435                        .amux = LINE2,
1436                }, {
1437                        .name = name_comp2,
1438                        .vmux = 3,
1439                        .amux = LINE2,
1440                },{
1441                        .name = name_svideo,
1442                        .vmux = 8,
1443                        .amux = LINE2,
1444                } },
1445                .radio = {
1446                        .name = name_radio,
1447                        .amux = LINE2,
1448                },
1449                .mute = {
1450                        .name = name_mute,
1451                        .amux = LINE1,
1452                },
1453        },
1454        [SAA7134_BOARD_UPMOST_PURPLE_TV] = {
1455                .name           = "UPMOST PURPLE TV",
1456                .audio_clock    = 0x00187de7,
1457                .tuner_type     = TUNER_PHILIPS_FM1236_MK3,
1458                .radio_type     = UNSET,
1459                .tuner_addr     = ADDR_UNSET,
1460                .radio_addr     = ADDR_UNSET,
1461                .tda9887_conf   = TDA9887_PRESENT,
1462                .inputs         = {{
1463                        .name = name_tv,
1464                        .vmux = 7,
1465                        .amux = TV,
1466                        .tv   = 1,
1467                },{
1468                        .name = name_svideo,
1469                        .vmux = 7,
1470                        .amux = LINE1,
1471                }},
1472        },
1473        [SAA7134_BOARD_ITEMS_MTV005] = {
1474                /* Norman Jonas <normanjonas@arcor.de> */
1475                .name           = "Items MuchTV Plus / IT-005",
1476                .audio_clock    = 0x00187de7,
1477                .tuner_type     = TUNER_PHILIPS_PAL,
1478                .radio_type     = UNSET,
1479                .tuner_addr     = ADDR_UNSET,
1480                .radio_addr     = ADDR_UNSET,
1481                .inputs         = {{
1482                        .name = name_tv,
1483                        .vmux = 3,
1484                        .amux = TV,
1485                        .tv   = 1,
1486                },{
1487                        .name   = name_comp1,
1488                        .vmux   = 1,
1489                        .amux   = LINE1,
1490                },{
1491                        .name = name_svideo,
1492                        .vmux = 8,
1493                        .amux = LINE1,
1494                }},
1495                .radio = {
1496                        .name = name_radio,
1497                        .amux = LINE2,
1498                },
1499        },
1500        [SAA7134_BOARD_CINERGY200] = {
1501                .name           = "Terratec Cinergy 200 TV",
1502                .audio_clock    = 0x00200000,
1503                .tuner_type     = TUNER_PHILIPS_PAL,
1504                .radio_type     = UNSET,
1505                .tuner_addr     = ADDR_UNSET,
1506                .radio_addr     = ADDR_UNSET,
1507                .inputs         = {{
1508                        .name = name_tv,
1509                        .vmux = 1,
1510                        .amux = LINE2,
1511                        .tv   = 1,
1512                },{
1513                        .name = name_comp1,
1514                        .vmux = 4,
1515                        .amux = LINE1,
1516                },{
1517                        .name = name_svideo,
1518                        .vmux = 8,
1519                        .amux = LINE1,
1520                },{
1521                        .name = name_comp2, /* CVideo over SVideo Connector */
1522                        .vmux = 0,
1523                        .amux = LINE1,
1524                }},
1525                .mute = {
1526                        .name = name_mute,
1527                        .amux = LINE2,
1528                },
1529        },
1530        [SAA7134_BOARD_VIDEOMATE_TV_PVR] = {
1531                /* Alain St-Denis <alain@topaze.homeip.net> */
1532                .name           = "Compro VideoMate TV PVR/FM",
1533                .audio_clock    = 0x00187de7,
1534                .tuner_type     = TUNER_PHILIPS_NTSC_M,
1535                .radio_type     = UNSET,
1536                .tuner_addr     = ADDR_UNSET,
1537                .radio_addr     = ADDR_UNSET,
1538                .gpiomask       = 0x808c0080,
1539                .inputs         = {{
1540                        .name = name_svideo,
1541                        .vmux = 8,
1542                        .amux = LINE1,
1543                        .gpio = 0x00080,
1544                },{
1545                        .name = name_comp1,
1546                        .vmux = 3,
1547                        .amux = LINE1,
1548                        .gpio = 0x00080,
1549                },{
1550                        .name = name_tv,
1551                        .vmux = 1,
1552                        .amux = LINE2_LEFT,
1553                        .tv   = 1,
1554                        .gpio = 0x00080,
1555                }},
1556                .radio = {
1557                        .name = name_radio,
1558                        .amux = LINE2,
1559                        .gpio = 0x80000,
1560                },
1561                .mute = {
1562                        .name = name_mute,
1563                        .amux = LINE2,
1564                        .gpio = 0x40000,
1565                },
1566        },
1567        [SAA7134_BOARD_SABRENT_SBTTVFM] = {
1568                /* Michael Rodriguez-Torrent <mrtorrent@asu.edu> */
1569                .name           = "Sabrent SBT-TVFM (saa7130)",
1570                .audio_clock    = 0x00187de7,
1571                .tuner_type     = TUNER_PHILIPS_NTSC_M,
1572                .radio_type     = UNSET,
1573                .tuner_addr     = ADDR_UNSET,
1574                .radio_addr     = ADDR_UNSET,
1575                .inputs         = {{
1576                        .name = name_comp1,
1577                        .vmux = 1,
1578                        .amux = LINE1,
1579                },{
1580                        .name = name_tv,
1581                        .vmux = 3,
1582                        .amux = LINE2,
1583                        .tv   = 1,
1584                },{
1585                        .name = name_svideo,
1586                        .vmux = 8,
1587                        .amux = LINE1,
1588                }},
1589                .radio = {
1590                        .name   = name_radio,
1591                        .amux   = LINE2,
1592                },
1593        },
1594        [SAA7134_BOARD_ZOLID_XPERT_TV7134] = {
1595                /* Helge Jensen <helge.jensen@slog.dk> */
1596                .name           = ":Zolid Xpert TV7134",
1597                .audio_clock    = 0x00187de7,
1598                .tuner_type     = TUNER_PHILIPS_NTSC,
1599                .radio_type     = UNSET,
1600                .tuner_addr     = ADDR_UNSET,
1601                .radio_addr     = ADDR_UNSET,
1602                .inputs         = {{
1603                        .name = name_svideo,
1604                        .vmux = 8,
1605                        .amux = LINE1,
1606                },{
1607                        .name = name_comp1,
1608                        .vmux = 3,
1609                        .amux = LINE1,
1610                },{
1611                        .name = name_tv,
1612                        .vmux = 1,
1613                        .amux = LINE2,
1614                        .tv   = 1,
1615                }},
1616        },
1617        [SAA7134_BOARD_EMPIRE_PCI_TV_RADIO_LE] = {
1618                /* "Matteo Az" <matte.az@nospam.libero.it> ;-) */
1619                .name           = "Empire PCI TV-Radio LE",
1620                .audio_clock    = 0x00187de7,
1621                .tuner_type     = TUNER_PHILIPS_PAL,
1622                .radio_type     = UNSET,
1623                .tuner_addr     = ADDR_UNSET,
1624                .radio_addr     = ADDR_UNSET,
1625                .gpiomask       = 0x4000,
1626                .inputs         = {{
1627                        .name = name_tv_mono,
1628                        .vmux = 1,
1629                        .amux = LINE2,
1630                        .gpio = 0x8000,
1631                        .tv   = 1,
1632                },{
1633                        .name = name_comp1,
1634                        .vmux = 3,
1635                        .amux = LINE1,
1636                        .gpio = 0x8000,
1637                },{
1638                        .name = name_svideo,
1639                        .vmux = 6,
1640                        .amux = LINE1,
1641                        .gpio = 0x8000,
1642                }},
1643                .radio = {
1644                        .name = name_radio,
1645                        .amux = LINE1,
1646                        .gpio = 0x8000,
1647                },
1648                .mute = {
1649                        .name = name_mute,
1650                        .amux = TV,
1651                        .gpio =0x8000,
1652                }
1653        },
1654        [SAA7134_BOARD_AVERMEDIA_STUDIO_307] = {
1655                /*
1656                Nickolay V. Shmyrev <nshmyrev@yandex.ru>
1657                Lots of thanks to Andrey Zolotarev <zolotarev_andrey@mail.ru>
1658                */
1659                .name           = "Avermedia AVerTV Studio 307",
1660                .audio_clock    = 0x00187de7,
1661                .tuner_type     = TUNER_PHILIPS_FM1256_IH3,
1662                .radio_type     = UNSET,
1663                .tuner_addr     = ADDR_UNSET,
1664                .radio_addr     = ADDR_UNSET,
1665                .tda9887_conf   = TDA9887_PRESENT,
1666                .gpiomask       = 0x03,
1667                .inputs         = {{
1668                        .name = name_tv,
1669                        .vmux = 1,
1670                        .amux = TV,
1671                        .tv   = 1,
1672                        .gpio = 0x00,
1673                },{
1674                        .name = name_comp,
1675                        .vmux = 3,
1676                        .amux = LINE1,
1677                        .gpio = 0x02,
1678                },{
1679                        .name = name_svideo,
1680                        .vmux = 8,
1681                        .amux = LINE1,
1682                        .gpio = 0x02,
1683                }},
1684                .radio = {
1685                        .name = name_radio,
1686                        .amux = LINE1,
1687                        .gpio = 0x01,
1688                },
1689                .mute  = {
1690                        .name = name_mute,
1691                        .amux = LINE1,
1692                        .gpio = 0x00,
1693                },
1694        },
1695        [SAA7134_BOARD_AVERMEDIA_GO_007_FM] = {
1696                .name           = "Avermedia AVerTV GO 007 FM",
1697                .audio_clock    = 0x00187de7,
1698                .tuner_type     = TUNER_PHILIPS_TDA8290,
1699                .radio_type     = UNSET,
1700                .tuner_addr     = ADDR_UNSET,
1701                .radio_addr     = ADDR_UNSET,
1702                .gpiomask       = 0x00300003,
1703                /* .gpiomask       = 0x8c240003, */
1704                .inputs         = {{
1705                        .name = name_tv,
1706                        .vmux = 1,
1707                        .amux = TV,
1708                        .tv   = 1,
1709                        .gpio = 0x01,
1710                },{
1711                        .name = name_comp1,
1712                        .vmux = 0,
1713                        .amux = LINE1,
1714                        .gpio = 0x02,
1715                },{
1716                        .name = name_svideo,
1717                        .vmux = 6,
1718                        .amux = LINE1,
1719                        .gpio = 0x02,
1720                }},
1721                .radio = {
1722                        .name = name_radio,
1723                        .amux = TV,
1724                        .gpio = 0x00300001,
1725                },
1726                .mute = {
1727                        .name = name_mute,
1728                        .amux = TV,
1729                        .gpio = 0x01,
1730                },
1731        },
1732        [SAA7134_BOARD_AVERMEDIA_CARDBUS] = {
1733                /* Kees.Blom@cwi.nl */
1734                .name           = "AVerMedia Cardbus TV/Radio (E500)",
1735                .audio_clock    = 0x187de7,
1736                .tuner_type     = TUNER_PHILIPS_TDA8290,
1737                .radio_type     = UNSET,
1738                .tuner_addr     = ADDR_UNSET,
1739                .radio_addr     = ADDR_UNSET,
1740                .inputs         = {{
1741                        .name = name_tv,
1742                        .vmux = 1,
1743                        .amux = TV,
1744                        .tv   = 1,
1745                },{
1746                        .name = name_comp1,
1747                        .vmux = 3,
1748                        .amux = LINE2,
1749                },{
1750                        .name = name_svideo,
1751                        .vmux = 8,
1752                        .amux = LINE1,
1753                }},
1754                .radio = {
1755                        .name = name_radio,
1756                        .amux = LINE1,
1757                },
1758        },
1759        [SAA7134_BOARD_AVERMEDIA_CARDBUS_501] = {
1760                /* Oldrich Jedlicka <oldium.pro@seznam.cz> */
1761                .name           = "AVerMedia Cardbus TV/Radio (E501R)",
1762                .audio_clock    = 0x187de7,
1763                .tuner_type     = TUNER_ALPS_TSBE5_PAL,
1764                .radio_type     = TUNER_TEA5767,
1765                .tuner_addr     = 0x61,
1766                .radio_addr     = 0x60,
1767                .tda9887_conf   = TDA9887_PRESENT,
1768                .gpiomask       = 0x08000000,
1769                .inputs         = { {
1770                        .name = name_tv,
1771                        .vmux = 1,
1772                        .amux = TV,
1773                        .tv   = 1,
1774                        .gpio = 0x08000000,
1775                }, {
1776                        .name = name_comp1,
1777                        .vmux = 3,
1778                        .amux = LINE1,
1779                        .gpio = 0x08000000,
1780                }, {
1781                        .name = name_svideo,
1782                        .vmux = 8,
1783                        .amux = LINE1,
1784                        .gpio = 0x08000000,
1785                } },
1786                .radio = {
1787                        .name = name_radio,
1788                        .amux = LINE2,
1789                        .gpio = 0x00000000,
1790                },
1791        },
1792        [SAA7134_BOARD_CINERGY400_CARDBUS] = {
1793                .name           = "Terratec Cinergy 400 mobile",
1794                .audio_clock    = 0x187de7,
1795                .tuner_type     = TUNER_ALPS_TSBE5_PAL,
1796                .radio_type     = UNSET,
1797                .tuner_addr     = ADDR_UNSET,
1798                .radio_addr     = ADDR_UNSET,
1799                .tda9887_conf   = TDA9887_PRESENT,
1800                .inputs         = {{
1801                        .name = name_tv,
1802                        .vmux = 1,
1803                        .amux = TV,
1804                        .tv   = 1,
1805                },{
1806                        .name = name_tv_mono,
1807                        .vmux = 1,
1808                        .amux = LINE2,
1809                        .tv   = 1,
1810                },{
1811                        .name = name_comp1,
1812                        .vmux = 3,
1813                        .amux = LINE1,
1814                },{
1815                        .name = name_svideo,
1816                        .vmux = 8,
1817                        .amux = LINE1,
1818                }},
1819        },
1820        [SAA7134_BOARD_CINERGY600_MK3] = {
1821                .name           = "Terratec Cinergy 600 TV MK3",
1822                .audio_clock    = 0x00200000,
1823                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
1824                .radio_type     = UNSET,
1825                .tuner_addr     = ADDR_UNSET,
1826                .radio_addr     = ADDR_UNSET,
1827                .rds_addr       = 0x10,
1828                .tda9887_conf   = TDA9887_PRESENT,
1829                .inputs         = {{
1830                        .name = name_tv,
1831                        .vmux = 1,
1832                        .amux = TV,
1833                        .tv   = 1,
1834                },{
1835                        .name = name_comp1,
1836                        .vmux = 4,
1837                        .amux = LINE1,
1838                },{
1839                        .name = name_svideo,
1840                        .vmux = 8,
1841                        .amux = LINE1,
1842                },{
1843                        .name = name_comp2, /* CVideo over SVideo Connector */
1844                        .vmux = 0,
1845                        .amux = LINE1,
1846                }},
1847                .radio = {
1848                        .name = name_radio,
1849                        .amux = LINE2,
1850                },
1851        },
1852        [SAA7134_BOARD_VIDEOMATE_GOLD_PLUS] = {
1853                /* Dylan Walkden <dylan_walkden@hotmail.com> */
1854                .name           = "Compro VideoMate Gold+ Pal",
1855                .audio_clock    = 0x00187de7,
1856                .tuner_type     = TUNER_PHILIPS_PAL,
1857                .radio_type     = UNSET,
1858                .tuner_addr     = ADDR_UNSET,
1859                .radio_addr     = ADDR_UNSET,
1860                .gpiomask       = 0x1ce780,
1861                .inputs         = {{
1862                        .name = name_svideo,
1863                        .vmux = 0,              /* CVideo over SVideo Connector - ok? */
1864                        .amux = LINE1,
1865                        .gpio = 0x008080,
1866                },{
1867                        .name = name_comp1,
1868                        .vmux = 3,
1869                        .amux = LINE1,
1870                        .gpio = 0x008080,
1871                },{
1872                        .name = name_tv,
1873                        .vmux = 1,
1874                        .amux = TV,
1875                        .tv   = 1,
1876                        .gpio = 0x008080,
1877                }},
1878                .radio = {
1879                        .name = name_radio,
1880                        .amux = LINE2,
1881                        .gpio = 0x80000,
1882                },
1883                .mute = {
1884                        .name = name_mute,
1885                        .amux = LINE2,
1886                        .gpio = 0x0c8000,
1887                },
1888        },
1889        [SAA7134_BOARD_PINNACLE_300I_DVBT_PAL] = {
1890                .name           = "Pinnacle PCTV 300i DVB-T + PAL",
1891                .audio_clock    = 0x00187de7,
1892                .tuner_type     = TUNER_MT2032,
1893                .radio_type     = UNSET,
1894                .tuner_addr     = ADDR_UNSET,
1895                .radio_addr     = ADDR_UNSET,
1896                .tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE,
1897                .mpeg           = SAA7134_MPEG_DVB,
1898                .inputs         = {{
1899                        .name = name_tv,
1900                        .vmux = 3,
1901                        .amux = TV,
1902                        .tv   = 1,
1903                },{
1904                        .name = name_comp1,
1905                        .vmux = 0,
1906                        .amux = LINE2,
1907                },{
1908                        .name = name_comp2,
1909                        .vmux = 1,
1910                        .amux = LINE2,
1911                },{
1912                        .name = name_svideo,
1913                        .vmux = 8,
1914                        .amux = LINE2,
1915                }},
1916        },
1917        [SAA7134_BOARD_PROVIDEO_PV952] = {
1918                /* andreas.kretschmer@web.de */
1919                .name           = "ProVideo PV952",
1920                .audio_clock    = 0x00187de7,
1921                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
1922                .radio_type     = UNSET,
1923                .tuner_addr     = ADDR_UNSET,
1924                .radio_addr     = ADDR_UNSET,
1925                .tda9887_conf   = TDA9887_PRESENT,
1926                .inputs         = {{
1927                        .name = name_comp1,
1928                        .vmux = 0,
1929                        .amux = LINE1,
1930                },{
1931                        .name = name_tv,
1932                        .vmux = 1,
1933                        .amux = TV,
1934                        .tv   = 1,
1935                },{
1936                        .name = name_tv_mono,
1937                        .vmux = 1,
1938                        .amux = LINE2,
1939                        .tv   = 1,
1940                }},
1941                .radio = {
1942                        .name = name_radio,
1943                        .amux = LINE2,
1944                },
1945        },
1946        [SAA7134_BOARD_AVERMEDIA_305] = {
1947                /* much like the "studio" version but without radio
1948                * and another tuner (sirspiritus@yandex.ru) */
1949                .name           = "AverMedia AverTV/305",
1950                .audio_clock    = 0x00187de7,
1951                .tuner_type     = TUNER_PHILIPS_FQ1216ME,
1952                .radio_type     = UNSET,
1953                .tuner_addr     = ADDR_UNSET,
1954                .radio_addr     = ADDR_UNSET,
1955                .tda9887_conf   = TDA9887_PRESENT,
1956                .inputs         = {{
1957                        .name = name_tv,
1958                        .vmux = 1,
1959                        .amux = LINE2,
1960                        .tv   = 1,
1961                },{
1962                        .name = name_comp1,
1963                        .vmux = 0,
1964                        .amux = LINE2,
1965                },{
1966                        .name = name_comp2,
1967                        .vmux = 3,
1968                        .amux = LINE2,
1969                },{
1970                        .name = name_svideo,
1971                        .vmux = 8,
1972                        .amux = LINE2,
1973                }},
1974                .mute = {
1975                        .name = name_mute,
1976                        .amux = LINE1,
1977                },
1978        },
1979        [SAA7134_BOARD_FLYDVBTDUO] = {
1980                /* LifeView FlyDVB-T DUO */
1981                /* "Nico Sabbi <nsabbi@tiscali.it>  Hartmut Hackmann hartmut.hackmann@t-online.de*/
1982                .name           = "LifeView FlyDVB-T DUO / MSI TV@nywhere Duo",
1983                .audio_clock    = 0x00200000,
1984                .tuner_type     = TUNER_PHILIPS_TDA8290,
1985                .radio_type     = UNSET,
1986                .tuner_addr     = ADDR_UNSET,
1987                .radio_addr     = ADDR_UNSET,
1988                .gpiomask       = 0x00200000,
1989                .mpeg           = SAA7134_MPEG_DVB,
1990                .inputs         = {{
1991                        .name = name_tv,
1992                        .vmux = 1,
1993                        .amux = TV,
1994                        .gpio = 0x200000,       /* GPIO21=High for TV input */
1995                        .tv   = 1,
1996                },{
1997                        .name = name_comp1,     /* Composite signal on S-Video input */
1998                        .vmux = 0,
1999                        .amux = LINE2,
2000                },{
2001                        .name = name_comp2,     /* Composite input */
2002                        .vmux = 3,
2003                        .amux = LINE2,
2004                },{
2005                        .name = name_svideo,    /* S-Video signal on S-Video input */
2006                        .vmux = 8,
2007                        .amux = LINE2,
2008                }},
2009                .radio = {
2010                        .name = name_radio,
2011                        .amux = TV,
2012                        .gpio = 0x000000,       /* GPIO21=Low for FM radio antenna */
2013                },
2014        },
2015        [SAA7134_BOARD_PHILIPS_TOUGH] = {
2016                .name           = "Philips TOUGH DVB-T reference design",
2017                .tuner_type     = TUNER_ABSENT,
2018                .audio_clock    = 0x00187de7,
2019                .radio_type     = UNSET,
2020                .tuner_addr     = ADDR_UNSET,
2021                .radio_addr     = ADDR_UNSET,
2022                .mpeg           = SAA7134_MPEG_DVB,
2023                .inputs = {{
2024                        .name   = name_comp1,
2025                        .vmux   = 0,
2026                        .amux   = LINE1,
2027                },{
2028                        .name   = name_svideo,
2029                        .vmux   = 8,
2030                        .amux   = LINE1,
2031                }},
2032        },
2033        [SAA7134_BOARD_AVERMEDIA_307] = {
2034                /*
2035                Davydov Vladimir <vladimir@iqmedia.com>
2036                */
2037                .name           = "Avermedia AVerTV 307",
2038                .audio_clock    = 0x00187de7,
2039                .tuner_type     = TUNER_PHILIPS_FQ1216ME,
2040                .radio_type     = UNSET,
2041                .tuner_addr     = ADDR_UNSET,
2042                .radio_addr     = ADDR_UNSET,
2043                .tda9887_conf   = TDA9887_PRESENT,
2044                .inputs         = {{
2045                        .name = name_tv,
2046                        .vmux = 1,
2047                        .amux = TV,
2048                        .tv   = 1,
2049                },{
2050                        .name = name_comp1,
2051                        .vmux = 0,
2052                        .amux = LINE1,
2053                },{
2054                        .name = name_comp2,
2055                        .vmux = 3,
2056                        .amux = LINE1,
2057                },{
2058                        .name = name_svideo,
2059                        .vmux = 8,
2060                        .amux = LINE1,
2061                }},
2062        },
2063        [SAA7134_BOARD_ADS_INSTANT_TV] = {
2064                .name           = "ADS Tech Instant TV (saa7135)",
2065                .audio_clock    = 0x00187de7,
2066                .tuner_type     = TUNER_PHILIPS_TDA8290,
2067                .radio_type     = UNSET,
2068                .tuner_addr     = ADDR_UNSET,
2069                .radio_addr     = ADDR_UNSET,
2070                .inputs         = {{
2071                        .name = name_tv,
2072                        .vmux = 1,
2073                        .amux = TV,
2074                        .tv   = 1,
2075                },{
2076                        .name = name_comp1,
2077                        .vmux = 3,
2078                        .amux = LINE2,
2079                },{
2080                        .name = name_svideo,
2081                        .vmux = 8,
2082                        .amux = LINE2,
2083                }},
2084        },
2085        [SAA7134_BOARD_KWORLD_VSTREAM_XPERT] = {
2086                .name           = "Kworld/Tevion V-Stream Xpert TV PVR7134",
2087                .audio_clock    = 0x00187de7,
2088                .tuner_type     = TUNER_PHILIPS_PAL_I,
2089                .radio_type     = UNSET,
2090                .tuner_addr     = ADDR_UNSET,
2091                .radio_addr     = ADDR_UNSET,
2092                .gpiomask       = 0x0700,
2093                .inputs = {{
2094                        .name   = name_tv,
2095                        .vmux   = 1,
2096                        .amux   = TV,
2097                        .tv     = 1,
2098                        .gpio   = 0x000,
2099                },{
2100                        .name   = name_comp1,
2101                        .vmux   = 3,
2102                        .amux   = LINE1,
2103                        .gpio   = 0x200,                /* gpio by DScaler */
2104                },{
2105                        .name   = name_svideo,
2106                        .vmux   = 0,
2107                        .amux   = LINE1,
2108                        .gpio   = 0x200,
2109                }},
2110                .radio = {
2111                        .name   = name_radio,
2112                        .amux   = LINE1,
2113                        .gpio   = 0x100,
2114                },
2115                .mute  = {
2116                        .name = name_mute,
2117                        .amux = TV,
2118                        .gpio = 0x000,
2119                },
2120        },
2121        [SAA7134_BOARD_FLYDVBT_DUO_CARDBUS] = {
2122                .name           = "LifeView/Typhoon/Genius FlyDVB-T Duo Cardbus",
2123                .audio_clock    = 0x00200000,
2124                .tuner_type     = TUNER_PHILIPS_TDA8290,
2125                .radio_type     = UNSET,
2126                .tuner_addr     = ADDR_UNSET,
2127                .radio_addr     = ADDR_UNSET,
2128                .mpeg           = SAA7134_MPEG_DVB,
2129                .gpiomask       = 0x00200000,
2130                .inputs         = {{
2131                        .name = name_tv,
2132                        .vmux = 1,
2133                        .amux = TV,
2134                        .gpio = 0x200000,       /* GPIO21=High for TV input */
2135                        .tv   = 1,
2136                },{
2137                        .name = name_svideo,    /* S-Video signal on S-Video input */
2138                        .vmux = 8,
2139                        .amux = LINE2,
2140                },{
2141                        .name = name_comp1,     /* Composite signal on S-Video input */
2142                        .vmux = 0,
2143                        .amux = LINE2,
2144                },{
2145                        .name = name_comp2,     /* Composite input */
2146                        .vmux = 3,
2147                        .amux = LINE2,
2148                }},
2149                .radio = {
2150                        .name = name_radio,
2151                        .amux = TV,
2152                        .gpio = 0x000000,       /* GPIO21=Low for FM radio antenna */
2153                },
2154        },
2155        [SAA7134_BOARD_VIDEOMATE_TV_GOLD_PLUSII] = {
2156                .name           = "Compro VideoMate TV Gold+II",
2157                .audio_clock    = 0x002187de7,
2158                .tuner_type     = TUNER_LG_PAL_NEW_TAPC,
2159                .radio_type     = TUNER_TEA5767,
2160                .tuner_addr     = 0x63,
2161                .radio_addr     = 0x60,
2162                .gpiomask       = 0x8c1880,
2163                .inputs         = {{
2164                        .name = name_svideo,
2165                        .vmux = 0,
2166                        .amux = LINE1,
2167                        .gpio = 0x800800,
2168                },{
2169                        .name = name_comp1,
2170                        .vmux = 3,
2171                        .amux = LINE1,
2172                        .gpio = 0x801000,
2173                },{
2174                        .name = name_tv,
2175                        .vmux = 1,
2176                        .amux = TV,
2177                        .tv   = 1,
2178                        .gpio = 0x800000,
2179                }},
2180                .radio = {
2181                        .name = name_radio,
2182                        .amux = TV,
2183                        .gpio = 0x880000,
2184                },
2185                .mute = {
2186                        .name = name_mute,
2187                        .amux = LINE2,
2188                        .gpio = 0x840000,
2189                },
2190        },
2191        [SAA7134_BOARD_KWORLD_XPERT] = {
2192                /*
2193                FIXME:
2194                - Remote control doesn't initialize properly.
2195                - Audio volume starts muted,
2196                then gradually increases after channel change.
2197                - Overlay scaling problems (application error?)
2198                - Composite S-Video untested.
2199                From: Konrad Rzepecki <hannibal@megapolis.pl>
2200                */
2201                .name           = "Kworld Xpert TV PVR7134",
2202                .audio_clock    = 0x00187de7,
2203                .tuner_type     = TUNER_TENA_9533_DI,
2204                .radio_type     = TUNER_TEA5767,
2205                .tuner_addr     = 0x61,
2206                .radio_addr     = 0x60,
2207                .gpiomask       = 0x0700,
2208                .inputs = {{
2209                        .name   = name_tv,
2210                        .vmux   = 1,
2211                        .amux   = TV,
2212                        .tv     = 1,
2213                        .gpio   = 0x000,
2214                },{
2215                        .name   = name_comp1,
2216                        .vmux   = 3,
2217                        .amux   = LINE1,
2218                        .gpio   = 0x200,                /* gpio by DScaler */
2219                },{
2220                        .name   = name_svideo,
2221                        .vmux   = 0,
2222                        .amux   = LINE1,
2223                        .gpio   = 0x200,
2224                }},
2225                .radio = {
2226                        .name   = name_radio,
2227                        .amux   = LINE1,
2228                        .gpio   = 0x100,
2229                },
2230                .mute = {
2231                        .name = name_mute,
2232                        .amux = TV,
2233                        .gpio = 0x000,
2234                },
2235        },
2236        [SAA7134_BOARD_FLYTV_DIGIMATRIX] = {
2237                .name           = "FlyTV mini Asus Digimatrix",
2238                .audio_clock    = 0x00200000,
2239                .tuner_type     = TUNER_LG_TALN,
2240                .radio_type     = UNSET,
2241                .tuner_addr     = ADDR_UNSET,
2242                .radio_addr     = ADDR_UNSET,
2243                .inputs         = {{
2244                        .name = name_tv,
2245                        .vmux = 1,
2246                        .amux = TV,
2247                        .tv   = 1,
2248                },{
2249                        .name = name_tv_mono,
2250                        .vmux = 1,
2251                        .amux = LINE2,
2252                        .tv   = 1,
2253                },{
2254                        .name = name_comp1,
2255                        .vmux = 0,
2256                        .amux = LINE2,
2257                },{
2258                        .name = name_comp2,
2259                        .vmux = 3,
2260                        .amux = LINE2,
2261                },{
2262                        .name = name_svideo,
2263                        .vmux = 8,
2264                        .amux = LINE2,
2265                }},
2266                .radio = {
2267                        .name = name_radio,             /* radio unconfirmed */
2268                        .amux = LINE2,
2269                },
2270        },
2271        [SAA7134_BOARD_KWORLD_TERMINATOR] = {
2272                /* Kworld V-Stream Studio TV Terminator */
2273                /* "James Webb <jrwebb@qwest.net> */
2274                .name           = "V-Stream Studio TV Terminator",
2275                .audio_clock    = 0x00187de7,
2276                .tuner_type     = TUNER_PHILIPS_TDA8290,
2277                .radio_type     = UNSET,
2278                .tuner_addr     = ADDR_UNSET,
2279                .radio_addr     = ADDR_UNSET,
2280                .gpiomask       = 1 << 21,
2281                .inputs         = {{
2282                        .name = name_tv,
2283                        .vmux = 1,
2284                        .amux = TV,
2285                        .gpio = 0x0000000,
2286                        .tv   = 1,
2287                },{
2288                        .name = name_comp1,     /* Composite input */
2289                        .vmux = 3,
2290                        .amux = LINE2,
2291                        .gpio = 0x0000000,
2292                },{
2293                        .name = name_svideo,    /* S-Video input */
2294                        .vmux = 8,
2295                        .amux = LINE2,
2296                        .gpio = 0x0000000,
2297                }},
2298                .radio = {
2299                        .name = name_radio,
2300                        .amux = TV,
2301                        .gpio = 0x0200000,
2302                },
2303        },
2304        [SAA7134_BOARD_YUAN_TUN900] = {
2305                /* FIXME:
2306                 * S-Video and composite sources untested.
2307                 * Radio not working.
2308                 * Remote control not yet implemented.
2309                 * From : codemaster@webgeeks.be */
2310                .name           = "Yuan TUN-900 (saa7135)",
2311                .audio_clock    = 0x00187de7,
2312                .tuner_type     = TUNER_PHILIPS_TDA8290,
2313                .radio_type     = UNSET,
2314                .tuner_addr= ADDR_UNSET,
2315                .radio_addr= ADDR_UNSET,
2316                .gpiomask       = 0x00010003,
2317                .inputs         = {{
2318                        .name = name_tv,
2319                        .vmux = 1,
2320                        .amux = TV,
2321                        .tv   = 1,
2322                        .gpio = 0x01,
2323                },{
2324                        .name = name_comp1,
2325                        .vmux = 0,
2326                        .amux = LINE2,
2327                        .gpio = 0x02,
2328                },{
2329                        .name = name_svideo,
2330                        .vmux = 6,
2331                        .amux = LINE2,
2332                        .gpio = 0x02,
2333                }},
2334                .radio = {
2335                        .name = name_radio,
2336                        .amux = LINE1,
2337                        .gpio = 0x00010003,
2338                },
2339                .mute = {
2340                        .name = name_mute,
2341                        .amux = TV,
2342                        .gpio = 0x01,
2343                },
2344        },
2345        [SAA7134_BOARD_BEHOLD_409FM] = {
2346                /* <http://tuner.beholder.ru>, Sergey <skiv@orel.ru> */
2347                /*       Beholder Intl. Ltd. 2008      */
2348                /*Dmitry Belimov <d.belimov@gmail.com> */
2349                .name           = "Beholder BeholdTV 409 FM",
2350                .audio_clock    = 0x00187de7,
2351                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
2352                .radio_type     = UNSET,
2353                .tuner_addr     = ADDR_UNSET,
2354                .radio_addr     = ADDR_UNSET,
2355                .tda9887_conf   = TDA9887_PRESENT,
2356                .gpiomask       = 0x00008000,
2357                .inputs         = {{
2358                          .name = name_tv,
2359                          .vmux = 3,
2360                          .amux = TV,
2361                          .tv   = 1,
2362                },{
2363                          .name = name_comp1,
2364                          .vmux = 1,
2365                          .amux = LINE1,
2366                },{
2367                          .name = name_svideo,
2368                          .vmux = 8,
2369                          .amux = LINE1,
2370                }},
2371                .radio = {
2372                          .name = name_radio,
2373                          .amux = LINE2,
2374                },
2375        },
2376        [SAA7134_BOARD_GOTVIEW_7135] = {
2377                /* Mike Baikov <mike@baikov.com> */
2378                /* Andrey Cvetcov <ays14@yandex.ru> */
2379                .name            = "GoTView 7135 PCI",
2380                .audio_clock     = 0x00187de7,
2381                .tuner_type      = TUNER_PHILIPS_FM1216ME_MK3,
2382                .radio_type      = UNSET,
2383                .tuner_addr      = ADDR_UNSET,
2384                .radio_addr      = ADDR_UNSET,
2385                .tda9887_conf    = TDA9887_PRESENT,
2386                .gpiomask        = 0x00200003,
2387                .inputs          = {{
2388                        .name = name_tv,
2389                        .vmux = 1,
2390                        .amux = TV,
2391                        .tv   = 1,
2392                        .gpio = 0x00200003,
2393                },{
2394                        .name = name_tv_mono,
2395                        .vmux = 1,
2396                        .amux = LINE2,
2397                        .gpio = 0x00200003,
2398                },{
2399                        .name = name_comp1,
2400                        .vmux = 3,
2401                        .amux = LINE1,
2402                        .gpio = 0x00200003,
2403                },{
2404                        .name = name_svideo,
2405                        .vmux = 8,
2406                        .amux = LINE1,
2407                        .gpio = 0x00200003,
2408                }},
2409                .radio = {
2410                        .name = name_radio,
2411                        .amux = LINE2,
2412                        .gpio = 0x00200003,
2413                },
2414                .mute = {
2415                        .name = name_mute,
2416                        .amux = TV,
2417                        .gpio = 0x00200003,
2418                },
2419        },
2420        [SAA7134_BOARD_PHILIPS_EUROPA] = {
2421                .name           = "Philips EUROPA V3 reference design",
2422                .audio_clock    = 0x00187de7,
2423                .tuner_type     = TUNER_PHILIPS_TD1316,
2424                .radio_type     = UNSET,
2425                .tuner_addr     = 0x61,
2426                .radio_addr     = ADDR_UNSET,
2427                .tda9887_conf   = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE,
2428                .mpeg           = SAA7134_MPEG_DVB,
2429                .inputs = {{
2430                        .name   = name_tv,
2431                        .vmux   = 3,
2432                        .amux   = TV,
2433                        .tv     = 1,
2434                },{
2435                        .name   = name_comp1,
2436                        .vmux   = 0,
2437                        .amux   = LINE2,
2438                },{
2439                        .name   = name_svideo,
2440                        .vmux   = 8,
2441                        .amux   = LINE2,
2442                }},
2443        },
2444        [SAA7134_BOARD_VIDEOMATE_DVBT_300] = {
2445                .name           = "Compro Videomate DVB-T300",
2446                .audio_clock    = 0x00187de7,
2447                .tuner_type     = TUNER_PHILIPS_TD1316,
2448                .radio_type     = UNSET,
2449                .tuner_addr     = 0x61,
2450                .radio_addr     = ADDR_UNSET,
2451                .tda9887_conf   = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE,
2452                .mpeg           = SAA7134_MPEG_DVB,
2453                .inputs = {{
2454                        .name   = name_tv,
2455                        .vmux   = 3,
2456                        .amux   = TV,
2457                        .tv     = 1,
2458                },{
2459                        .name   = name_comp1,
2460                        .vmux   = 1,
2461                        .amux   = LINE2,
2462                },{
2463                        .name   = name_svideo,
2464                        .vmux   = 8,
2465                        .amux   = LINE2,
2466                }},
2467        },
2468        [SAA7134_BOARD_VIDEOMATE_DVBT_200] = {
2469                .name           = "Compro Videomate DVB-T200",
2470                .tuner_type     = TUNER_ABSENT,
2471                .audio_clock    = 0x00187de7,
2472                .radio_type     = UNSET,
2473                .tuner_addr     = ADDR_UNSET,
2474                .radio_addr     = ADDR_UNSET,
2475                .mpeg           = SAA7134_MPEG_DVB,
2476                .inputs = {{
2477                        .name   = name_comp1,
2478                        .vmux   = 0,
2479                        .amux   = LINE1,
2480                },{
2481                        .name   = name_svideo,
2482                        .vmux   = 8,
2483                        .amux   = LINE1,
2484                }},
2485        },
2486        [SAA7134_BOARD_RTD_VFG7350] = {
2487                .name           = "RTD Embedded Technologies VFG7350",
2488                .audio_clock    = 0x00200000,
2489                .tuner_type     = TUNER_ABSENT,
2490                .radio_type     = UNSET,
2491                .tuner_addr     = ADDR_UNSET,
2492                .radio_addr     = ADDR_UNSET,
2493                .empress_addr   = 0x21,
2494                .inputs         = {{
2495                        .name   = "Composite 0",
2496                        .vmux   = 0,
2497                        .amux   = LINE1,
2498                },{
2499                        .name   = "Composite 1",
2500                        .vmux   = 1,
2501                        .amux   = LINE2,
2502                },{
2503                        .name   = "Composite 2",
2504                        .vmux   = 2,
2505                        .amux   = LINE1,
2506                },{
2507                        .name   = "Composite 3",
2508                        .vmux   = 3,
2509                        .amux   = LINE2,
2510                },{
2511                        .name   = "S-Video 0",
2512                        .vmux   = 8,
2513                        .amux   = LINE1,
2514                },{
2515                        .name   = "S-Video 1",
2516                        .vmux   = 9,
2517                        .amux   = LINE2,
2518                }},
2519                .mpeg           = SAA7134_MPEG_EMPRESS,
2520                .video_out      = CCIR656,
2521                .vid_port_opts  = ( SET_T_CODE_POLARITY_NON_INVERTED |
2522                                    SET_CLOCK_NOT_DELAYED |
2523                                    SET_CLOCK_INVERTED |
2524                                    SET_VSYNC_OFF ),
2525        },
2526        [SAA7134_BOARD_RTD_VFG7330] = {
2527                .name           = "RTD Embedded Technologies VFG7330",
2528                .audio_clock    = 0x00200000,
2529                .tuner_type     = TUNER_ABSENT,
2530                .radio_type     = UNSET,
2531                .tuner_addr     = ADDR_UNSET,
2532                .radio_addr     = ADDR_UNSET,
2533                .inputs         = {{
2534                        .name   = "Composite 0",
2535                        .vmux   = 0,
2536                        .amux   = LINE1,
2537                },{
2538                        .name   = "Composite 1",
2539                        .vmux   = 1,
2540                        .amux   = LINE2,
2541                },{
2542                        .name   = "Composite 2",
2543                        .vmux   = 2,
2544                        .amux   = LINE1,
2545                },{
2546                        .name   = "Composite 3",
2547                        .vmux   = 3,
2548                        .amux   = LINE2,
2549                },{
2550                        .name   = "S-Video 0",
2551                        .vmux   = 8,
2552                        .amux   = LINE1,
2553                },{
2554                        .name   = "S-Video 1",
2555                        .vmux   = 9,
2556                        .amux   = LINE2,
2557                }},
2558        },
2559        [SAA7134_BOARD_FLYTVPLATINUM_MINI2] = {
2560                .name           = "LifeView FlyTV Platinum Mini2",
2561                .audio_clock    = 0x00200000,
2562                .tuner_type     = TUNER_PHILIPS_TDA8290,
2563                .radio_type     = UNSET,
2564                .tuner_addr     = ADDR_UNSET,
2565                .radio_addr     = ADDR_UNSET,
2566
2567                .inputs         = {{
2568                        .name = name_tv,
2569                        .vmux = 1,
2570                        .amux = TV,
2571                        .tv   = 1,
2572                },{
2573                        .name = name_comp1,     /* Composite signal on S-Video input */
2574                        .vmux = 0,
2575                        .amux = LINE2,
2576                },{
2577                        .name = name_comp2,     /* Composite input */
2578                        .vmux = 3,
2579                        .amux = LINE2,
2580                },{
2581                        .name = name_svideo,
2582                        .vmux = 8,
2583                        .amux = LINE2,
2584                }},
2585        },
2586        [SAA7134_BOARD_AVERMEDIA_AVERTVHD_A180] = {
2587                /* Michael Krufky <mkrufky@m1k.net>
2588                 * Uses Alps Electric TDHU2, containing NXT2004 ATSC Decoder
2589                 * AFAIK, there is no analog demod, thus,
2590                 * no support for analog television.
2591                 */
2592                .name           = "AVerMedia AVerTVHD MCE A180",
2593                .audio_clock    = 0x00187de7,
2594                .tuner_type     = TUNER_ABSENT,
2595                .radio_type     = UNSET,
2596                .tuner_addr     = ADDR_UNSET,
2597                .radio_addr     = ADDR_UNSET,
2598                .mpeg           = SAA7134_MPEG_DVB,
2599                .inputs         = {{
2600                        .name = name_comp1,
2601                        .vmux = 3,
2602                        .amux = LINE2,
2603                },{
2604                        .name = name_svideo,
2605                        .vmux = 8,
2606                        .amux = LINE2,
2607                }},
2608        },
2609        [SAA7134_BOARD_MONSTERTV_MOBILE] = {
2610                .name           = "SKNet MonsterTV Mobile",
2611                .audio_clock    = 0x00187de7,
2612                .tuner_type     = TUNER_PHILIPS_TDA8290,
2613                .radio_type     = UNSET,
2614                .tuner_addr     = ADDR_UNSET,
2615                .radio_addr     = ADDR_UNSET,
2616
2617                .inputs         = {{
2618                          .name = name_tv,
2619                          .vmux = 1,
2620                          .amux = TV,
2621                          .tv   = 1,
2622                },{
2623                          .name = name_comp1,
2624                          .vmux = 3,
2625                          .amux = LINE1,
2626                },{
2627                          .name = name_svideo,
2628                          .vmux = 6,
2629                          .amux = LINE1,
2630                }},
2631        },
2632        [SAA7134_BOARD_PINNACLE_PCTV_110i] = {
2633               .name           = "Pinnacle PCTV 40i/50i/110i (saa7133)",
2634                .audio_clock    = 0x00187de7,
2635                .tuner_type     = TUNER_PHILIPS_TDA8290,
2636                .radio_type     = UNSET,
2637                .tuner_addr     = ADDR_UNSET,
2638                .radio_addr     = ADDR_UNSET,
2639                .gpiomask       = 0x080200000,
2640                .inputs         = { {
2641                        .name = name_tv,
2642                        .vmux = 4,
2643                        .amux = TV,
2644                        .tv   = 1,
2645                }, {
2646                        .name = name_comp1,
2647                        .vmux = 1,
2648                        .amux = LINE2,
2649                }, {
2650                        .name = name_comp2,
2651                        .vmux = 0,
2652                        .amux = LINE2,
2653                }, {
2654                        .name = name_svideo,
2655                        .vmux = 8,
2656                        .amux = LINE2,
2657                } },
2658                .radio = {
2659                        .name = name_radio,
2660                        .amux = TV,
2661                        .gpio = 0x0200000,
2662                },
2663        },
2664        [SAA7134_BOARD_ASUSTeK_P7131_DUAL] = {
2665                .name           = "ASUSTeK P7131 Dual",
2666                .audio_clock    = 0x00187de7,
2667                .tuner_type     = TUNER_PHILIPS_TDA8290,
2668                .radio_type     = UNSET,
2669                .tuner_addr     = ADDR_UNSET,
2670                .radio_addr     = ADDR_UNSET,
2671                .gpiomask       = 1 << 21,
2672                .mpeg           = SAA7134_MPEG_DVB,
2673                .inputs         = {{
2674                        .name = name_tv,
2675                        .vmux = 1,
2676                        .amux = TV,
2677                        .tv   = 1,
2678                        .gpio = 0x0000000,
2679                },{
2680                        .name = name_comp1,
2681                        .vmux = 3,
2682                        .amux = LINE2,
2683                        .gpio = 0x0200000,
2684                },{
2685                        .name = name_comp2,
2686                        .vmux = 0,
2687                        .amux = LINE2,
2688                        .gpio = 0x0200000,
2689                },{
2690                        .name = name_svideo,
2691                        .vmux = 8,
2692                        .amux = LINE2,
2693                        .gpio = 0x0200000,
2694                }},
2695                .radio = {
2696                        .name = name_radio,
2697                        .amux = TV,
2698                        .gpio = 0x0200000,
2699                },
2700        },
2701        [SAA7134_BOARD_SEDNA_PC_TV_CARDBUS] = {
2702                /* Paul Tom Zalac <pzalac@gmail.com> */
2703                /* Pavel Mihaylov <bin@bash.info> */
2704                .name           = "Sedna/MuchTV PC TV Cardbus TV/Radio (ITO25 Rev:2B)",
2705                                /* Sedna/MuchTV (OEM) Cardbus TV Tuner */
2706                .audio_clock    = 0x00187de7,
2707                .tuner_type     = TUNER_PHILIPS_TDA8290,
2708                .radio_type     = UNSET,
2709                .tuner_addr     = ADDR_UNSET,
2710                .radio_addr     = ADDR_UNSET,
2711                .gpiomask       = 0xe880c0,
2712                .inputs         = {{
2713                        .name = name_tv,
2714                        .vmux = 3,
2715                        .amux = TV,
2716                        .tv   = 1,
2717                },{
2718                        .name = name_comp1,
2719                        .vmux = 1,
2720                        .amux = LINE1,
2721                },{
2722                        .name = name_svideo,
2723                        .vmux = 6,
2724                        .amux = LINE1,
2725                }},
2726                .radio = {
2727                        .name = name_radio,
2728                        .amux = LINE2,
2729                },
2730        },
2731        [SAA7134_BOARD_ASUSTEK_DIGIMATRIX_TV] = {
2732                /* "Cyril Lacoux (Yack)" <clacoux@ifeelgood.org> */
2733                .name           = "ASUS Digimatrix TV",
2734                .audio_clock    = 0x00200000,
2735                .tuner_type     = TUNER_PHILIPS_FQ1216ME,
2736                .tda9887_conf   = TDA9887_PRESENT,
2737                .radio_type     = UNSET,
2738                .tuner_addr     = ADDR_UNSET,
2739                .radio_addr     = ADDR_UNSET,
2740                .inputs         = {{
2741                        .name = name_tv,
2742                        .vmux = 1,
2743                        .amux = TV,
2744                        .tv   = 1,
2745                },{
2746                        .name = name_comp1,
2747                        .vmux = 3,
2748                        .amux = LINE1,
2749                },{
2750                        .name = name_svideo,
2751                        .vmux = 8,
2752                        .amux = LINE1,
2753                }},
2754        },
2755        [SAA7134_BOARD_PHILIPS_TIGER] = {
2756                .name           = "Philips Tiger reference design",
2757                .audio_clock    = 0x00187de7,
2758                .tuner_type     = TUNER_PHILIPS_TDA8290,
2759                .radio_type     = UNSET,
2760                .tuner_addr     = ADDR_UNSET,
2761                .radio_addr     = ADDR_UNSET,
2762                .tuner_config   = 0,
2763                .mpeg           = SAA7134_MPEG_DVB,
2764                .gpiomask       = 0x0200000,
2765                .inputs = {{
2766                        .name   = name_tv,
2767                        .vmux   = 1,
2768                        .amux   = TV,
2769                        .tv     = 1,
2770                },{
2771                        .name   = name_comp1,
2772                        .vmux   = 3,
2773                        .amux   = LINE1,
2774                },{
2775                        .name   = name_svideo,
2776                        .vmux   = 8,
2777                        .amux   = LINE1,
2778                }},
2779                .radio = {
2780                        .name   = name_radio,
2781                        .amux   = TV,
2782                        .gpio   = 0x0200000,
2783                },
2784        },
2785        [SAA7134_BOARD_MSI_TVATANYWHERE_PLUS] = {
2786                .name           = "MSI TV@Anywhere plus",
2787                .audio_clock    = 0x00187de7,
2788                .tuner_type     = TUNER_PHILIPS_TDA8290,
2789                .radio_type     = UNSET,
2790                .tuner_addr     = ADDR_UNSET,
2791                .radio_addr     = ADDR_UNSET,
2792                .gpiomask       = 1 << 21,
2793                .inputs = {{
2794                        .name   = name_tv,
2795                        .vmux   = 1,
2796                        .amux   = TV,
2797                        .tv     = 1,
2798                },{
2799                        .name   = name_comp1,
2800                        .vmux   = 3,
2801                        .amux   = LINE2,        /* unconfirmed, taken from Philips driver */
2802                },{
2803                        .name   = name_comp2,
2804                        .vmux   = 0,            /* untested, Composite over S-Video */
2805                        .amux   = LINE2,
2806                },{
2807                        .name   = name_svideo,
2808                        .vmux   = 8,
2809                        .amux   = LINE2,
2810                }},
2811                .radio = {
2812                        .name   = name_radio,
2813                        .amux   = TV,
2814                        .gpio   = 0x0200000,
2815                },
2816        },
2817        [SAA7134_BOARD_CINERGY250PCI] = {
2818                /* remote-control does not work. The signal about a
2819                   key press comes in via gpio, but the key code
2820                   doesn't. Neither does it have an i2c remote control
2821                   interface. */
2822                .name           = "Terratec Cinergy 250 PCI TV",
2823                .audio_clock    = 0x00187de7,
2824                .tuner_type     = TUNER_PHILIPS_TDA8290,
2825                .radio_type     = UNSET,
2826                .tuner_addr     = ADDR_UNSET,
2827                .radio_addr     = ADDR_UNSET,
2828                .gpiomask       = 0x80200000,
2829                .inputs         = {{
2830                        .name = name_tv,
2831                        .vmux = 1,
2832                        .amux = TV,
2833                        .tv   = 1,
2834                },{
2835                        .name = name_svideo,  /* NOT tested */
2836                        .vmux = 8,
2837                        .amux = LINE1,
2838                }},
2839                .radio = {
2840                        .name   = name_radio,
2841                        .amux   = TV,
2842                        .gpio   = 0x0200000,
2843                },
2844        },
2845        [SAA7134_BOARD_FLYDVB_TRIO] = {
2846                /* LifeView LR319 FlyDVB Trio */
2847                /* Peter Missel <peter.missel@onlinehome.de> */
2848                .name           = "LifeView FlyDVB Trio",
2849                .audio_clock    = 0x00200000,
2850                .tuner_type     = TUNER_PHILIPS_TDA8290,
2851                .radio_type     = UNSET,
2852                .tuner_addr     = ADDR_UNSET,
2853                .radio_addr     = ADDR_UNSET,
2854                .gpiomask       = 0x00200000,
2855                .mpeg           = SAA7134_MPEG_DVB,
2856                .inputs         = {{
2857                        .name = name_tv,        /* Analog broadcast/cable TV */
2858                        .vmux = 1,
2859                        .amux = TV,
2860                        .gpio = 0x200000,       /* GPIO21=High for TV input */
2861                        .tv   = 1,
2862                },{
2863                        .name = name_svideo,    /* S-Video signal on S-Video input */
2864                        .vmux = 8,
2865                        .amux = LINE2,
2866                },{
2867                        .name = name_comp1,     /* Composite signal on S-Video input */
2868                        .vmux = 0,
2869                        .amux = LINE2,
2870                },{
2871                        .name = name_comp2,     /* Composite input */
2872                        .vmux = 3,
2873                        .amux = LINE2,
2874                }},
2875                .radio = {
2876                        .name = name_radio,
2877                        .amux = TV,
2878                        .gpio = 0x000000,       /* GPIO21=Low for FM radio antenna */
2879                },
2880        },
2881        [SAA7134_BOARD_AVERMEDIA_777] = {
2882                .name           = "AverTV DVB-T 777",
2883                .audio_clock    = 0x00187de7,
2884                .tuner_type     = TUNER_ABSENT,
2885                .radio_type     = UNSET,
2886                .tuner_addr     = ADDR_UNSET,
2887                .radio_addr     = ADDR_UNSET,
2888                .mpeg           = SAA7134_MPEG_DVB,
2889                .inputs = {{
2890                        .name   = name_comp1,
2891                        .vmux   = 1,
2892                        .amux   = LINE1,
2893                },{
2894                        .name   = name_svideo,
2895                        .vmux   = 8,
2896                        .amux   = LINE1,
2897                }},
2898        },
2899        [SAA7134_BOARD_FLYDVBT_LR301] = {
2900                /* LifeView FlyDVB-T */
2901                /* Giampiero Giancipoli <gianci@libero.it> */
2902                .name           = "LifeView FlyDVB-T / Genius VideoWonder DVB-T",
2903                .audio_clock    = 0x00200000,
2904                .tuner_type     = TUNER_ABSENT,
2905                .radio_type     = UNSET,
2906                .tuner_addr     = ADDR_UNSET,
2907                .radio_addr     = ADDR_UNSET,
2908                .mpeg           = SAA7134_MPEG_DVB,
2909                .inputs         = {{
2910                        .name = name_comp1,     /* Composite input */
2911                        .vmux = 3,
2912                        .amux = LINE2,
2913                },{
2914                        .name = name_svideo,    /* S-Video signal on S-Video input */
2915                        .vmux = 8,
2916                        .amux = LINE2,
2917                }},
2918        },
2919        [SAA7134_BOARD_ADS_DUO_CARDBUS_PTV331] = {
2920                .name           = "ADS Instant TV Duo Cardbus PTV331",
2921                .audio_clock    = 0x00200000,
2922                .tuner_type     = TUNER_PHILIPS_TDA8290,
2923                .radio_type     = UNSET,
2924                .tuner_addr     = ADDR_UNSET,
2925                .radio_addr     = ADDR_UNSET,
2926                .mpeg           = SAA7134_MPEG_DVB,
2927                .gpiomask       = 0x00600000, /* Bit 21 0=Radio, Bit 22 0=TV */
2928                .inputs = {{
2929                        .name   = name_tv,
2930                        .vmux   = 1,
2931                        .amux   = TV,
2932                        .tv     = 1,
2933                        .gpio   = 0x00200000,
2934                }},
2935        },
2936        [SAA7134_BOARD_TEVION_DVBT_220RF] = {
2937                .name           = "Tevion/KWorld DVB-T 220RF",
2938                .audio_clock    = 0x00187de7,
2939                .tuner_type     = TUNER_PHILIPS_TDA8290,
2940                .radio_type     = UNSET,
2941                .tuner_addr     = ADDR_UNSET,
2942                .radio_addr     = ADDR_UNSET,
2943                .mpeg           = SAA7134_MPEG_DVB,
2944                .gpiomask       = 1 << 21,
2945                .inputs = {{
2946                        .name   = name_tv,
2947                        .vmux   = 1,
2948                        .amux   = TV,
2949                        .tv     = 1,
2950                },{
2951                        .name   = name_comp1,
2952                        .vmux   = 3,
2953                        .amux   = LINE1,
2954                },{
2955                        .name   = name_comp2,
2956                        .vmux   = 0,
2957                        .amux   = LINE1,
2958                },{
2959                        .name   = name_svideo,
2960                        .vmux   = 8,
2961                        .amux   = LINE1,
2962                }},
2963                .radio = {
2964                        .name   = name_radio,
2965                        .amux   = TV,
2966                        .gpio   = 0x0200000,
2967                },
2968        },
2969        [SAA7134_BOARD_KWORLD_DVBT_210] = {
2970                .name           = "KWorld DVB-T 210",
2971                .audio_clock    = 0x00187de7,
2972                .tuner_type     = TUNER_PHILIPS_TDA8290,
2973                .radio_type     = UNSET,
2974                .tuner_addr     = ADDR_UNSET,
2975                .radio_addr     = ADDR_UNSET,
2976                .mpeg           = SAA7134_MPEG_DVB,
2977                .gpiomask       = 1 << 21,
2978                .inputs = {{
2979                        .name   = name_tv,
2980                        .vmux   = 1,
2981                        .amux   = TV,
2982                        .tv     = 1,
2983                },{
2984                        .name   = name_comp1,
2985                        .vmux   = 3,
2986                        .amux   = LINE1,
2987                },{
2988                        .name   = name_svideo,
2989                        .vmux   = 8,
2990                        .amux   = LINE1,
2991                }},
2992                .radio = {
2993                        .name   = name_radio,
2994                        .amux   = TV,
2995                        .gpio   = 0x0200000,
2996                },
2997        },
2998        [SAA7134_BOARD_KWORLD_ATSC110] = {
2999                .name           = "Kworld ATSC110/115",
3000                .audio_clock    = 0x00187de7,
3001                .tuner_type     = TUNER_PHILIPS_TUV1236D,
3002                .radio_type     = UNSET,
3003                .tuner_addr     = ADDR_UNSET,
3004                .radio_addr     = ADDR_UNSET,
3005                .tda9887_conf   = TDA9887_PRESENT,
3006                .mpeg           = SAA7134_MPEG_DVB,
3007                .inputs         = {{
3008                        .name = name_tv,
3009                        .vmux = 1,
3010                        .amux = TV,
3011                        .tv   = 1,
3012                },{
3013                        .name = name_comp1,
3014                        .vmux = 3,
3015                        .amux = LINE2,
3016                },{
3017                        .name = name_svideo,
3018                        .vmux = 8,
3019                        .amux = LINE2,
3020                }},
3021        },
3022        [SAA7134_BOARD_AVERMEDIA_A169_B] = {
3023                /* AVerMedia A169  */
3024                /* Rickard Osser <ricky@osser.se>  */
3025                /* This card has two saa7134 chips on it,
3026                   but only one of them is currently working. */
3027                .name           = "AVerMedia A169 B",
3028                .audio_clock    = 0x02187de7,
3029                .tuner_type     = TUNER_LG_TALN,
3030                .radio_type     = UNSET,
3031                .tuner_addr     = ADDR_UNSET,
3032                .radio_addr     = ADDR_UNSET,
3033                .tda9887_conf   = TDA9887_PRESENT,
3034                .gpiomask       = 0x0a60000,
3035        },
3036        [SAA7134_BOARD_AVERMEDIA_A169_B1] = {
3037                /* AVerMedia A169 */
3038                /* Rickard Osser <ricky@osser.se> */
3039                .name           = "AVerMedia A169 B1",
3040                .audio_clock    = 0x02187de7,
3041                .tuner_type     = TUNER_LG_TALN,
3042                .radio_type     = UNSET,
3043                .tuner_addr     = ADDR_UNSET,
3044                .radio_addr     = ADDR_UNSET,
3045                .tda9887_conf   = TDA9887_PRESENT,
3046                .gpiomask       = 0xca60000,
3047                .inputs         = {{
3048                        .name = name_tv,
3049                        .vmux = 4,
3050                        .amux = TV,
3051                        .tv   = 1,
3052                        .gpio = 0x04a61000,
3053                },{
3054                        .name = name_comp2,  /*  Composite SVIDEO (B/W if signal is carried with SVIDEO) */
3055                        .vmux = 1,
3056                        .amux = LINE2,
3057                },{
3058                        .name = name_svideo,
3059                        .vmux = 9,           /* 9 is correct as S-VIDEO1 according to a169.inf! */
3060                        .amux = LINE1,
3061                }},
3062        },
3063        [SAA7134_BOARD_MD7134_BRIDGE_2] = {
3064                /* The second saa7134 on this card only serves as DVB-S host bridge */
3065                .name           = "Medion 7134 Bridge #2",
3066                .audio_clock    = 0x00187de7,
3067                .radio_type     = UNSET,
3068                .tuner_addr     = ADDR_UNSET,
3069                .radio_addr     = ADDR_UNSET,
3070                .mpeg           = SAA7134_MPEG_DVB,
3071        },
3072        [SAA7134_BOARD_FLYDVBT_HYBRID_CARDBUS] = {
3073                .name           = "LifeView FlyDVB-T Hybrid Cardbus/MSI TV @nywhere A/D NB",
3074                .audio_clock    = 0x00200000,
3075                .tuner_type     = TUNER_PHILIPS_TDA8290,
3076                .radio_type     = UNSET,
3077                .tuner_addr     = ADDR_UNSET,
3078                .radio_addr     = ADDR_UNSET,
3079                .mpeg           = SAA7134_MPEG_DVB,
3080                .gpiomask       = 0x00600000, /* Bit 21 0=Radio, Bit 22 0=TV */
3081                .inputs         = {{
3082                        .name = name_tv,
3083                        .vmux = 1,
3084                        .amux = TV,
3085                        .gpio = 0x200000,       /* GPIO21=High for TV input */
3086                        .tv   = 1,
3087                },{
3088                        .name = name_svideo,    /* S-Video signal on S-Video input */
3089                        .vmux = 8,
3090                        .amux = LINE2,
3091                },{
3092                        .name = name_comp1,     /* Composite signal on S-Video input */
3093                        .vmux = 0,
3094                        .amux = LINE2,
3095                },{
3096                        .name = name_comp2,     /* Composite input */
3097                        .vmux = 3,
3098                        .amux = LINE2,
3099                }},
3100                .radio = {
3101                        .name = name_radio,
3102                        .amux = TV,
3103                        .gpio = 0x000000,       /* GPIO21=Low for FM radio antenna */
3104                },
3105        },
3106        [SAA7134_BOARD_FLYVIDEO3000_NTSC] = {
3107                /* "Zac Bowling" <zac@zacbowling.com> */
3108                .name           = "LifeView FlyVIDEO3000 (NTSC)",
3109                .audio_clock    = 0x00200000,
3110                .tuner_type     = TUNER_PHILIPS_NTSC,
3111                .radio_type     = UNSET,
3112                .tuner_addr     = ADDR_UNSET,
3113                .radio_addr     = ADDR_UNSET,
3114
3115                .gpiomask       = 0xe000,
3116                .inputs         = {{
3117                        .name = name_tv,
3118                        .vmux = 1,
3119                        .amux = TV,
3120                        .gpio = 0x8000,
3121                        .tv   = 1,
3122                },{
3123                        .name = name_tv_mono,
3124                        .vmux = 1,
3125                        .amux = LINE2,
3126                        .gpio = 0x0000,
3127                        .tv   = 1,
3128                },{
3129                        .name = name_comp1,
3130                        .vmux = 0,
3131                        .amux = LINE2,
3132                        .gpio = 0x4000,
3133                },{
3134                        .name = name_comp2,
3135                        .vmux = 3,
3136                        .amux = LINE2,
3137                        .gpio = 0x4000,
3138                },{
3139                        .name = name_svideo,
3140                        .vmux = 8,
3141                        .amux = LINE2,
3142                        .gpio = 0x4000,
3143                }},
3144                .radio = {
3145                        .name = name_radio,
3146                        .amux = LINE2,
3147                        .gpio = 0x2000,
3148                },
3149                        .mute = {
3150                        .name = name_mute,
3151                        .amux = TV,
3152                        .gpio = 0x8000,
3153                },
3154        },
3155        [SAA7134_BOARD_MEDION_MD8800_QUADRO] = {
3156                .name           = "Medion Md8800 Quadro",
3157                .audio_clock    = 0x00187de7,
3158                .tuner_type     = TUNER_PHILIPS_TDA8290,
3159                .radio_type     = UNSET,
3160                .tuner_addr     = ADDR_UNSET,
3161                .radio_addr     = ADDR_UNSET,
3162                .mpeg           = SAA7134_MPEG_DVB,
3163                .inputs = {{
3164                        .name   = name_tv,
3165                        .vmux   = 1,
3166                        .amux   = TV,
3167                        .tv     = 1,
3168                },{
3169                        .name   = name_comp1,
3170                        .vmux   = 0,
3171                        .amux   = LINE1,
3172                },{
3173                        .name   = name_svideo,
3174                        .vmux   = 8,
3175                        .amux   = LINE1,
3176                }},
3177        },
3178        [SAA7134_BOARD_FLYDVBS_LR300] = {
3179                /* LifeView FlyDVB-s */
3180                /* Igor M. Liplianin <liplianin@tut.by> */
3181                .name           = "LifeView FlyDVB-S /Acorp TV134DS",
3182                .audio_clock    = 0x00200000,
3183                .tuner_type     = TUNER_ABSENT,
3184                .radio_type     = UNSET,
3185                .tuner_addr     = ADDR_UNSET,
3186                .radio_addr     = ADDR_UNSET,
3187                .mpeg           = SAA7134_MPEG_DVB,
3188                .inputs         = {{
3189                        .name = name_comp1,     /* Composite input */
3190                        .vmux = 3,
3191                        .amux = LINE1,
3192                },{
3193                        .name = name_svideo,    /* S-Video signal on S-Video input */
3194                        .vmux = 8,
3195                        .amux = LINE1,
3196                }},
3197        },
3198        [SAA7134_BOARD_PROTEUS_2309] = {
3199                .name           = "Proteus Pro 2309",
3200                .audio_clock    = 0x00187de7,
3201                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
3202                .radio_type     = UNSET,
3203                .tuner_addr     = ADDR_UNSET,
3204                .radio_addr     = ADDR_UNSET,
3205                .tda9887_conf   = TDA9887_PRESENT,
3206                .inputs         = {{
3207                        .name = name_tv,
3208                        .vmux = 1,
3209                        .amux = LINE2,
3210                        .tv   = 1,
3211                },{
3212                        .name = name_comp1,
3213                        .vmux = 0,
3214                        .amux = LINE2,
3215                },{
3216                        .name = name_comp2,
3217                        .vmux = 3,
3218                        .amux = LINE2,
3219                },{
3220                        .name = name_svideo,
3221                        .vmux = 8,
3222                        .amux = LINE2,
3223                }},
3224                .mute = {
3225                        .name = name_mute,
3226                        .amux = LINE1,
3227                },
3228        },
3229        [SAA7134_BOARD_AVERMEDIA_A16AR] = {
3230                /* Petr Baudis <pasky@ucw.cz> */
3231                .name           = "AVerMedia TV Hybrid A16AR",
3232                .audio_clock    = 0x187de7,
3233                .tuner_type     = TUNER_PHILIPS_TD1316, /* untested */
3234                .radio_type     = TUNER_TEA5767, /* untested */
3235                .tuner_addr     = ADDR_UNSET,
3236                .radio_addr     = 0x60,
3237                .tda9887_conf   = TDA9887_PRESENT,
3238                .mpeg           = SAA7134_MPEG_DVB,
3239                .inputs         = {{
3240                        .name = name_tv,
3241                        .vmux = 1,
3242                        .amux = TV,
3243                        .tv   = 1,
3244                },{
3245                        .name = name_comp1,
3246                        .vmux = 3,
3247                        .amux = LINE2,
3248                },{
3249                        .name = name_svideo,
3250                        .vmux = 8,
3251                        .amux = LINE1,
3252                }},
3253                .radio = {
3254                        .name = name_radio,
3255                        .amux = LINE1,
3256                },
3257        },
3258        [SAA7134_BOARD_ASUS_EUROPA2_HYBRID] = {
3259                .name           = "Asus Europa2 OEM",
3260                .audio_clock    = 0x00187de7,
3261                .tuner_type     = TUNER_PHILIPS_FMD1216ME_MK3,
3262                .radio_type     = UNSET,
3263                .tuner_addr     = ADDR_UNSET,
3264                .radio_addr     = ADDR_UNSET,
3265                .tda9887_conf   = TDA9887_PRESENT| TDA9887_PORT1_ACTIVE | TDA9887_PORT2_ACTIVE,
3266                .mpeg           = SAA7134_MPEG_DVB,
3267                .inputs = {{
3268                        .name   = name_tv,
3269                        .vmux   = 3,
3270                        .amux   = TV,
3271                        .tv     = 1,
3272                },{
3273                        .name   = name_comp1,
3274                        .vmux   = 4,
3275                        .amux   = LINE2,
3276                },{
3277                        .name   = name_svideo,
3278                        .vmux   = 8,
3279                        .amux   = LINE2,
3280                }},
3281                .radio = {
3282                        .name   = name_radio,
3283                        .amux   = LINE1,
3284                },
3285        },
3286        [SAA7134_BOARD_PINNACLE_PCTV_310i] = {
3287                .name           = "Pinnacle PCTV 310i",
3288                .audio_clock    = 0x00187de7,
3289                .tuner_type     = TUNER_PHILIPS_TDA8290,
3290                .radio_type     = UNSET,
3291                .tuner_addr     = ADDR_UNSET,
3292                .radio_addr     = ADDR_UNSET,
3293                .tuner_config   = 1,
3294                .mpeg           = SAA7134_MPEG_DVB,
3295                .gpiomask       = 0x000200000,
3296                .inputs         = {{
3297                        .name = name_tv,
3298                        .vmux = 4,
3299                        .amux = TV,
3300                        .tv   = 1,
3301                },{
3302                        .name = name_comp1,
3303                        .vmux = 1,
3304                        .amux = LINE2,
3305                },{
3306                        .name = name_comp2,
3307                        .vmux = 0,
3308                        .amux = LINE2,
3309                },{
3310                        .name = name_svideo,
3311                        .vmux = 8,
3312                        .amux = LINE2,
3313                }},
3314                .radio = {
3315                        .name = name_radio,
3316                        .amux   = TV,
3317                        .gpio   = 0x0200000,
3318                },
3319        },
3320        [SAA7134_BOARD_AVERMEDIA_STUDIO_507] = {
3321                /* Mikhail Fedotov <mo_fedotov@mail.ru> */
3322                .name           = "Avermedia AVerTV Studio 507",
3323                .audio_clock    = 0x00187de7,
3324                .tuner_type     = TUNER_PHILIPS_FM1256_IH3,
3325                .radio_type     = UNSET,
3326                .tuner_addr     = ADDR_UNSET,
3327                .radio_addr     = ADDR_UNSET,
3328                .tda9887_conf   = TDA9887_PRESENT,
3329                .gpiomask       = 0x03,
3330                .inputs         = {{
3331                        .name = name_tv,
3332                        .vmux = 1,
3333                        .amux = TV,
3334                        .tv   = 1,
3335                        .gpio = 0x00,
3336                },{
3337                        .name = name_comp1,
3338                        .vmux = 0,
3339                        .amux = LINE2,
3340                        .gpio = 0x00,
3341                },{
3342                        .name = name_comp2,
3343                        .vmux = 3,
3344                        .amux = LINE2,
3345                        .gpio = 0x00,
3346                },{
3347                        .name = name_svideo,
3348                        .vmux = 8,
3349                        .amux = LINE2,
3350                        .gpio = 0x00,
3351                }},
3352                .radio = {
3353                        .name = name_radio,
3354                        .amux = LINE2,
3355                        .gpio = 0x01,
3356                },
3357                .mute  = {
3358                        .name = name_mute,
3359                        .amux = LINE1,
3360                        .gpio = 0x00,
3361                },
3362        },
3363        [SAA7134_BOARD_VIDEOMATE_DVBT_200A] = {
3364                /* Francis Barber <fedora@barber-family.id.au> */
3365                .name           = "Compro Videomate DVB-T200A",
3366                .audio_clock    = 0x00187de7,
3367                .tuner_type     = TUNER_ABSENT,
3368                .radio_type     = UNSET,
3369                .tuner_addr     = ADDR_UNSET,
3370                .radio_addr     = ADDR_UNSET,
3371                .tda9887_conf   = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE,
3372                .mpeg           = SAA7134_MPEG_DVB,
3373                .inputs = {{
3374                        .name   = name_tv,
3375                        .vmux   = 3,
3376                        .amux   = TV,
3377                        .tv     = 1,
3378                },{
3379                        .name   = name_comp1,
3380                        .vmux   = 1,
3381                        .amux   = LINE2,
3382                },{
3383                        .name   = name_svideo,
3384                        .vmux   = 8,
3385                        .amux   = LINE2,
3386                }},
3387        },
3388        [SAA7134_BOARD_HAUPPAUGE_HVR1110] = {
3389                /* Thomas Genty <tomlohave@gmail.com> */
3390                /* David Bentham <db260179@hotmail.com> */
3391                .name           = "Hauppauge WinTV-HVR1110 DVB-T/Hybrid",
3392                .audio_clock    = 0x00187de7,
3393                .tuner_type     = TUNER_PHILIPS_TDA8290,
3394                .radio_type     = UNSET,
3395                .tuner_addr     = ADDR_UNSET,
3396                .radio_addr     = ADDR_UNSET,
3397                .tuner_config   = 1,
3398                .mpeg           = SAA7134_MPEG_DVB,
3399                .gpiomask       = 0x0200100,
3400                .inputs         = {{
3401                        .name = name_tv,
3402                        .vmux = 1,
3403                        .amux = TV,
3404                        .tv   = 1,
3405                        .gpio = 0x0000100,
3406                }, {
3407                        .name = name_comp1,
3408                        .vmux = 3,
3409                        .amux = LINE1,
3410                }, {
3411                        .name = name_svideo,
3412                        .vmux = 8,
3413                        .amux = LINE1,
3414                } },
3415                .radio = {
3416                        .name = name_radio,
3417                        .amux = TV,
3418                        .gpio = 0x0200100,
3419                },
3420        },
3421        [SAA7134_BOARD_HAUPPAUGE_HVR1150] = {
3422                .name           = "Hauppauge WinTV-HVR1150 ATSC/QAM-Hybrid",
3423                .audio_clock    = 0x00187de7,
3424                .tuner_type     = TUNER_PHILIPS_TDA8290,
3425                .radio_type     = UNSET,
3426                .tuner_addr     = ADDR_UNSET,
3427                .radio_addr     = ADDR_UNSET,
3428                .tuner_config   = 3,
3429                .mpeg           = SAA7134_MPEG_DVB,
3430                .ts_type        = SAA7134_MPEG_TS_SERIAL,
3431                .ts_force_val   = 1,
3432                .gpiomask       = 0x0800100, /* GPIO 21 is an INPUT */
3433                .inputs         = {{
3434                        .name = name_tv,
3435                        .vmux = 1,
3436                        .amux = TV,
3437                        .tv   = 1,
3438                        .gpio = 0x0000100,
3439                }, {
3440                        .name = name_comp1,
3441                        .vmux = 3,
3442                        .amux = LINE1,
3443                }, {
3444                        .name = name_svideo,
3445                        .vmux = 8,
3446                        .amux = LINE1,
3447                } },
3448                .radio = {
3449                        .name = name_radio,
3450                        .amux = TV,
3451                        .gpio = 0x0800100, /* GPIO 23 HI for FM */
3452                },
3453        },
3454        [SAA7134_BOARD_HAUPPAUGE_HVR1120] = {
3455                .name           = "Hauppauge WinTV-HVR1120 DVB-T/Hybrid",
3456                .audio_clock    = 0x00187de7,
3457                .tuner_type     = TUNER_PHILIPS_TDA8290,
3458                .radio_type     = UNSET,
3459                .tuner_addr     = ADDR_UNSET,
3460                .radio_addr     = ADDR_UNSET,
3461                .tuner_config   = 3,
3462                .mpeg           = SAA7134_MPEG_DVB,
3463                .ts_type        = SAA7134_MPEG_TS_SERIAL,
3464                .gpiomask       = 0x0800100, /* GPIO 21 is an INPUT */
3465                .inputs         = {{
3466                        .name = name_tv,
3467                        .vmux = 1,
3468                        .amux = TV,
3469                        .tv   = 1,
3470                        .gpio = 0x0000100,
3471                }, {
3472                        .name = name_comp1,
3473                        .vmux = 3,
3474                        .amux = LINE1,
3475                }, {
3476                        .name = name_svideo,
3477                        .vmux = 8,
3478                        .amux = LINE1,
3479                } },
3480                .radio = {
3481                        .name = name_radio,
3482                        .amux = TV,
3483                        .gpio = 0x0800100, /* GPIO 23 HI for FM */
3484                },
3485        },
3486        [SAA7134_BOARD_CINERGY_HT_PCMCIA] = {
3487                .name           = "Terratec Cinergy HT PCMCIA",
3488                .audio_clock    = 0x00187de7,
3489                .tuner_type     = TUNER_PHILIPS_TDA8290,
3490                .radio_type     = UNSET,
3491                .tuner_addr     = ADDR_UNSET,
3492                .radio_addr     = ADDR_UNSET,
3493                .mpeg           = SAA7134_MPEG_DVB,
3494                .inputs = {{
3495                        .name   = name_tv,
3496                        .vmux   = 1,
3497                        .amux   = TV,
3498                        .tv     = 1,
3499                },{
3500                        .name   = name_comp1,
3501                        .vmux   = 0,
3502                        .amux   = LINE1,
3503                },{
3504                        .name   = name_svideo,
3505                        .vmux   = 6,
3506                        .amux   = LINE1,
3507                }},
3508        },
3509        [SAA7134_BOARD_ENCORE_ENLTV] = {
3510        /* Steven Walter <stevenrwalter@gmail.com>
3511           Juan Pablo Sormani <sorman@gmail.com> */
3512                .name           = "Encore ENLTV",
3513                .audio_clock    = 0x00200000,
3514                .tuner_type     = TUNER_TNF_5335MF,
3515                .radio_type     = UNSET,
3516                .tuner_addr     = ADDR_UNSET,
3517                .radio_addr     = ADDR_UNSET,
3518                .inputs         = {{
3519                        .name = name_tv,
3520                        .vmux = 1,
3521                        .amux = 3,
3522                        .tv   = 1,
3523                },{
3524                        .name = name_tv_mono,
3525                        .vmux = 7,
3526                        .amux = 4,
3527                        .tv   = 1,
3528                },{
3529                        .name = name_comp1,
3530                        .vmux = 3,
3531                        .amux = 2,
3532                },{
3533                        .name = name_svideo,
3534                        .vmux = 0,
3535                        .amux = 2,
3536                }},
3537                .radio = {
3538                        .name = name_radio,
3539                        .amux = LINE2,
3540/*                      .gpio = 0x00300001,*/
3541                        .gpio = 0x20000,
3542
3543                },
3544                .mute = {
3545                        .name = name_mute,
3546                        .amux = 0,
3547                },
3548        },
3549        [SAA7134_BOARD_ENCORE_ENLTV_FM] = {
3550  /*    Juan Pablo Sormani <sorman@gmail.com> */
3551                .name           = "Encore ENLTV-FM",
3552                .audio_clock    = 0x00200000,
3553                .tuner_type     = TUNER_PHILIPS_FCV1236D,
3554                .radio_type     = UNSET,
3555                .tuner_addr     = ADDR_UNSET,
3556                .radio_addr     = ADDR_UNSET,
3557                .inputs         = {{
3558                        .name = name_tv,
3559                        .vmux = 1,
3560                        .amux = 3,
3561                        .tv   = 1,
3562                },{
3563                        .name = name_tv_mono,
3564                        .vmux = 7,
3565                        .amux = 4,
3566                        .tv   = 1,
3567                },{
3568                        .name = name_comp1,
3569                        .vmux = 3,
3570                        .amux = 2,
3571                },{
3572                        .name = name_svideo,
3573                        .vmux = 0,
3574                        .amux = 2,
3575                }},
3576                .radio = {
3577                        .name = name_radio,
3578                        .amux = LINE2,
3579                        .gpio = 0x20000,
3580
3581                },
3582                .mute = {
3583                        .name = name_mute,
3584                        .amux = 0,
3585                },
3586        },
3587        [SAA7134_BOARD_ENCORE_ENLTV_FM53] = {
3588                .name           = "Encore ENLTV-FM v5.3",
3589                .audio_clock    = 0x00200000,
3590                .tuner_type     = TUNER_TNF_5335MF,
3591                .radio_type     = UNSET,
3592                .tuner_addr     = ADDR_UNSET,
3593                .radio_addr     = ADDR_UNSET,
3594                .gpiomask       = 0x7000,
3595                .inputs         = { {
3596                        .name = name_tv,
3597                        .vmux = 1,
3598                        .amux = 1,
3599                        .tv   = 1,
3600                        .gpio = 0x50000,
3601                }, {
3602                        .name = name_comp1,
3603                        .vmux = 3,
3604                        .amux = 2,
3605                        .gpio = 0x2000,
3606                }, {
3607                        .name = name_svideo,
3608                        .vmux = 8,
3609                        .amux = 2,
3610                        .gpio = 0x2000,
3611                } },
3612                .radio = {
3613                        .name = name_radio,
3614                        .vmux = 1,
3615                        .amux = 1,
3616                },
3617                .mute = {
3618                        .name = name_mute,
3619                        .gpio = 0xf000,
3620                        .amux = 0,
3621                },
3622        },
3623        [SAA7134_BOARD_CINERGY_HT_PCI] = {
3624                .name           = "Terratec Cinergy HT PCI",
3625                .audio_clock    = 0x00187de7,
3626                .tuner_type     = TUNER_PHILIPS_TDA8290,
3627                .radio_type     = UNSET,
3628                .tuner_addr     = ADDR_UNSET,
3629                .radio_addr     = ADDR_UNSET,
3630                .mpeg           = SAA7134_MPEG_DVB,
3631                .inputs = {{
3632                        .name   = name_tv,
3633                        .vmux   = 1,
3634                        .amux   = TV,
3635                        .tv     = 1,
3636                },{
3637                        .name   = name_comp1,
3638                        .vmux   = 0,
3639                        .amux   = LINE1,
3640                },{
3641                        .name   = name_svideo,
3642                        .vmux   = 6,
3643                        .amux   = LINE1,
3644                }},
3645        },
3646        [SAA7134_BOARD_PHILIPS_TIGER_S] = {
3647                .name           = "Philips Tiger - S Reference design",
3648                .audio_clock    = 0x00187de7,
3649                .tuner_type     = TUNER_PHILIPS_TDA8290,
3650                .radio_type     = UNSET,
3651                .tuner_addr     = ADDR_UNSET,
3652                .radio_addr     = ADDR_UNSET,
3653                .tuner_config   = 2,
3654                .mpeg           = SAA7134_MPEG_DVB,
3655                .gpiomask       = 0x0200000,
3656                .inputs = {{
3657                        .name   = name_tv,
3658                        .vmux   = 1,
3659                        .amux   = TV,
3660                        .tv     = 1,
3661                },{
3662                        .name   = name_comp1,
3663                        .vmux   = 3,
3664                        .amux   = LINE1,
3665                },{
3666                        .name   = name_svideo,
3667                        .vmux   = 8,
3668                        .amux   = LINE1,
3669                }},
3670                .radio = {
3671                        .name   = name_radio,
3672                        .amux   = TV,
3673                        .gpio   = 0x0200000,
3674                },
3675        },
3676        [SAA7134_BOARD_AVERMEDIA_M102] = {
3677                .name           = "Avermedia M102",
3678                .audio_clock    = 0x00187de7,
3679                .tuner_type     = TUNER_PHILIPS_TDA8290,
3680                .radio_type     = UNSET,
3681                .tuner_addr     = ADDR_UNSET,
3682                .radio_addr     = ADDR_UNSET,
3683                .gpiomask       = 1<<21,
3684                .inputs         = {{
3685                        .name = name_tv,
3686                        .vmux = 1,
3687                        .amux = TV,
3688                        .tv   = 1,
3689                },{
3690                        .name = name_comp1,
3691                        .vmux = 0,
3692                        .amux = LINE2,
3693                },{
3694                        .name = name_svideo,
3695                        .vmux = 6,
3696                        .amux = LINE2,
3697                }},
3698        },
3699        [SAA7134_BOARD_ASUS_P7131_4871] = {
3700                .name           = "ASUS P7131 4871",
3701                .audio_clock    = 0x00187de7,
3702                .tuner_type     = TUNER_PHILIPS_TDA8290,
3703                .radio_type     = UNSET,
3704                .tuner_addr     = ADDR_UNSET,
3705                .radio_addr     = ADDR_UNSET,
3706                .tuner_config   = 2,
3707                .mpeg           = SAA7134_MPEG_DVB,
3708                .gpiomask       = 0x0200000,
3709                .inputs = {{
3710                        .name   = name_tv,
3711                        .vmux   = 1,
3712                        .amux   = TV,
3713                        .tv     = 1,
3714                        .gpio   = 0x0200000,
3715                }},
3716        },
3717        [SAA7134_BOARD_ASUSTeK_P7131_HYBRID_LNA] = {
3718                .name           = "ASUSTeK P7131 Hybrid",
3719                .audio_clock    = 0x00187de7,
3720                .tuner_type     = TUNER_PHILIPS_TDA8290,
3721                .radio_type     = UNSET,
3722                .tuner_addr     = ADDR_UNSET,
3723                .radio_addr     = ADDR_UNSET,
3724                .tuner_config   = 2,
3725                .gpiomask       = 1 << 21,
3726                .mpeg           = SAA7134_MPEG_DVB,
3727                .inputs         = {{
3728                        .name = name_tv,
3729                        .vmux = 1,
3730                        .amux = TV,
3731                        .tv   = 1,
3732                        .gpio = 0x0000000,
3733                },{
3734                        .name = name_comp1,
3735                        .vmux = 3,
3736                        .amux = LINE2,
3737                        .gpio = 0x0200000,
3738                },{
3739                        .name = name_comp2,
3740                        .vmux = 0,
3741                        .amux = LINE2,
3742                        .gpio = 0x0200000,
3743                },{
3744                        .name = name_svideo,
3745                        .vmux = 8,
3746                        .amux = LINE2,
3747                        .gpio = 0x0200000,
3748                }},
3749                .radio = {
3750                        .name = name_radio,
3751                        .amux = TV,
3752                        .gpio = 0x0200000,
3753                },
3754        },
3755        [SAA7134_BOARD_ASUSTeK_P7131_ANALOG] = {
3756               .name           = "ASUSTeK P7131 Analog",
3757               .audio_clock    = 0x00187de7,
3758               .tuner_type     = TUNER_PHILIPS_TDA8290,
3759               .radio_type     = UNSET,
3760               .tuner_addr     = ADDR_UNSET,
3761               .radio_addr     = ADDR_UNSET,
3762               .gpiomask       = 1 << 21,
3763               .inputs         = {{
3764                       .name = name_tv,
3765                       .vmux = 1,
3766                       .amux = TV,
3767                       .tv   = 1,
3768                       .gpio = 0x0000000,
3769               }, {
3770                       .name = name_comp1,
3771                       .vmux = 3,
3772                       .amux = LINE2,
3773               }, {
3774                       .name = name_comp2,
3775                       .vmux = 0,
3776                       .amux = LINE2,
3777               }, {
3778                       .name = name_svideo,
3779                       .vmux = 8,
3780                       .amux = LINE2,
3781               } },
3782               .radio = {
3783                       .name = name_radio,
3784                       .amux = TV,
3785                       .gpio = 0x0200000,
3786               },
3787        },
3788        [SAA7134_BOARD_SABRENT_TV_PCB05] = {
3789                .name           = "Sabrent PCMCIA TV-PCB05",
3790                .audio_clock    = 0x00187de7,
3791                .tuner_type     = TUNER_PHILIPS_TDA8290,
3792                .radio_type     = UNSET,
3793                .tuner_addr     = ADDR_UNSET,
3794                .radio_addr     = ADDR_UNSET,
3795                .inputs         = {{
3796                        .name = name_tv,
3797                        .vmux = 1,
3798                        .amux = TV,
3799                        .tv   = 1,
3800                },{
3801                        .name = name_comp1,
3802                        .vmux = 3,
3803                        .amux = LINE1,
3804                },{
3805                        .name = name_comp2,
3806                        .vmux = 0,
3807                        .amux = LINE1,
3808                },{
3809                        .name = name_svideo,
3810                        .vmux = 8,
3811                        .amux = LINE1,
3812                }},
3813                .mute = {
3814                        .name = name_mute,
3815                        .amux = TV,
3816                },
3817        },
3818        [SAA7134_BOARD_10MOONSTVMASTER3] = {
3819                /* Tony Wan <aloha_cn@hotmail.com> */
3820                .name           = "10MOONS TM300 TV Card",
3821                .audio_clock    = 0x00200000,
3822                .tuner_type     = TUNER_LG_PAL_NEW_TAPC,
3823                .radio_type     = UNSET,
3824                .tuner_addr     = ADDR_UNSET,
3825                .radio_addr     = ADDR_UNSET,
3826                .gpiomask       = 0x7000,
3827                .inputs         = {{
3828                        .name = name_tv,
3829                        .vmux = 1,
3830                        .amux = LINE2,
3831                        .gpio = 0x0000,
3832                        .tv   = 1,
3833                },{
3834                        .name = name_comp1,
3835                        .vmux = 3,
3836                        .amux = LINE1,
3837                        .gpio = 0x2000,
3838                },{
3839                        .name = name_svideo,
3840                        .vmux = 8,
3841                        .amux = LINE1,
3842                        .gpio = 0x2000,
3843                }},
3844                .mute = {
3845                        .name = name_mute,
3846                        .amux = LINE2,
3847                        .gpio = 0x3000,
3848                },
3849        },
3850        [SAA7134_BOARD_AVERMEDIA_SUPER_007] = {
3851                .name           = "Avermedia Super 007",
3852                .audio_clock    = 0x00187de7,
3853                .tuner_type     = TUNER_PHILIPS_TDA8290,
3854                .radio_type     = UNSET,
3855                .tuner_addr     = ADDR_UNSET,
3856                .radio_addr     = ADDR_UNSET,
3857                .tuner_config   = 0,
3858                .mpeg           = SAA7134_MPEG_DVB,
3859                .inputs = {{
3860                        .name   = name_tv, /* FIXME: analog tv untested */
3861                        .vmux   = 1,
3862                        .amux   = TV,
3863                        .tv     = 1,
3864                }},
3865        },
3866        [SAA7134_BOARD_AVERMEDIA_M135A] = {
3867                .name           = "Avermedia PCI pure analog (M135A)",
3868                .audio_clock    = 0x00187de7,
3869                .tuner_type     = TUNER_PHILIPS_TDA8290,
3870                .radio_type     = UNSET,
3871                .tuner_addr     = ADDR_UNSET,
3872                .radio_addr     = ADDR_UNSET,
3873                .tuner_config   = 2,
3874                .gpiomask       = 0x020200000,
3875                .inputs         = {{
3876                        .name = name_tv,
3877                        .vmux = 1,
3878                        .amux = TV,
3879                        .tv   = 1,
3880                }, {
3881                        .name = name_comp1,
3882                        .vmux = 3,
3883                        .amux = LINE1,
3884                }, {
3885                        .name = name_svideo,
3886                        .vmux = 8,
3887                        .amux = LINE1,
3888                } },
3889                .radio = {
3890                        .name = name_radio,
3891                        .amux = TV,
3892                        .gpio = 0x00200000,
3893                },
3894                .mute = {
3895                        .name = name_mute,
3896                        .amux = TV,
3897                        .gpio = 0x01,
3898                },
3899        },
3900        [SAA7134_BOARD_AVERMEDIA_M733A] = {
3901                .name           = "Avermedia PCI M733A",
3902                .audio_clock    = 0x00187de7,
3903                .tuner_type     = TUNER_PHILIPS_TDA8290,
3904                .radio_type     = UNSET,
3905                .tuner_addr     = ADDR_UNSET,
3906                .radio_addr     = ADDR_UNSET,
3907                .tuner_config   = 0,
3908                .gpiomask       = 0x020200000,
3909                .inputs         = {{
3910                        .name = name_tv,
3911                        .vmux = 1,
3912                        .amux = TV,
3913                        .tv   = 1,
3914                }, {
3915                        .name = name_comp1,
3916                        .vmux = 3,
3917                        .amux = LINE1,
3918                }, {
3919                        .name = name_svideo,
3920                        .vmux = 8,
3921                        .amux = LINE1,
3922                } },
3923                .radio = {
3924                        .name = name_radio,
3925                        .amux = TV,
3926                        .gpio = 0x00200000,
3927                },
3928                .mute = {
3929                        .name = name_mute,
3930                        .amux = TV,
3931                        .gpio = 0x01,
3932                },
3933        },
3934        [SAA7134_BOARD_BEHOLD_401] = {
3935                /*       Beholder Intl. Ltd. 2008      */
3936                /*Dmitry Belimov <d.belimov@gmail.com> */
3937                .name           = "Beholder BeholdTV 401",
3938                .audio_clock    = 0x00187de7,
3939                .tuner_type     = TUNER_PHILIPS_FQ1216ME,
3940                .radio_type     = UNSET,
3941                .tuner_addr     = ADDR_UNSET,
3942                .radio_addr     = ADDR_UNSET,
3943                .gpiomask       = 0x00008000,
3944                .inputs         = {{
3945                        .name = name_svideo,
3946                        .vmux = 8,
3947                        .amux = LINE1,
3948                },{
3949                        .name = name_comp1,
3950                        .vmux = 1,
3951                        .amux = LINE1,
3952                },{
3953                        .name = name_tv,
3954                        .vmux = 3,
3955                        .amux = LINE2,
3956                        .tv   = 1,
3957                }},
3958                .mute = {
3959                        .name = name_mute,
3960                        .amux = LINE1,
3961                },
3962        },
3963        [SAA7134_BOARD_BEHOLD_403] = {
3964                /*       Beholder Intl. Ltd. 2008      */
3965                /*Dmitry Belimov <d.belimov@gmail.com> */
3966                .name           = "Beholder BeholdTV 403",
3967                .audio_clock    = 0x00187de7,
3968                .tuner_type     = TUNER_PHILIPS_FQ1216ME,
3969                .radio_type     = UNSET,
3970                .tuner_addr     = ADDR_UNSET,
3971                .radio_addr     = ADDR_UNSET,
3972                .gpiomask       = 0x00008000,
3973                .inputs         = {{
3974                        .name = name_svideo,
3975                        .vmux = 8,
3976                        .amux = LINE1,
3977                },{
3978                        .name   = name_comp1,
3979                        .vmux   = 1,
3980                        .amux   = LINE1,
3981                },{
3982                        .name = name_tv,
3983                        .vmux = 3,
3984                        .amux = LINE2,
3985                        .tv   = 1,
3986                }},
3987        },
3988        [SAA7134_BOARD_BEHOLD_403FM] = {
3989                /*       Beholder Intl. Ltd. 2008      */
3990                /*Dmitry Belimov <d.belimov@gmail.com> */
3991                .name           = "Beholder BeholdTV 403 FM",
3992                .audio_clock    = 0x00187de7,
3993                .tuner_type     = TUNER_PHILIPS_FQ1216ME,
3994                .radio_type     = UNSET,
3995                .tuner_addr     = ADDR_UNSET,
3996                .radio_addr     = ADDR_UNSET,
3997                .gpiomask       = 0x00008000,
3998                .inputs         = {{
3999                        .name = name_svideo,
4000                        .vmux = 8,
4001                        .amux = LINE1,
4002                },{
4003                        .name   = name_comp1,
4004                        .vmux   = 1,
4005                        .amux   = LINE1,
4006                },{
4007                        .name = name_tv,
4008                        .vmux = 3,
4009                        .amux = LINE2,
4010                        .tv   = 1,
4011                }},
4012                .radio = {
4013                        .name = name_radio,
4014                        .amux = LINE2,
4015                },
4016        },
4017        [SAA7134_BOARD_BEHOLD_405] = {
4018                /*       Beholder Intl. Ltd. 2008      */
4019                /*Dmitry Belimov <d.belimov@gmail.com> */
4020                .name           = "Beholder BeholdTV 405",
4021                .audio_clock    = 0x00187de7,
4022                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
4023                .radio_type     = UNSET,
4024                .tuner_addr     = ADDR_UNSET,
4025                .radio_addr     = ADDR_UNSET,
4026                .tda9887_conf   = TDA9887_PRESENT,
4027                .gpiomask       = 0x00008000,
4028                .inputs         = {{
4029                        .name = name_svideo,
4030                        .vmux = 8,
4031                        .amux = LINE1,
4032                },{
4033                        .name = name_comp1,
4034                        .vmux = 3,
4035                        .amux = LINE1,
4036                },{
4037                        .name = name_tv,
4038                        .vmux = 3,
4039                        .amux = LINE2,
4040                        .tv   = 1,
4041                }},
4042        },
4043        [SAA7134_BOARD_BEHOLD_405FM] = {
4044                /* Sergey <skiv@orel.ru> */
4045                /*       Beholder Intl. Ltd. 2008      */
4046                /*Dmitry Belimov <d.belimov@gmail.com> */
4047                .name           = "Beholder BeholdTV 405 FM",
4048                .audio_clock    = 0x00187de7,
4049                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
4050                .radio_type     = UNSET,
4051                .tuner_addr     = ADDR_UNSET,
4052                .radio_addr     = ADDR_UNSET,
4053                .tda9887_conf   = TDA9887_PRESENT,
4054                .gpiomask       = 0x00008000,
4055                .inputs         = {{
4056                        .name = name_svideo,
4057                        .vmux = 8,
4058                        .amux = LINE1,
4059                },{
4060                        .name = name_comp1,
4061                        .vmux = 3,
4062                        .amux = LINE1,
4063                },{
4064                        .name = name_tv,
4065                        .vmux = 3,
4066                        .amux = LINE2,
4067                        .tv   = 1,
4068                }},
4069                .radio = {
4070                        .name = name_radio,
4071                        .amux = LINE2,
4072                },
4073        },
4074        [SAA7134_BOARD_BEHOLD_407] = {
4075                /*       Beholder Intl. Ltd. 2008      */
4076                /*Dmitry Belimov <d.belimov@gmail.com> */
4077                .name           = "Beholder BeholdTV 407",
4078                .audio_clock    = 0x00187de7,
4079                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
4080                .radio_type     = UNSET,
4081                .tuner_addr     = ADDR_UNSET,
4082                .radio_addr     = ADDR_UNSET,
4083                .tda9887_conf   = TDA9887_PRESENT,
4084                .gpiomask       = 0x00008000,
4085                .inputs = {{
4086                        .name = name_svideo,
4087                        .vmux = 8,
4088                        .amux = LINE1,
4089                        .gpio = 0xc0c000,
4090                },{
4091                        .name = name_comp1,
4092                        .vmux = 1,
4093                        .amux = LINE1,
4094                        .gpio = 0xc0c000,
4095                },{
4096                        .name = name_tv,
4097                        .vmux = 3,
4098                        .amux = TV,
4099                        .tv = 1,
4100                        .gpio = 0xc0c000,
4101                }},
4102        },
4103        [SAA7134_BOARD_BEHOLD_407FM] = {
4104                /*       Beholder Intl. Ltd. 2008      */
4105                /*Dmitry Belimov <d.belimov@gmail.com> */
4106                .name           = "Beholder BeholdTV 407 FM",
4107                .audio_clock    = 0x00187de7,
4108                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
4109                .radio_type     = UNSET,
4110                .tuner_addr     = ADDR_UNSET,
4111                .radio_addr     = ADDR_UNSET,
4112                .tda9887_conf   = TDA9887_PRESENT,
4113                .gpiomask       = 0x00008000,
4114                .inputs = {{
4115                        .name = name_svideo,
4116                        .vmux = 8,
4117                        .amux = LINE1,
4118                        .gpio = 0xc0c000,
4119                },{
4120                        .name = name_comp1,
4121                        .vmux = 1,
4122                        .amux = LINE1,
4123                        .gpio = 0xc0c000,
4124                },{
4125                        .name = name_tv,
4126                        .vmux = 3,
4127                        .amux = TV,
4128                        .tv = 1,
4129                        .gpio = 0xc0c000,
4130                }},
4131                .radio = {
4132                        .name = name_radio,
4133                        .amux = LINE2,
4134                        .gpio = 0xc0c000,
4135                },
4136        },
4137        [SAA7134_BOARD_BEHOLD_409] = {
4138                /*       Beholder Intl. Ltd. 2008      */
4139                /*Dmitry Belimov <d.belimov@gmail.com> */
4140                .name           = "Beholder BeholdTV 409",
4141                .audio_clock    = 0x00187de7,
4142                .tuner_type     = TUNER_PHILIPS_FM1216ME_MK3,
4143                .radio_type     = UNSET,
4144                .tuner_addr     = ADDR_UNSET,
4145                .radio_addr     = ADDR_UNSET,
4146                .tda9887_conf   = TDA9887_PRESENT,
4147                .gpiomask       = 0x00008000,
4148                .inputs         = {{
4149                        .name = name_tv,
4150                        .vmux = 3,
4151                        .amux = TV,
4152                        .tv   = 1,
4153                },{
4154                        .name = name_comp1,
4155                        .vmux = 1,
4156                        .amux = LINE1,
4157                },{