Beispiel #1
0
/* mercury mh mxl111sf          lg2161
 * tp bulk    EP4/BULK/5/8192   EP6/BULK/5/8192/RAW
 * tp isoc    EP4/ISOC/5/96/564 EP6/ISOC/5/24/3072/RAW
 * spi bulk   EP4/BULK/5/8192   EP5/BULK/5/8192/RAW
 * spi isoc   EP4/ISOC/5/96/564 EP5/ISOC/5/96/200/RAW
 */
static int mxl111sf_get_stream_config_mercury_mh(struct dvb_frontend *fe,
		u8 *ts_type, struct usb_data_stream_properties *stream)
{
	deb_info("%s: fe=%d\n", __func__, fe->id);

	if (fe->id == 0) {
		*ts_type = DVB_USB_FE_TS_TYPE_188;
		if (dvb_usb_mxl111sf_isoc)
			mxl111sf_stream_config_isoc(stream, 4, 96, 564);
		else
			mxl111sf_stream_config_bulk(stream, 4);
	} else if (fe->id == 1 && dvb_usb_mxl111sf_spi) {
		*ts_type = DVB_USB_FE_TS_TYPE_RAW;
		if (dvb_usb_mxl111sf_isoc)
			mxl111sf_stream_config_isoc(stream, 5, 96, 200);
		else
			mxl111sf_stream_config_bulk(stream, 5);
	} else if (fe->id == 1 && !dvb_usb_mxl111sf_spi) {
		*ts_type = DVB_USB_FE_TS_TYPE_RAW;
		if (dvb_usb_mxl111sf_isoc)
			mxl111sf_stream_config_isoc(stream, 6, 24, 3072);
		else
			mxl111sf_stream_config_bulk(stream, 6);
	}
	return 0;
}
Beispiel #2
0
/* mh         lg2160
 * bulk       EP5/BULK/5/8192/RAW
 * isoc       EP5/ISOC/5/96/200/RAW
 */
static int mxl111sf_get_stream_config_mh(struct dvb_frontend *fe,
		u8 *ts_type, struct usb_data_stream_properties *stream)
{
	deb_info("%s: fe=%d\n", __func__, fe->id);

	*ts_type = DVB_USB_FE_TS_TYPE_RAW;
	if (dvb_usb_mxl111sf_isoc)
		mxl111sf_stream_config_isoc(stream, 5, 96, 200);
	else
		mxl111sf_stream_config_bulk(stream, 5);
	return 0;
}
Beispiel #3
0
/* atsc       lgdt3305
 * bulk       EP6/BULK/5/8192
 * isoc       EP6/ISOC/5/24/3072
 */
static int mxl111sf_get_stream_config_atsc(struct dvb_frontend *fe,
		u8 *ts_type, struct usb_data_stream_properties *stream)
{
	pr_debug("%s: fe=%d\n", __func__, fe->id);

	*ts_type = DVB_USB_FE_TS_TYPE_188;
	if (dvb_usb_mxl111sf_isoc)
		mxl111sf_stream_config_isoc(stream, 6, 24, 3072);
	else
		mxl111sf_stream_config_bulk(stream, 6);
	return 0;
}