diff options
Diffstat (limited to 'drivers/media/dvb/ngene/ngene.h')
-rw-r--r-- | drivers/media/dvb/ngene/ngene.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/media/dvb/ngene/ngene.h b/drivers/media/dvb/ngene/ngene.h index 8fb4200f83f8..40fce9e3ae66 100644 --- a/drivers/media/dvb/ngene/ngene.h +++ b/drivers/media/dvb/ngene/ngene.h | |||
@@ -36,8 +36,11 @@ | |||
36 | #include "dmxdev.h" | 36 | #include "dmxdev.h" |
37 | #include "dvbdev.h" | 37 | #include "dvbdev.h" |
38 | #include "dvb_demux.h" | 38 | #include "dvb_demux.h" |
39 | #include "dvb_ca_en50221.h" | ||
39 | #include "dvb_frontend.h" | 40 | #include "dvb_frontend.h" |
40 | #include "dvb_ringbuffer.h" | 41 | #include "dvb_ringbuffer.h" |
42 | #include "dvb_net.h" | ||
43 | #include "cxd2099.h" | ||
41 | 44 | ||
42 | #define DEVICE_NAME "ngene" | 45 | #define DEVICE_NAME "ngene" |
43 | 46 | ||
@@ -636,14 +639,18 @@ struct ngene_channel { | |||
636 | int number; | 639 | int number; |
637 | int type; | 640 | int type; |
638 | int mode; | 641 | int mode; |
642 | bool has_adapter; | ||
643 | bool has_demux; | ||
639 | 644 | ||
640 | struct dvb_frontend *fe; | 645 | struct dvb_frontend *fe; |
641 | struct dmxdev dmxdev; | 646 | struct dmxdev dmxdev; |
642 | struct dvb_demux demux; | 647 | struct dvb_demux demux; |
648 | struct dvb_net dvbnet; | ||
643 | struct dmx_frontend hw_frontend; | 649 | struct dmx_frontend hw_frontend; |
644 | struct dmx_frontend mem_frontend; | 650 | struct dmx_frontend mem_frontend; |
645 | int users; | 651 | int users; |
646 | struct video_device *v4l_dev; | 652 | struct video_device *v4l_dev; |
653 | struct dvb_device *ci_dev; | ||
647 | struct tasklet_struct demux_tasklet; | 654 | struct tasklet_struct demux_tasklet; |
648 | 655 | ||
649 | struct SBufferHeader *nextBuffer; | 656 | struct SBufferHeader *nextBuffer; |
@@ -710,6 +717,15 @@ struct ngene_channel { | |||
710 | int running; | 717 | int running; |
711 | }; | 718 | }; |
712 | 719 | ||
720 | |||
721 | struct ngene_ci { | ||
722 | struct device device; | ||
723 | struct i2c_adapter i2c_adapter; | ||
724 | |||
725 | struct ngene *dev; | ||
726 | struct dvb_ca_en50221 *en; | ||
727 | }; | ||
728 | |||
713 | struct ngene; | 729 | struct ngene; |
714 | 730 | ||
715 | typedef void (rx_cb_t)(struct ngene *, u32, u8); | 731 | typedef void (rx_cb_t)(struct ngene *, u32, u8); |
@@ -774,6 +790,10 @@ struct ngene { | |||
774 | #define TSOUT_BUF_SIZE (512*188*8) | 790 | #define TSOUT_BUF_SIZE (512*188*8) |
775 | struct dvb_ringbuffer tsout_rbuf; | 791 | struct dvb_ringbuffer tsout_rbuf; |
776 | 792 | ||
793 | u8 *tsin_buf; | ||
794 | #define TSIN_BUF_SIZE (512*188*8) | ||
795 | struct dvb_ringbuffer tsin_rbuf; | ||
796 | |||
777 | u8 *ain_buf; | 797 | u8 *ain_buf; |
778 | #define AIN_BUF_SIZE (128*1024) | 798 | #define AIN_BUF_SIZE (128*1024) |
779 | struct dvb_ringbuffer ain_rbuf; | 799 | struct dvb_ringbuffer ain_rbuf; |
@@ -785,6 +805,8 @@ struct ngene { | |||
785 | 805 | ||
786 | unsigned long exp_val; | 806 | unsigned long exp_val; |
787 | int prev_cmd; | 807 | int prev_cmd; |
808 | |||
809 | struct ngene_ci ci; | ||
788 | }; | 810 | }; |
789 | 811 | ||
790 | struct ngene_info { | 812 | struct ngene_info { |
@@ -863,6 +885,7 @@ struct ngene_buffer { | |||
863 | int __devinit ngene_probe(struct pci_dev *pci_dev, | 885 | int __devinit ngene_probe(struct pci_dev *pci_dev, |
864 | const struct pci_device_id *id); | 886 | const struct pci_device_id *id); |
865 | void __devexit ngene_remove(struct pci_dev *pdev); | 887 | void __devexit ngene_remove(struct pci_dev *pdev); |
888 | void ngene_shutdown(struct pci_dev *pdev); | ||
866 | int ngene_command(struct ngene *dev, struct ngene_command *com); | 889 | int ngene_command(struct ngene *dev, struct ngene_command *com); |
867 | int ngene_command_gpio_set(struct ngene *dev, u8 select, u8 level); | 890 | int ngene_command_gpio_set(struct ngene *dev, u8 select, u8 level); |
868 | void set_transfer(struct ngene_channel *chan, int state); | 891 | void set_transfer(struct ngene_channel *chan, int state); |
@@ -872,6 +895,7 @@ void FillTSBuffer(void *Buffer, int Length, u32 Flags); | |||
872 | int ngene_i2c_init(struct ngene *dev, int dev_nr); | 895 | int ngene_i2c_init(struct ngene *dev, int dev_nr); |
873 | 896 | ||
874 | /* Provided by ngene-dvb.c */ | 897 | /* Provided by ngene-dvb.c */ |
898 | extern struct dvb_device ngene_dvbdev_ci; | ||
875 | void *tsout_exchange(void *priv, void *buf, u32 len, u32 clock, u32 flags); | 899 | void *tsout_exchange(void *priv, void *buf, u32 len, u32 clock, u32 flags); |
876 | void *tsin_exchange(void *priv, void *buf, u32 len, u32 clock, u32 flags); | 900 | void *tsin_exchange(void *priv, void *buf, u32 len, u32 clock, u32 flags); |
877 | int ngene_start_feed(struct dvb_demux_feed *dvbdmxfeed); | 901 | int ngene_start_feed(struct dvb_demux_feed *dvbdmxfeed); |