summaryrefslogtreecommitdiffstats
path: root/kernel/drivers/media/dvb-frontends/tda10071.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/drivers/media/dvb-frontends/tda10071.h')
-rw-r--r--kernel/drivers/media/dvb-frontends/tda10071.h70
1 files changed, 19 insertions, 51 deletions
diff --git a/kernel/drivers/media/dvb-frontends/tda10071.h b/kernel/drivers/media/dvb-frontends/tda10071.h
index da89f4249..8f184026e 100644
--- a/kernel/drivers/media/dvb-frontends/tda10071.h
+++ b/kernel/drivers/media/dvb-frontends/tda10071.h
@@ -21,67 +21,35 @@
#ifndef TDA10071_H
#define TDA10071_H
-#include <linux/kconfig.h>
#include <linux/dvb/frontend.h>
-struct tda10071_config {
- /* Demodulator I2C address.
- * Default: none, must set
- * Values: 0x55,
- */
- u8 demod_i2c_addr;
+/*
+ * I2C address
+ * 0x05, 0x55,
+ */
- /* Tuner I2C address.
- * Default: none, must set
- * Values: 0x14, 0x54, ...
- */
- u8 tuner_i2c_addr;
+/**
+ * struct tda10071_platform_data - Platform data for the tda10071 driver
+ * @clk: Clock frequency.
+ * @i2c_wr_max: Max bytes I2C adapter can write at once.
+ * @ts_mode: TS mode.
+ * @spec_inv: Input spectrum inversion.
+ * @pll_multiplier: PLL multiplier.
+ * @tuner_i2c_addr: CX24118A tuner I2C address (0x14, 0x54, ...).
+ * @get_dvb_frontend: Get DVB frontend.
+ */
- /* Max bytes I2C provider can write at once.
- * Note: Buffer is taken from the stack currently!
- * Default: none, must set
- * Values:
- */
+struct tda10071_platform_data {
+ u32 clk;
u16 i2c_wr_max;
-
- /* TS output mode.
- * Default: TDA10071_TS_SERIAL
- * Values:
- */
#define TDA10071_TS_SERIAL 0
#define TDA10071_TS_PARALLEL 1
u8 ts_mode;
-
- /* Input spectrum inversion.
- * Default: 0
- * Values: 0, 1
- */
bool spec_inv;
-
- /* Xtal frequency Hz
- * Default: none, must set
- * Values:
- */
- u32 xtal;
-
- /* PLL multiplier.
- * Default: none, must set
- * Values:
- */
u8 pll_multiplier;
-};
-
+ u8 tuner_i2c_addr;
-#if IS_REACHABLE(CONFIG_DVB_TDA10071)
-extern struct dvb_frontend *tda10071_attach(
- const struct tda10071_config *config, struct i2c_adapter *i2c);
-#else
-static inline struct dvb_frontend *tda10071_attach(
- const struct tda10071_config *config, struct i2c_adapter *i2c)
-{
- dev_warn(&i2c->dev, "%s: driver disabled by Kconfig\n", __func__);
- return NULL;
-}
-#endif
+ struct dvb_frontend* (*get_dvb_frontend)(struct i2c_client *);
+};
#endif /* TDA10071_H */