177bbb2b0SAntti Palosaari /* 277bbb2b0SAntti Palosaari * Realtek RTL2832U SDR driver 377bbb2b0SAntti Palosaari * 477bbb2b0SAntti Palosaari * Copyright (C) 2013 Antti Palosaari <crope@iki.fi> 577bbb2b0SAntti Palosaari * 677bbb2b0SAntti Palosaari * This program is free software; you can redistribute it and/or modify 777bbb2b0SAntti Palosaari * it under the terms of the GNU General Public License as published by 877bbb2b0SAntti Palosaari * the Free Software Foundation; either version 2 of the License, or 977bbb2b0SAntti Palosaari * (at your option) any later version. 1077bbb2b0SAntti Palosaari * 1177bbb2b0SAntti Palosaari * This program is distributed in the hope that it will be useful, 1277bbb2b0SAntti Palosaari * but WITHOUT ANY WARRANTY; without even the implied warranty of 1377bbb2b0SAntti Palosaari * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1477bbb2b0SAntti Palosaari * GNU General Public License for more details. 1577bbb2b0SAntti Palosaari * 1677bbb2b0SAntti Palosaari * You should have received a copy of the GNU General Public License along 1777bbb2b0SAntti Palosaari * with this program; if not, write to the Free Software Foundation, Inc., 1877bbb2b0SAntti Palosaari * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 1977bbb2b0SAntti Palosaari * 2077bbb2b0SAntti Palosaari * GNU Radio plugin "gr-kernel" for device usage will be on: 2177bbb2b0SAntti Palosaari * http://git.linuxtv.org/anttip/gr-kernel.git 2277bbb2b0SAntti Palosaari * 2377bbb2b0SAntti Palosaari */ 2477bbb2b0SAntti Palosaari 2577bbb2b0SAntti Palosaari #ifndef RTL2832_SDR_H 2677bbb2b0SAntti Palosaari #define RTL2832_SDR_H 2777bbb2b0SAntti Palosaari 2863bdab5dSAntti Palosaari #include <linux/i2c.h> 2977bbb2b0SAntti Palosaari #include <media/v4l2-subdev.h> 30*fada1935SMauro Carvalho Chehab #include <media/dvb_frontend.h> 3177bbb2b0SAntti Palosaari 32cecc5896SAntti Palosaari /** 33cecc5896SAntti Palosaari * struct rtl2832_sdr_platform_data - Platform data for the rtl2832_sdr driver 34cecc5896SAntti Palosaari * @clk: Clock frequency (4000000, 16000000, 25000000, 28800000). 35cecc5896SAntti Palosaari * @tuner: Used tuner model. 36b95b0c98SMauro Carvalho Chehab * @regmap: pointer to &struct regmap. 37cecc5896SAntti Palosaari * @dvb_frontend: rtl2832 DVB frontend. 38cecc5896SAntti Palosaari * @v4l2_subdev: Tuner v4l2 controls. 39cecc5896SAntti Palosaari * @dvb_usb_device: DVB USB interface for USB streaming. 4063bdab5dSAntti Palosaari */ 41cecc5896SAntti Palosaari struct rtl2832_sdr_platform_data { 42cecc5896SAntti Palosaari u32 clk; 4363bdab5dSAntti Palosaari /* 4463bdab5dSAntti Palosaari * XXX: This list must be kept sync with dvb_usb_rtl28xxu USB IF driver. 4563bdab5dSAntti Palosaari */ 46fc3a0497SAntti Palosaari #define RTL2832_SDR_TUNER_FC2580 0x21 4763bdab5dSAntti Palosaari #define RTL2832_SDR_TUNER_TUA9001 0x24 4863bdab5dSAntti Palosaari #define RTL2832_SDR_TUNER_FC0012 0x26 4963bdab5dSAntti Palosaari #define RTL2832_SDR_TUNER_E4000 0x27 5063bdab5dSAntti Palosaari #define RTL2832_SDR_TUNER_FC0013 0x29 5163bdab5dSAntti Palosaari #define RTL2832_SDR_TUNER_R820T 0x2a 5263bdab5dSAntti Palosaari #define RTL2832_SDR_TUNER_R828D 0x2b 5363bdab5dSAntti Palosaari u8 tuner; 5463bdab5dSAntti Palosaari 551cf79db2SPeter Rosin struct regmap *regmap; 5663bdab5dSAntti Palosaari struct dvb_frontend *dvb_frontend; 5763bdab5dSAntti Palosaari struct v4l2_subdev *v4l2_subdev; 5863bdab5dSAntti Palosaari struct dvb_usb_device *dvb_usb_device; 5963bdab5dSAntti Palosaari }; 6063bdab5dSAntti Palosaari 6177bbb2b0SAntti Palosaari #endif /* RTL2832_SDR_H */ 62