Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a9547e52 authored by Jan Pieter van Woerkom's avatar Jan Pieter van Woerkom Committed by Mauro Carvalho Chehab
Browse files

media: dvb-usb: add T230 to dvbsky



commit 5fa88151 ("[media] dvb-usb-cxusb: Geniatech T230 - resync TS
FIFO after lock") does not solve the problem for all devices. This is the
same issue reported on the T230C, which was moved to the dvbsky.c driver
to work around this issue in commit 57422405 ("media: dvbsky: MyGica
T230C support").

In addition, the cxusb driver causes an oops when unplugging the device
while streaming; this problem does not happen any more.

Signed-off-by: default avatarJan Pieter van Woerkom <jp@jpvw.nl>
Tested-by: default avatarJames Hutchinson <jahutchinson99@googlemail.com>
Signed-off-by: default avatarSean Young <sean@mess.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent fe087322
Loading
Loading
Loading
Loading
+16 −5
Original line number Original line Diff line number Diff line
@@ -552,11 +552,19 @@ static int dvbsky_mygica_t230c_attach(struct dvb_usb_adapter *adap)


	/* attach tuner */
	/* attach tuner */
	si2157_config.fe = adap->fe[0];
	si2157_config.fe = adap->fe[0];
	if (le16_to_cpu(d->udev->descriptor.idProduct) == USB_PID_MYGICA_T230) {
		si2157_config.if_port = 1;
		state->i2c_client_tuner = dvb_module_probe("si2157", NULL,
							   i2c_adapter,
							   0x60,
							   &si2157_config);
	} else {
		si2157_config.if_port = 0;
		si2157_config.if_port = 0;

		state->i2c_client_tuner = dvb_module_probe("si2157", "si2141",
		state->i2c_client_tuner = dvb_module_probe("si2157", "si2141",
							   i2c_adapter,
							   i2c_adapter,
						   0x60, &si2157_config);
							   0x60,
							   &si2157_config);
	}
	if (!state->i2c_client_tuner) {
	if (!state->i2c_client_tuner) {
		dvb_module_release(state->i2c_client_demod);
		dvb_module_release(state->i2c_client_demod);
		return -ENODEV;
		return -ENODEV;
@@ -778,6 +786,9 @@ static const struct usb_device_id dvbsky_id_table[] = {
	{ DVB_USB_DEVICE(USB_VID_TERRATEC, USB_PID_TERRATEC_CINERGY_S2_R4,
	{ DVB_USB_DEVICE(USB_VID_TERRATEC, USB_PID_TERRATEC_CINERGY_S2_R4,
		&dvbsky_s960_props, "Terratec Cinergy S2 Rev.4",
		&dvbsky_s960_props, "Terratec Cinergy S2 Rev.4",
		RC_MAP_DVBSKY) },
		RC_MAP_DVBSKY) },
	{ DVB_USB_DEVICE(USB_VID_CONEXANT, USB_PID_MYGICA_T230,
		&mygica_t230c_props, "MyGica Mini DVB-T2 USB Stick T230",
		RC_MAP_TOTAL_MEDIA_IN_HAND_02) },
	{ DVB_USB_DEVICE(USB_VID_CONEXANT, USB_PID_MYGICA_T230C,
	{ DVB_USB_DEVICE(USB_VID_CONEXANT, USB_PID_MYGICA_T230C,
		&mygica_t230c_props, "MyGica Mini DVB-T2 USB Stick T230C",
		&mygica_t230c_props, "MyGica Mini DVB-T2 USB Stick T230C",
		RC_MAP_TOTAL_MEDIA_IN_HAND_02) },
		RC_MAP_TOTAL_MEDIA_IN_HAND_02) },