Skip to contentSkip to conversation

split dvb-usb-friio into parts

PATCH New [email protected] 1 participant 3 messages Jan 16, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

v2 cover split dvb-usb-friio into parts

From: Akihiro Tsukada <[email protected]>

This patch series decomposes the friio driver which was monolithic into adapter,demod,tuner modules.

Changes in v2:
- dvb-usbv2-gl861: adapt to i2c template patch v3, fe_i2c_client was moved from dvb_frontend* to priv

Akihiro Tsukada (2):
dvb: tua6034: add a new driver for Infineon tua6034 tuner
dvb-usb-friio: split and merge into dvb-usbv2-gl861

 drivers/media/tuners/Kconfig               |   7 +
 drivers/media/tuners/Makefile              |   1 +
 drivers/media/tuners/tua6034.c             | 464 +++++++++++++++++++++++++
 drivers/media/tuners/tua6034.h             | 113 +++++++
 drivers/media/usb/dvb-usb-v2/Kconfig       |   5 +-
 drivers/media/usb/dvb-usb-v2/Makefile      |   2 +-
 drivers/media/usb/dvb-usb-v2/gl861-friio.c | 320 ++++++++++++++++++
 drivers/media/usb/dvb-usb-v2/gl861.c       | 125 ++++++-
 drivers/media/usb/dvb-usb-v2/gl861.h       |  11 +
 drivers/media/usb/dvb-usb/Kconfig          |   6 -
 drivers/media/usb/dvb-usb/Makefile         |   3 -
 drivers/media/usb/dvb-usb/friio-fe.c       | 472 --------------------------
 drivers/media/usb/dvb-usb/friio.c          | 522 -----------------------------
 drivers/media/usb/dvb-usb/friio.h          |  99 ------
 14 files changed, 1032 insertions(+), 1118 deletions(-)
 create mode 100644 drivers/media/tuners/tua6034.c
 create mode 100644 drivers/media/tuners/tua6034.h
 create mode 100644 drivers/media/usb/dvb-usb-v2/gl861-friio.c
 delete mode 100644 drivers/media/usb/dvb-usb/friio-fe.c
 delete mode 100644 drivers/media/usb/dvb-usb/friio.c
 delete mode 100644 drivers/media/usb/dvb-usb/friio.h
Signature · 1 line
2.2.2
#1 lore raw

PATCH v2 1/2 dvb: tua6034: add a new driver for Infineon tua6034 tuner

From: Akihiro Tsukada <[email protected]>

this 3-band tuner is used in Friio (dvb-usb-friio), and it was buried in friio-fe.c.

---
 drivers/media/tuners/Kconfig   |   7 +
 drivers/media/tuners/Makefile  |   1 +
 drivers/media/tuners/tua6034.c | 464 +++++++++++++++++++++++++++++++++++++++++
 drivers/media/tuners/tua6034.h | 113 ++++++++++
 4 files changed, 585 insertions(+)
 create mode 100644 drivers/media/tuners/tua6034.c
 create mode 100644 drivers/media/tuners/tua6034.h
drivers/media/tuners/Kconfig +7 -0
index 42e5a01..6c15d28 100644
@@ -282,4 +282,11 @@ config MEDIA_TUNER_QM1D1C0042
 	default m if !MEDIA_SUBDRV_AUTOSELECT
 	help
 	  Sharp QM1D1C0042 trellis coded 8PSK tuner driver.
+
+config MEDIA_TUNER_TUA6034
+	tristate "Infineon TUA6034 tuner"
+	depends on MEDIA_SUPPORT && I2C
+	default m if !MEDIA_SUBDRV_AUTOSELECT
+	help
+	  Infineon TUA6034 3-band ditigal TV tuner driver.
 endmenu
drivers/media/tuners/Makefile +1 -0
index da4fe6e..8c95c08 100644
@@ -42,6 +42,7 @@ obj-$(CONFIG_MEDIA_TUNER_R820T) += r820t.o
 obj-$(CONFIG_MEDIA_TUNER_MXL301RF) += mxl301rf.o
 obj-$(CONFIG_MEDIA_TUNER_QM1D1C0042) += qm1d1c0042.o
 obj-$(CONFIG_MEDIA_TUNER_M88RS6000T) += m88rs6000t.o
+obj-$(CONFIG_MEDIA_TUNER_TUA6034) += tua6034.o
 
 ccflags-y += -I$(srctree)/drivers/media/dvb-core
 ccflags-y += -I$(srctree)/drivers/media/dvb-frontends
drivers/media/tuners/tua6034.c new file +464 -0

464 lines not on this page · raw message

drivers/media/tuners/tua6034.h new file +113 -0

113 lines not on this page · raw message

Signature · 1 line
2.2.2
#2 lore raw

PATCH v2 2/2 dvb-usb-friio: split and merge into dvb-usbv2-gl861

In reply to [email protected]

From: Akihiro Tsukada <[email protected]>

A Friio device consists of a GL861 adapter/bridge chip, a TC90522 demod chip and a TUA6034 tuner chip, but the friio driver was implemented as one combined driver. This patch separates off the each chip drivers and re-uses the existing modules: dvb-usbv2-gl861,tc90522.

It also adds some modifications to gl861,
to support the black-boxed init/config of friio devices and implement an usb vendor request that is used for relay'ed i2c communications to a tuner via a demod.

---
 drivers/media/usb/dvb-usb-v2/Kconfig       |   5 +-
 drivers/media/usb/dvb-usb-v2/Makefile      |   2 +-
 drivers/media/usb/dvb-usb-v2/gl861-friio.c | 320 ++++++++++++++++++
 drivers/media/usb/dvb-usb-v2/gl861.c       | 125 ++++++-
 drivers/media/usb/dvb-usb-v2/gl861.h       |  11 +
 drivers/media/usb/dvb-usb/Kconfig          |   6 -
 drivers/media/usb/dvb-usb/Makefile         |   3 -
 drivers/media/usb/dvb-usb/friio-fe.c       | 472 --------------------------
 drivers/media/usb/dvb-usb/friio.c          | 522 -----------------------------
 drivers/media/usb/dvb-usb/friio.h          |  99 ------
 10 files changed, 447 insertions(+), 1118 deletions(-)
 create mode 100644 drivers/media/usb/dvb-usb-v2/gl861-friio.c
 delete mode 100644 drivers/media/usb/dvb-usb/friio-fe.c
 delete mode 100644 drivers/media/usb/dvb-usb/friio.c
 delete mode 100644 drivers/media/usb/dvb-usb/friio.h
drivers/media/usb/dvb-usb-v2/Kconfig +4 -1
index 7423033..79694d3 100644
@@ -95,10 +95,13 @@ config DVB_USB_GL861
 	tristate "Genesys Logic GL861 USB2.0 support"
 	depends on DVB_USB_V2
 	select DVB_ZL10353 if MEDIA_SUBDRV_AUTOSELECT
+	select DVB_TC90522 if MEDIA_SUBDRV_AUTOSELECT
 	select MEDIA_TUNER_QT1010 if MEDIA_SUBDRV_AUTOSELECT
+	select MEDIA_TUNER_TUA6034 if MEDIA_SUBDRV_AUTOSELECT
 	help
 	  Say Y here to support the MSI Megasky 580 (55801) DVB-T USB2.0
-	  receiver with USB ID 0db0:5581.
+	  receiver with USB ID 0db0:5581, or 774 Friio White ISDB-T
+	  USB2.0 receiver with USB ID 7a69:0001.
 
 config DVB_USB_LME2510
 	tristate "LME DM04/QQBOX DVB-S USB2.0 support"
drivers/media/usb/dvb-usb-v2/Makefile +1 -1
index f10d4df..70c0c9f 100644
@@ -25,7 +25,7 @@ obj-$(CONFIG_DVB_USB_EC168) += dvb-usb-ec168.o
 dvb-usb-lmedm04-objs := lmedm04.o
 obj-$(CONFIG_DVB_USB_LME2510) += dvb-usb-lmedm04.o
 
-dvb-usb-gl861-objs := gl861.o
+dvb-usb-gl861-objs := gl861.o gl861-friio.o
 obj-$(CONFIG_DVB_USB_GL861) += dvb-usb-gl861.o
 
 dvb-usb-mxl111sf-objs += mxl111sf.o mxl111sf-phy.o mxl111sf-i2c.o
drivers/media/usb/dvb-usb-v2/gl861-friio.c new file +320 -0

320 lines not on this page · raw message

drivers/media/usb/dvb-usb-v2/gl861.c +111 -14

164 lines not on this page · raw message

drivers/media/usb/dvb-usb-v2/gl861.h +11 -0
index b0b80d8..fc02840 100644
@@ -8,5 +8,16 @@
 
 #define GL861_REQ_I2C_WRITE	0x01
 #define GL861_REQ_I2C_READ	0x02
+#define GL861_REQ_I2C_RAW	0x03
 
+extern short gl861_adapter_nr[];
+extern struct i2c_algorithm gl861_i2c_algo;
+
+extern struct dvb_usb_device_properties friio_props;
+
+int gl861_i2c_rawread(struct dvb_usb_device *d, u8 addr, u8 *rbuf, u16 rlen);
+int gl861_i2c_rawwrite(struct dvb_usb_device *d, u8 addr, u8 *wbuf, u16 wlen);
+int gl861_i2c_relay_write(struct dvb_usb_device *d, struct i2c_msg *msg);
+int gl861_i2c_msg(struct dvb_usb_device *d, u8 addr,
+		  u8 *wbuf, u16 wlen, u8 *rbuf, u16 rlen);
 #endif
drivers/media/usb/dvb-usb/Kconfig +0 -6
index 41d3eb9..46f7967 100644
@@ -299,12 +299,6 @@ config DVB_USB_DTV5100
 	help
 	  Say Y here to support the AME DTV-5100 USB2.0 DVB-T receiver.
 
-config DVB_USB_FRIIO
-	tristate "Friio ISDB-T USB2.0 Receiver support"
-	depends on DVB_USB
-	help
-	  Say Y here to support the Japanese DTV receiver Friio.
-
 config DVB_USB_AZ6027
 	tristate "Azurewave DVB-S/S2 USB2.0 AZ6027 support"
 	depends on DVB_USB
drivers/media/usb/dvb-usb/Makefile +0 -3
index acdd1ef..98b1036 100644
@@ -67,9 +67,6 @@ obj-$(CONFIG_DVB_USB_DTV5100) += dvb-usb-dtv5100.o
 dvb-usb-cinergyT2-objs := cinergyT2-core.o cinergyT2-fe.o
 obj-$(CONFIG_DVB_USB_CINERGY_T2) += dvb-usb-cinergyT2.o
 
-dvb-usb-friio-objs := friio.o friio-fe.o
-obj-$(CONFIG_DVB_USB_FRIIO) += dvb-usb-friio.o
-
 dvb-usb-az6027-objs := az6027.o
 obj-$(CONFIG_DVB_USB_AZ6027) += dvb-usb-az6027.o
 
drivers/media/usb/dvb-usb/friio-fe.c deleted +0 -472

472 lines not on this page · raw message

drivers/media/usb/dvb-usb/friio.c deleted +0 -522

522 lines not on this page · raw message

drivers/media/usb/dvb-usb/friio.h deleted +0 -99

99 lines not on this page · raw message

Signature · 1 line
2.2.2