summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb-frontends/tc90522.h
diff options
context:
space:
mode:
authorAkihiro Tsukada <tskd08@gmail.com>2014-09-08 14:20:42 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-09-23 17:04:00 -0300
commitf5d82a75e666a6cc66453285cb3ce28c5d02397a (patch)
treeb8f5b7747fd9de9e8407c83acf3b075399d0477a /drivers/media/dvb-frontends/tc90522.h
parent7608f575b81599ba8e73c27b7ca1fa3993dee585 (diff)
downloadop-kernel-dev-f5d82a75e666a6cc66453285cb3ce28c5d02397a.zip
op-kernel-dev-f5d82a75e666a6cc66453285cb3ce28c5d02397a.tar.gz
[media] tc90522: add driver for Toshiba TC90522 quad demodulator
This patch adds driver for tc90522 demodulator chips. The chip contains 4 demod modules that run in parallel and are independently controllable via separate I2C addresses. Two of the modules are for ISDB-T and the rest for ISDB-S. It is used in earthsoft pt3 cards. Note that this driver does not init the chip, because the initilization sequence / register setting is not disclosed. Thus, the driver assumes that the chips are initilized externally by its parent board driver before fe->ops->init() are called. Earthsoft PT3 PCIe card, for example, contains the init sequence in its private memory and provides a command to trigger the sequence. Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/dvb-frontends/tc90522.h')
-rw-r--r--drivers/media/dvb-frontends/tc90522.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/tc90522.h b/drivers/media/dvb-frontends/tc90522.h
new file mode 100644
index 0000000..b1cbddf
--- /dev/null
+++ b/drivers/media/dvb-frontends/tc90522.h
@@ -0,0 +1,42 @@
+/*
+ * Toshiba TC90522 Demodulator
+ *
+ * Copyright (C) 2014 Akihiro Tsukada <tskd08@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation version 2.
+ *
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+
+/*
+ * The demod has 4 input (2xISDB-T and 2xISDB-S),
+ * and provides independent sub modules for each input.
+ * As the sub modules work in parallel and have the separate i2c addr's,
+ * this driver treats each sub module as one demod device.
+ */
+
+#ifndef TC90522_H
+#define TC90522_H
+
+#include <linux/i2c.h>
+#include "dvb_frontend.h"
+
+/* I2C device types */
+#define TC90522_I2C_DEV_SAT "tc90522sat"
+#define TC90522_I2C_DEV_TER "tc90522ter"
+
+struct tc90522_config {
+ /* [OUT] frontend returned by driver */
+ struct dvb_frontend *fe;
+
+ /* [OUT] tuner I2C adapter returned by driver */
+ struct i2c_adapter *tuner_i2c;
+};
+
+#endif /* TC90522_H */
OpenPOWER on IntegriCloud