em28xx-dvb.c (ead5d1f4d877e92c051e1a1ade623d0d30e71619) em28xx-dvb.c (2e74a01fb073900c8cc5df6b5e4bcbf575ac6c26)
1// SPDX-License-Identifier: GPL-2.0
2//
3// DVB device driver for em28xx
4//
5// (c) 2008-2011 Mauro Carvalho Chehab <mchehab@kernel.org>
6//
7// (c) 2008 Devin Heitmueller <devin.heitmueller@gmail.com>
8// - Fixes for the driver to properly work with HVR-950

--- 48 unchanged lines hidden (view full) ---

57#include "qt1010.h"
58#include "mb86a20s.h"
59#include "m88ds3103.h"
60#include "ts2020.h"
61#include "si2168.h"
62#include "si2157.h"
63#include "tc90522.h"
64#include "qm1d1c0042.h"
1// SPDX-License-Identifier: GPL-2.0
2//
3// DVB device driver for em28xx
4//
5// (c) 2008-2011 Mauro Carvalho Chehab <mchehab@kernel.org>
6//
7// (c) 2008 Devin Heitmueller <devin.heitmueller@gmail.com>
8// - Fixes for the driver to properly work with HVR-950

--- 48 unchanged lines hidden (view full) ---

57#include "qt1010.h"
58#include "mb86a20s.h"
59#include "m88ds3103.h"
60#include "ts2020.h"
61#include "si2168.h"
62#include "si2157.h"
63#include "tc90522.h"
64#include "qm1d1c0042.h"
65#include "mxl692.h"
65
66MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@kernel.org>");
67MODULE_LICENSE("GPL v2");
68MODULE_DESCRIPTION(DRIVER_DESC " - digital TV interface");
69MODULE_VERSION(EM28XX_VERSION);
70
71static unsigned int debug;
72module_param(debug, int, 0644);

--- 1381 unchanged lines hidden (view full) ---

1454 if (!dvb->i2c_client_tuner) {
1455 dvb_module_release(dvb->i2c_client_demod);
1456 return -ENODEV;
1457 }
1458
1459 return 0;
1460}
1461
66
67MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@kernel.org>");
68MODULE_LICENSE("GPL v2");
69MODULE_DESCRIPTION(DRIVER_DESC " - digital TV interface");
70MODULE_VERSION(EM28XX_VERSION);
71
72static unsigned int debug;
73module_param(debug, int, 0644);

--- 1381 unchanged lines hidden (view full) ---

1455 if (!dvb->i2c_client_tuner) {
1456 dvb_module_release(dvb->i2c_client_demod);
1457 return -ENODEV;
1458 }
1459
1460 return 0;
1461}
1462
1463static int em2874_dvb_init_hauppauge_usb_quadhd(struct em28xx *dev)
1464{
1465 struct em28xx_dvb *dvb = dev->dvb;
1466 struct mxl692_config mxl692_config = {};
1467 unsigned char addr;
1468
1469 /* attach demod/tuner combo */
1470 mxl692_config.id = (dev->ts == PRIMARY_TS) ? 0 : 1;
1471 mxl692_config.fe = &dvb->fe[0];
1472 addr = (dev->ts == PRIMARY_TS) ? 0x60 : 0x63;
1473
1474 dvb->i2c_client_demod = dvb_module_probe("mxl692", NULL,
1475 &dev->i2c_adap[dev->def_i2c_bus],
1476 addr, &mxl692_config);
1477 if (!dvb->i2c_client_demod)
1478 return -ENODEV;
1479
1480 return 0;
1481}
1482
1462static int em28xx_dvb_init(struct em28xx *dev)
1463{
1464 int result = 0, dvb_alt = 0;
1465 struct em28xx_dvb *dvb;
1466 struct usb_device *udev;
1467
1468 if (dev->is_audio_only) {
1469 /* Shouldn't initialize IR for this interface */

--- 470 unchanged lines hidden (view full) ---

1940 if (result)
1941 goto out_free;
1942 break;
1943 case EM28174_BOARD_HAUPPAUGE_WINTV_DUALHD_01595:
1944 result = em28174_dvb_init_hauppauge_wintv_dualhd_01595(dev);
1945 if (result)
1946 goto out_free;
1947 break;
1483static int em28xx_dvb_init(struct em28xx *dev)
1484{
1485 int result = 0, dvb_alt = 0;
1486 struct em28xx_dvb *dvb;
1487 struct usb_device *udev;
1488
1489 if (dev->is_audio_only) {
1490 /* Shouldn't initialize IR for this interface */

--- 470 unchanged lines hidden (view full) ---

1961 if (result)
1962 goto out_free;
1963 break;
1964 case EM28174_BOARD_HAUPPAUGE_WINTV_DUALHD_01595:
1965 result = em28174_dvb_init_hauppauge_wintv_dualhd_01595(dev);
1966 if (result)
1967 goto out_free;
1968 break;
1969 case EM2874_BOARD_HAUPPAUGE_USB_QUADHD:
1970 result = em2874_dvb_init_hauppauge_usb_quadhd(dev);
1971 if (result)
1972 goto out_free;
1973 break;
1948 default:
1949 dev_err(&dev->intf->dev,
1950 "The frontend of your DVB/ATSC card isn't supported yet\n");
1951 break;
1952 }
1953 if (!dvb->fe[0]) {
1954 dev_err(&dev->intf->dev, "frontend initialization failed\n");
1955 result = -EINVAL;

--- 171 unchanged lines hidden ---
1974 default:
1975 dev_err(&dev->intf->dev,
1976 "The frontend of your DVB/ATSC card isn't supported yet\n");
1977 break;
1978 }
1979 if (!dvb->fe[0]) {
1980 dev_err(&dev->intf->dev, "frontend initialization failed\n");
1981 result = -EINVAL;

--- 171 unchanged lines hidden ---