/linux-4.4.14/drivers/media/usb/cx231xx/ |
H A D | Makefile | 0 cx231xx-y += cx231xx-video.o cx231xx-i2c.o cx231xx-cards.o cx231xx-core.o 2 cx231xx-y += cx231xx-avcore.o cx231xx-417.o cx231xx-pcb-cfg.o cx231xx-vbi.o 3 cx231xx-$(CONFIG_VIDEO_CX231XX_RC) += cx231xx-input.o 5 cx231xx-alsa-objs := cx231xx-audio.o 7 obj-$(CONFIG_VIDEO_CX231XX) += cx231xx.o 8 obj-$(CONFIG_VIDEO_CX231XX_ALSA) += cx231xx-alsa.o 9 obj-$(CONFIG_VIDEO_CX231XX_DVB) += cx231xx-dvb.o
|
H A D | cx231xx.h | 2 cx231xx.h - driver for Conexant Cx23100/101/102 USB video capture devices 43 #include "cx231xx-reg.h" 44 #include "cx231xx-pcb-cfg.h" 45 #include "cx231xx-conf-reg.h" 47 #define DRIVER_NAME "cx231xx" 97 /* maximum number of cx231xx boards */ 155 struct cx231xx; 188 int (*isoc_copy) (struct cx231xx *dev, struct urb *urb); 222 int (*bulk_copy) (struct cx231xx *dev, struct urb *urb); 300 /* cx231xx has two audio inputs: tuner and line in */ 302 /* This is the only entry for cx231xx tuner input */ 303 CX231XX_AMUX_VIDEO, /* cx231xx tuner */ 411 /* cx231xx extensions */ 437 struct cx231xx; 441 struct cx231xx *dev; 472 struct cx231xx *dev; 539 struct cx231xx *dev; 589 struct cx231xx { struct 681 int (*cx231xx_read_ctrl_reg) (struct cx231xx *dev, u8 req, u16 reg, 683 int (*cx231xx_write_ctrl_reg) (struct cx231xx *dev, u8 req, u16 reg, 687 int (*cx231xx_gpio_i2c_read) (struct cx231xx *dev, u8 dev_addr, 689 int (*cx231xx_gpio_i2c_write) (struct cx231xx *dev, u8 dev_addr, 692 int (*cx231xx_set_analog_freq) (struct cx231xx *dev, u32 freq); 693 int (*cx231xx_reset_analog_tuner) (struct cx231xx *dev); 739 #define cx25840_call(cx231xx, o, f, args...) \ 740 v4l2_subdev_call(cx231xx->sd_cx25840, o, f, ##args) 741 #define tuner_call(cx231xx, o, f, args...) \ 742 v4l2_subdev_call(cx231xx->sd_tuner, o, f, ##args) 750 int (*init) (struct cx231xx *); 751 int (*fini) (struct cx231xx *); 755 int cx231xx_set_analog_freq(struct cx231xx *dev, u32 freq); 756 int cx231xx_reset_analog_tuner(struct cx231xx *dev); 758 /* Provided by cx231xx-i2c.c */ 759 void cx231xx_do_i2c_scan(struct cx231xx *dev, int i2c_port); 762 int cx231xx_i2c_mux_register(struct cx231xx *dev, int mux_no); 763 void cx231xx_i2c_mux_unregister(struct cx231xx *dev, int mux_no); 764 struct i2c_adapter *cx231xx_get_i2c_adap(struct cx231xx *dev, int i2c_port); 767 int cx231xx_read_i2c_master(struct cx231xx *dev, u8 dev_addr, u16 saddr, 769 int cx231xx_write_i2c_master(struct cx231xx *dev, u8 dev_addr, u16 saddr, 771 int cx231xx_read_i2c_data(struct cx231xx *dev, u8 dev_addr, 773 int cx231xx_write_i2c_data(struct cx231xx *dev, u8 dev_addr, 775 int cx231xx_reg_mask_write(struct cx231xx *dev, u8 dev_addr, u8 size, 778 int cx231xx_read_modify_write_i2c_dword(struct cx231xx *dev, u8 dev_addr, 783 void initGPIO(struct cx231xx *dev); 784 void uninitGPIO(struct cx231xx *dev); 786 int cx231xx_afe_init_super_block(struct cx231xx *dev, u32 ref_count); 787 int cx231xx_afe_init_channels(struct cx231xx *dev); 788 int cx231xx_afe_setup_AFE_for_baseband(struct cx231xx *dev); 789 int cx231xx_afe_set_input_mux(struct cx231xx *dev, u32 input_mux); 790 int cx231xx_afe_set_mode(struct cx231xx *dev, enum AFE_MODE mode); 791 int cx231xx_afe_update_power_control(struct cx231xx *dev, 793 int cx231xx_afe_adjust_ref_count(struct cx231xx *dev, u32 video_input); 796 int cx231xx_i2s_blk_initialize(struct cx231xx *dev); 797 int cx231xx_i2s_blk_update_power_control(struct cx231xx *dev, 799 int cx231xx_i2s_blk_set_audio_input(struct cx231xx *dev, u8 audio_input); 802 int cx231xx_dif_configure_C2HH_for_low_IF(struct cx231xx *dev, u32 mode, 804 void cx231xx_set_Colibri_For_LowIF(struct cx231xx *dev, u32 if_freq, 807 void cx231xx_set_DIF_bandpass(struct cx231xx *dev, u32 if_freq, 809 void cx231xx_Setup_AFE_for_LowIF(struct cx231xx *dev); 810 void reset_s5h1432_demod(struct cx231xx *dev); 811 void cx231xx_dump_HH_reg(struct cx231xx *dev); 812 void update_HH_register_after_set_DIF(struct cx231xx *dev); 816 int cx231xx_dif_set_standard(struct cx231xx *dev, u32 standard); 817 int cx231xx_tuner_pre_channel_change(struct cx231xx *dev); 818 int cx231xx_tuner_post_channel_change(struct cx231xx *dev); 825 int cx231xx_do_copy(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, 827 void cx231xx_reset_video_buffer(struct cx231xx *dev, 829 u8 cx231xx_is_buffer_done(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q); 830 u32 cx231xx_copy_video_line(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, 832 u32 cx231xx_get_video_line(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, 836 /* Provided by cx231xx-core.c */ 838 u32 cx231xx_request_buffers(struct cx231xx *dev, u32 count); 839 void cx231xx_queue_unusedframes(struct cx231xx *dev); 840 void cx231xx_release_buffers(struct cx231xx *dev); 843 int cx231xx_read_ctrl_reg(struct cx231xx *dev, u8 req, u16 reg, 847 int cx231xx_write_ctrl_reg(struct cx231xx *dev, u8 req, u16 reg, 849 int cx231xx_mode_register(struct cx231xx *dev, u16 address, u32 mode); 851 int cx231xx_send_vendor_cmd(struct cx231xx *dev, 857 int cx231xx_send_gpio_cmd(struct cx231xx *dev, u32 gpio_bit, u8 *gpio_val, 859 int cx231xx_set_gpio_value(struct cx231xx *dev, int pin_number, int pin_value); 860 int cx231xx_set_gpio_direction(struct cx231xx *dev, int pin_number, 863 int cx231xx_gpio_i2c_start(struct cx231xx *dev); 864 int cx231xx_gpio_i2c_end(struct cx231xx *dev); 865 int cx231xx_gpio_i2c_write_byte(struct cx231xx *dev, u8 data); 866 int cx231xx_gpio_i2c_read_byte(struct cx231xx *dev, u8 *buf); 867 int cx231xx_gpio_i2c_read_ack(struct cx231xx *dev); 868 int cx231xx_gpio_i2c_write_ack(struct cx231xx *dev); 869 int cx231xx_gpio_i2c_write_nak(struct cx231xx *dev); 871 int cx231xx_gpio_i2c_read(struct cx231xx *dev, u8 dev_addr, u8 *buf, u8 len); 872 int cx231xx_gpio_i2c_write(struct cx231xx *dev, u8 dev_addr, u8 *buf, u8 len); 875 int cx231xx_set_audio_decoder_input(struct cx231xx *dev, 878 int cx231xx_capture_start(struct cx231xx *dev, int start, u8 media_type); 879 int cx231xx_set_video_alternate(struct cx231xx *dev); 880 int cx231xx_set_alt_setting(struct cx231xx *dev, u8 index, u8 alt); 881 int is_fw_load(struct cx231xx *dev); 882 int cx231xx_check_fw(struct cx231xx *dev); 883 int cx231xx_init_isoc(struct cx231xx *dev, int max_packets, 885 int (*isoc_copy) (struct cx231xx *dev, 887 int cx231xx_init_bulk(struct cx231xx *dev, int max_packets, 889 int (*bulk_copy) (struct cx231xx *dev, 891 void cx231xx_stop_TS1(struct cx231xx *dev); 892 void cx231xx_start_TS1(struct cx231xx *dev); 893 void cx231xx_uninit_isoc(struct cx231xx *dev); 894 void cx231xx_uninit_bulk(struct cx231xx *dev); 895 int cx231xx_set_mode(struct cx231xx *dev, enum cx231xx_mode set_mode); 896 int cx231xx_unmute_audio(struct cx231xx *dev); 897 int cx231xx_ep5_bulkout(struct cx231xx *dev, u8 *firmware, u16 size); 898 void cx231xx_disable656(struct cx231xx *dev); 899 void cx231xx_enable656(struct cx231xx *dev); 900 int cx231xx_demod_reset(struct cx231xx *dev); 901 int cx231xx_gpio_set(struct cx231xx *dev, struct cx231xx_reg_seq *gpio); 904 void cx231xx_release_resources(struct cx231xx *dev); 905 void cx231xx_release_analog_resources(struct cx231xx *dev); 906 int cx231xx_register_analog_devices(struct cx231xx *dev); 907 void cx231xx_remove_from_devlist(struct cx231xx *dev); 908 void cx231xx_add_into_devlist(struct cx231xx *dev); 909 void cx231xx_init_extension(struct cx231xx *dev); 910 void cx231xx_close_extension(struct cx231xx *dev); 913 int cx231xx_dev_init(struct cx231xx *dev); 914 void cx231xx_dev_uninit(struct cx231xx *dev); 915 void cx231xx_config_i2c(struct cx231xx *dev); 916 int cx231xx_config(struct cx231xx *dev); 919 int cx231xx_start_stream(struct cx231xx *dev, u32 ep_mask); 920 int cx231xx_stop_stream(struct cx231xx *dev, u32 ep_mask); 922 int cx231xx_initialize_stream_xfer(struct cx231xx *dev, u32 media_type); 925 int cx231xx_set_power_mode(struct cx231xx *dev, enum AV_MODE mode); 926 int cx231xx_power_suspend(struct cx231xx *dev); 929 int cx231xx_init_ctrl_pin_status(struct cx231xx *dev); 930 int cx231xx_set_agc_analog_digital_mux_select(struct cx231xx *dev, 932 int cx231xx_enable_i2c_port_3(struct cx231xx *dev, bool is_port_3); 935 void video_mux(struct cx231xx *dev, int index); 936 int cx231xx_set_video_input_mux(struct cx231xx *dev, u8 input); 937 int cx231xx_set_decoder_video_input(struct cx231xx *dev, u8 pin_type, u8 input); 938 int cx231xx_do_mode_ctrl_overrides(struct cx231xx *dev); 939 int cx231xx_set_audio_input(struct cx231xx *dev, u8 input); 941 /* Provided by cx231xx-video.c */ 944 void cx231xx_init_extension(struct cx231xx *dev); 945 void cx231xx_close_extension(struct cx231xx *dev); 964 /* Provided by cx231xx-cards.c */ 965 extern void cx231xx_pre_card_setup(struct cx231xx *dev); 966 extern void cx231xx_card_setup(struct cx231xx *dev); 973 extern int cx231xx_417_register(struct cx231xx *dev); 974 extern void cx231xx_417_unregister(struct cx231xx *dev); 979 int cx231xx_ir_init(struct cx231xx *dev); 980 void cx231xx_ir_exit(struct cx231xx *dev); 982 static inline int cx231xx_ir_init(struct cx231xx *dev) cx231xx_ir_init() 986 static inline void cx231xx_ir_exit(struct cx231xx *dev) {} cx231xx_ir_exit() 989 static inline unsigned int norm_maxw(struct cx231xx *dev) norm_maxw() 997 static inline unsigned int norm_maxh(struct cx231xx *dev) norm_maxh()
|
H A D | cx231xx-vbi.h | 42 int cx231xx_init_vbi_isoc(struct cx231xx *dev, int max_packets, 44 int (*bulk_copy) (struct cx231xx *dev, 47 void cx231xx_uninit_vbi_isoc(struct cx231xx *dev); 50 u32 cx231xx_get_vbi_line(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, 53 u32 cx231xx_copy_vbi_line(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, 56 void cx231xx_reset_vbi_buffer(struct cx231xx *dev, 59 int cx231xx_do_vbi_copy(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, 62 u8 cx231xx_is_vbi_buffer_done(struct cx231xx *dev,
|
H A D | cx231xx-input.c | 2 * cx231xx IR glue driver 6 * Polaris (cx231xx) has its support for IR's with a design close to MCE. 21 #include "cx231xx.h" 25 #define MODULE_NAME "cx231xx-input" 60 int cx231xx_ir_init(struct cx231xx *dev) cx231xx_ir_init() 94 dev->init_data.rc_dev->driver_name = "cx231xx"; cx231xx_ir_init() 108 void cx231xx_ir_exit(struct cx231xx *dev) cx231xx_ir_exit()
|
H A D | cx231xx-video.c | 2 cx231xx-video.c - driver for Conexant Cx23100/101/102 25 #include "cx231xx.h" 44 #include "cx231xx-vbi.h" 49 #define DRIVER_DESC "Conexant cx231xx based USB video device driver" 103 static int cx231xx_enable_analog_tuner(struct cx231xx *dev) cx231xx_enable_analog_tuner() 179 static inline void buffer_filled(struct cx231xx *dev, buffer_filled() 198 static inline void print_err_status(struct cx231xx *dev, int packet, int status) print_err_status() 244 struct cx231xx *dev = container_of(vmode, struct cx231xx, video_mode); get_next_buf() 276 static inline int cx231xx_isoc_copy(struct cx231xx *dev, struct urb *urb) cx231xx_isoc_copy() 373 static inline int cx231xx_bulk_copy(struct cx231xx *dev, struct urb *urb) cx231xx_bulk_copy() 511 u32 cx231xx_get_video_line(struct cx231xx *dev, cx231xx_get_video_line() 556 u32 cx231xx_copy_video_line(struct cx231xx *dev, cx231xx_copy_video_line() 621 void cx231xx_reset_video_buffer(struct cx231xx *dev, cx231xx_reset_video_buffer() 653 int cx231xx_do_copy(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, cx231xx_do_copy() 710 u8 cx231xx_is_buffer_done(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q) cx231xx_is_buffer_done() 730 struct cx231xx *dev = fh->dev; buffer_setup() 749 struct cx231xx *dev = fh->dev; free_buffer() 784 struct cx231xx *dev = fh->dev; buffer_prepare() 843 struct cx231xx *dev = fh->dev; buffer_queue() 857 struct cx231xx *dev = (struct cx231xx *)fh->dev; buffer_release() 859 cx231xx_isocdbg("cx231xx: called buffer_release\n"); buffer_release() 873 void video_mux(struct cx231xx *dev, int index) video_mux() 893 struct cx231xx *dev = fh->dev; res_get() 923 struct cx231xx *dev = fh->dev; res_free() 933 static int check_dev(struct cx231xx *dev) check_dev() 950 struct cx231xx *dev = fh->dev; vidioc_g_fmt_vid_cap() 979 struct cx231xx *dev = fh->dev; vidioc_try_fmt_vid_cap() 1012 struct cx231xx *dev = fh->dev; vidioc_s_fmt_vid_cap() 1055 struct cx231xx *dev = fh->dev; vidioc_g_std() 1064 struct cx231xx *dev = fh->dev; vidioc_s_std() 1115 struct cx231xx *dev = fh->dev; cx231xx_enum_input() 1155 struct cx231xx *dev = fh->dev; cx231xx_g_input() 1165 struct cx231xx *dev = fh->dev; cx231xx_s_input() 1194 struct cx231xx *dev = fh->dev; cx231xx_g_tuner() 1218 struct cx231xx *dev = fh->dev; cx231xx_s_tuner() 1237 struct cx231xx *dev = fh->dev; cx231xx_g_frequency() 1251 struct cx231xx *dev = fh->dev; cx231xx_s_frequency() 1339 struct cx231xx *dev = fh->dev; cx231xx_g_register() 1398 struct cx231xx *dev = fh->dev; cx231xx_s_register() 1403 case 0: /* cx231xx internal registers */ cx231xx_s_register() 1446 struct cx231xx *dev = fh->dev; vidioc_cropcap() 1466 struct cx231xx *dev = fh->dev; vidioc_streamon() 1487 struct cx231xx *dev = fh->dev; vidioc_streamoff() 1510 struct cx231xx *dev = fh->dev; cx231xx_querycap() 1512 strlcpy(cap->driver, "cx231xx", sizeof(cap->driver)); cx231xx_querycap() 1554 struct cx231xx *dev = fh->dev; vidioc_g_fmt_vbi_cap() 1577 struct cx231xx *dev = fh->dev; vidioc_try_fmt_vbi_cap() 1601 struct cx231xx *dev = fh->dev; vidioc_s_fmt_vbi_cap() 1615 struct cx231xx *dev = fh->dev; vidioc_reqbufs() 1628 struct cx231xx *dev = fh->dev; vidioc_querybuf() 1641 struct cx231xx *dev = fh->dev; vidioc_qbuf() 1654 struct cx231xx *dev = fh->dev; vidioc_dqbuf() 1670 struct cx231xx *dev = ((struct cx231xx_fh *)priv)->dev; radio_g_tuner() 1683 struct cx231xx *dev = ((struct cx231xx_fh *)priv)->dev; radio_s_tuner() 1701 struct cx231xx *dev = video_drvdata(filp); cx231xx_v4l2_open() 1803 void cx231xx_release_analog_resources(struct cx231xx *dev) cx231xx_release_analog_resources() 1836 struct cx231xx *dev = fh->dev; cx231xx_close() 1919 struct cx231xx *dev = fh->dev; cx231xx_v4l2_close() 1937 struct cx231xx *dev = fh->dev; cx231xx_v4l2_read() 1969 struct cx231xx *dev = fh->dev; cx231xx_v4l2_poll() 2006 struct cx231xx *dev = fh->dev; cx231xx_v4l2_mmap() 2108 .name = "cx231xx-radio", 2115 static void cx231xx_vdev_init(struct cx231xx *dev, cx231xx_vdev_init() 2136 int cx231xx_register_analog_devices(struct cx231xx *dev) cx231xx_register_analog_devices() 2199 strcpy(cx231xx_vbi_template.name, "cx231xx-vbi"); cx231xx_register_analog_devices()
|
H A D | cx231xx-i2c.c | 2 cx231xx-i2c.c - driver for Conexant Cx23100/101/102 USB video capture devices 23 #include "cx231xx.h" 57 static inline int get_real_i2c_port(struct cx231xx *dev, int bus_nr) get_real_i2c_port() 64 static inline bool is_tuner(struct cx231xx *dev, struct cx231xx_i2c *bus, is_tuner() 88 struct cx231xx *dev = bus->dev; cx231xx_i2c_send_bytes() 199 struct cx231xx *dev = bus->dev; cx231xx_i2c_recv_bytes() 286 struct cx231xx *dev = bus->dev; cx231xx_i2c_recv_bytes_with_saddr() 349 struct cx231xx *dev = bus->dev; cx231xx_i2c_check_for_device() 376 struct cx231xx *dev = bus->dev; cx231xx_i2c_xfer() 464 .name = "cx231xx", 490 void cx231xx_do_i2c_scan(struct cx231xx *dev, int i2c_port) cx231xx_do_i2c_scan() 526 struct cx231xx *dev = bus->dev; cx231xx_i2c_register() 563 struct cx231xx *dev = mux_priv; cx231xx_i2c_mux_select() 568 int cx231xx_i2c_mux_register(struct cx231xx *dev, int mux_no) cx231xx_i2c_mux_register() 590 void cx231xx_i2c_mux_unregister(struct cx231xx *dev, int mux_no) cx231xx_i2c_mux_unregister() 596 struct i2c_adapter *cx231xx_get_i2c_adap(struct cx231xx *dev, int i2c_port) cx231xx_get_i2c_adap()
|
H A D | cx231xx-audio.c | 23 #include "cx231xx.h" 47 static int cx231xx_isoc_audio_deinit(struct cx231xx *dev) cx231xx_isoc_audio_deinit() 71 static int cx231xx_bulk_audio_deinit(struct cx231xx *dev) cx231xx_bulk_audio_deinit() 97 struct cx231xx *dev = urb->context; cx231xx_audio_isocirq() 188 struct cx231xx *dev = urb->context; cx231xx_audio_bulkirq() 272 static int cx231xx_init_audio_isoc(struct cx231xx *dev) cx231xx_init_audio_isoc() 334 static int cx231xx_init_audio_bulk(struct cx231xx *dev) cx231xx_init_audio_bulk() 394 struct cx231xx *dev = snd_pcm_substream_chip(subs); snd_pcm_alloc_vmalloc_buffer() 435 struct cx231xx *dev = snd_pcm_substream_chip(substream); snd_cx231xx_capture_open() 482 struct cx231xx *dev = snd_pcm_substream_chip(substream); snd_cx231xx_pcm_close() 520 struct cx231xx *dev = snd_pcm_substream_chip(substream); snd_cx231xx_hw_capture_params() 528 /* TODO: set up cx231xx audio chip to deliver the correct audio format, snd_cx231xx_hw_capture_params() 543 struct cx231xx *dev = snd_pcm_substream_chip(substream); snd_cx231xx_hw_capture_free() 557 struct cx231xx *dev = snd_pcm_substream_chip(substream); snd_cx231xx_prepare() 567 struct cx231xx *dev = container_of(work, struct cx231xx, wq_trigger); audio_trigger() 586 struct cx231xx *dev = snd_pcm_substream_chip(substream); snd_cx231xx_capture_trigger() 614 struct cx231xx *dev; snd_cx231xx_capture_pointer() 647 static int cx231xx_audio_init(struct cx231xx *dev) cx231xx_audio_init() 665 "probing for cx231xx non standard usbaudio\n"); cx231xx_audio_init() 683 strcpy(pcm->name, "Conexant cx231xx Capture"); cx231xx_audio_init() 686 strcpy(card->longname, "Conexant cx231xx Audio"); cx231xx_audio_init() 731 static int cx231xx_audio_fini(struct cx231xx *dev) cx231xx_audio_fini()
|
H A D | cx231xx-core.c | 2 cx231xx-core.c - driver for Conexant Cx23100/101/102 23 #include "cx231xx.h" 32 #include "cx231xx-reg.h" 70 void cx231xx_remove_from_devlist(struct cx231xx *dev) cx231xx_remove_from_devlist() 85 void cx231xx_add_into_devlist(struct cx231xx *dev) cx231xx_add_into_devlist() 97 struct cx231xx *dev = NULL; cx231xx_register_extension() 112 struct cx231xx *dev = NULL; cx231xx_unregister_extension() 125 void cx231xx_init_extension(struct cx231xx *dev) cx231xx_init_extension() 139 void cx231xx_close_extension(struct cx231xx *dev) cx231xx_close_extension() 160 struct cx231xx *dev = i2c_bus->dev; cx231xx_send_usb_command() 237 static int __usb_control_msg(struct cx231xx *dev, unsigned int pipe, __usb_control_msg() 295 int cx231xx_read_ctrl_reg(struct cx231xx *dev, u8 req, u16 reg, cx231xx_read_ctrl_reg() 334 int cx231xx_send_vendor_cmd(struct cx231xx *dev, cx231xx_send_vendor_cmd() 408 int cx231xx_write_ctrl_reg(struct cx231xx *dev, u8 req, u16 reg, char *buf, cx231xx_write_ctrl_reg() 467 int cx231xx_set_video_alternate(struct cx231xx *dev) cx231xx_set_video_alternate() 527 int cx231xx_set_alt_setting(struct cx231xx *dev, u8 index, u8 alt) cx231xx_set_alt_setting() 621 int cx231xx_gpio_set(struct cx231xx *dev, struct cx231xx_reg_seq *gpio) cx231xx_gpio_set() 642 int cx231xx_demod_reset(struct cx231xx *dev) cx231xx_demod_reset() 680 int is_fw_load(struct cx231xx *dev) is_fw_load() 686 int cx231xx_set_mode(struct cx231xx *dev, enum cx231xx_mode set_mode) cx231xx_set_mode() 752 int cx231xx_ep5_bulkout(struct cx231xx *dev, u8 *firmware, u16 size) cx231xx_ep5_bulkout() 789 struct cx231xx *dev = container_of(vmode, struct cx231xx, video_mode); cx231xx_isoc_irq_callback() 834 struct cx231xx *dev = container_of(vmode, struct cx231xx, video_mode); cx231xx_bulk_irq_callback() 864 void cx231xx_uninit_isoc(struct cx231xx *dev) cx231xx_uninit_isoc() 870 cx231xx_isocdbg("cx231xx: called cx231xx_uninit_isoc\n"); cx231xx_uninit_isoc() 915 void cx231xx_uninit_bulk(struct cx231xx *dev) cx231xx_uninit_bulk() 920 cx231xx_isocdbg("cx231xx: called cx231xx_uninit_bulk\n"); cx231xx_uninit_bulk() 963 int cx231xx_init_isoc(struct cx231xx *dev, int max_packets, cx231xx_init_isoc() 965 int (*isoc_copy) (struct cx231xx *dev, struct urb *urb)) cx231xx_init_isoc() 1100 int cx231xx_init_bulk(struct cx231xx *dev, int max_packets, cx231xx_init_bulk() 1102 int (*bulk_copy) (struct cx231xx *dev, struct urb *urb)) cx231xx_init_bulk() 1221 void cx231xx_stop_TS1(struct cx231xx *dev) cx231xx_stop_TS1() 1240 void cx231xx_start_TS1(struct cx231xx *dev) cx231xx_start_TS1() 1262 int cx231xx_dev_init(struct cx231xx *dev) cx231xx_dev_init() 1413 void cx231xx_dev_uninit(struct cx231xx *dev) cx231xx_dev_uninit() 1427 int cx231xx_send_gpio_cmd(struct cx231xx *dev, u32 gpio_bit, u8 *gpio_val, cx231xx_send_gpio_cmd() 1483 int cx231xx_mode_register(struct cx231xx *dev, u16 address, u32 mode) cx231xx_mode_register() 1511 int cx231xx_read_i2c_master(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_read_i2c_master() 1557 int cx231xx_write_i2c_master(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_write_i2c_master() 1596 int cx231xx_read_i2c_data(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_read_i2c_data() 1632 int cx231xx_write_i2c_data(struct cx231xx *dev, u8 dev_addr, u16 saddr, cx231xx_write_i2c_data() 1663 int cx231xx_reg_mask_write(struct cx231xx *dev, u8 dev_addr, u8 size, cx231xx_reg_mask_write() 1712 int cx231xx_read_modify_write_i2c_dword(struct cx231xx *dev, u8 dev_addr, cx231xx_read_modify_write_i2c_dword()
|
H A D | cx231xx-417.c | 3 * Support for a cx23417 mpeg encoder via cx231xx host port. 27 #include "cx231xx.h" 324 static int set_itvc_reg(struct cx231xx *dev, u32 gpio_direction, u32 value) set_itvc_reg() 336 static int get_itvc_reg(struct cx231xx *dev, u32 gpio_direction, u32 *val_ptr) get_itvc_reg() 349 static int wait_for_mci_complete(struct cx231xx *dev) wait_for_mci_complete() 369 static int mc417_register_write(struct cx231xx *dev, u16 address, u32 value) mc417_register_write() 427 static int mc417_register_read(struct cx231xx *dev, u16 address, u32 *value) mc417_register_read() 501 static int mc417_memory_write(struct cx231xx *dev, u32 address, u32 value) mc417_memory_write() 565 static int mc417_memory_read(struct cx231xx *dev, u32 address, u32 *value) mc417_memory_read() 733 struct cx231xx *dev = priv; cx231xx_mbox_func() 809 static int cx231xx_api_cmd(struct cx231xx *dev, u32 command, cx231xx_api_cmd() 833 static int cx231xx_find_mailbox(struct cx231xx *dev) cx231xx_find_mailbox() 862 static void mci_write_memory_to_gpio(struct cx231xx *dev, u32 address, u32 value, mci_write_memory_to_gpio() 938 static int cx231xx_load_firmware(struct cx231xx *dev) cx231xx_load_firmware() 1085 static void cx231xx_417_check_encoder(struct cx231xx *dev) cx231xx_417_check_encoder() 1095 static void cx231xx_codec_settings(struct cx231xx *dev) cx231xx_codec_settings() 1112 static int cx231xx_initialize_codec(struct cx231xx *dev) cx231xx_initialize_codec() 1249 struct cx231xx *dev = fh->dev; free_buffer() 1268 static void buffer_copy(struct cx231xx *dev, char *data, int len, struct urb *urb, buffer_copy() 1349 static int cx231xx_isoc_copy(struct cx231xx *dev, struct urb *urb) cx231xx_isoc_copy() 1375 static int cx231xx_bulk_copy(struct cx231xx *dev, struct urb *urb) cx231xx_bulk_copy() 1403 struct cx231xx *dev = fh->dev; bb_buf_prepare() 1467 struct cx231xx *dev = fh->dev; bb_buf_queue() 1481 /*struct cx231xx *dev = (struct cx231xx *)fh->dev;*/ bb_buf_release() 1498 struct cx231xx *dev = fh->dev; vidioc_g_std() 1507 struct cx231xx *dev = fh->dev; vidioc_s_std() 1540 struct cx231xx *dev = fh->dev; vidioc_s_ctrl() 1565 struct cx231xx *dev = fh->dev; vidioc_g_fmt_vid_cap() 1585 struct cx231xx *dev = fh->dev; vidioc_try_fmt_vid_cap() 1635 struct cx231xx *dev = fh->dev; vidioc_streamon() 1665 struct cx231xx *dev = fh->dev; vidioc_log_status() 1674 struct cx231xx *dev = video_drvdata(file); mpeg_open() 1722 struct cx231xx *dev = fh->dev; mpeg_release() 1770 struct cx231xx *dev = fh->dev; mpeg_read() 1790 struct cx231xx *dev = fh->dev; mpeg_poll() 1858 .name = "cx231xx", 1865 void cx231xx_417_unregister(struct cx231xx *dev) cx231xx_417_unregister() 1878 struct cx231xx *dev = container_of(cxhdl, struct cx231xx, mpeg_ctrl_handler); cx231xx_s_video_encoding() 1895 struct cx231xx *dev = container_of(cxhdl, struct cx231xx, mpeg_ctrl_handler); cx231xx_s_audio_sampling_freq() 1912 struct cx231xx *dev, cx231xx_video_dev_init() 1936 int cx231xx_417_register(struct cx231xx *dev) cx231xx_417_register()
|
H A D | cx231xx-vbi.c | 22 #include "cx231xx.h" 38 #include "cx231xx-vbi.h" 40 static inline void print_err_status(struct cx231xx *dev, int packet, int status) print_err_status() 83 static inline int cx231xx_isoc_vbi_copy(struct cx231xx *dev, struct urb *urb) cx231xx_isoc_vbi_copy() 173 struct cx231xx *dev = fh->dev; vbi_buffer_setup() 193 struct cx231xx *dev = fh->dev; free_buffer() 222 struct cx231xx *dev = fh->dev; vbi_buffer_prepare() 270 struct cx231xx *dev = fh->dev; vbi_buffer_queue() 307 struct cx231xx *dev = container_of(vmode, struct cx231xx, vbi_mode); cx231xx_irq_vbi_callback() 341 void cx231xx_uninit_vbi_isoc(struct cx231xx *dev) cx231xx_uninit_vbi_isoc() 384 int cx231xx_init_vbi_isoc(struct cx231xx *dev, int max_packets, cx231xx_init_vbi_isoc() 386 int (*bulk_copy) (struct cx231xx *dev, cx231xx_init_vbi_isoc() 489 u32 cx231xx_get_vbi_line(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, cx231xx_get_vbi_line() 523 static inline void vbi_buffer_filled(struct cx231xx *dev, vbi_buffer_filled() 540 u32 cx231xx_copy_vbi_line(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, cx231xx_copy_vbi_line() 616 struct cx231xx *dev = container_of(vmode, struct cx231xx, vbi_mode); get_next_vbi_buf() 638 void cx231xx_reset_vbi_buffer(struct cx231xx *dev, cx231xx_reset_vbi_buffer() 657 int cx231xx_do_vbi_copy(struct cx231xx *dev, struct cx231xx_dmaqueue *dma_q, cx231xx_do_vbi_copy() 698 u8 cx231xx_is_vbi_buffer_done(struct cx231xx *dev, cx231xx_is_vbi_buffer_done()
|
H A D | cx231xx-cards.c | 2 cx231xx-cards.c - driver for Conexant Cx23100/101/102 23 #include "cx231xx.h" 923 struct cx231xx *dev = ptr; cx231xx_tuner_callback() 955 static void cx231xx_reset_out(struct cx231xx *dev) cx231xx_reset_out() 964 static void cx231xx_enable_OSC(struct cx231xx *dev) cx231xx_enable_OSC() 969 static void cx231xx_sleep_s5h1432(struct cx231xx *dev) cx231xx_sleep_s5h1432() 974 static inline void cx231xx_set_model(struct cx231xx *dev) cx231xx_set_model() 982 void cx231xx_pre_card_setup(struct cx231xx *dev) cx231xx_pre_card_setup() 1005 static void cx231xx_config_tuner(struct cx231xx *dev) cx231xx_config_tuner() 1043 static int read_eeprom(struct cx231xx *dev, struct i2c_client *client, read_eeprom() 1082 void cx231xx_card_setup(struct cx231xx *dev) cx231xx_card_setup() 1152 int cx231xx_config(struct cx231xx *dev) cx231xx_config() 1154 /* TBD need to add cx231xx specific code */ cx231xx_config() 1163 void cx231xx_config_i2c(struct cx231xx *dev) cx231xx_config_i2c() 1170 static void cx231xx_unregister_media_device(struct cx231xx *dev) cx231xx_unregister_media_device() 1186 void cx231xx_release_resources(struct cx231xx *dev) cx231xx_release_resources() 1208 static void cx231xx_media_device_register(struct cx231xx *dev, cx231xx_media_device_register() 1240 static void cx231xx_create_media_graph(struct cx231xx *dev) cx231xx_create_media_graph() 1280 static int cx231xx_init_dev(struct cx231xx *dev, struct usb_device *udev, cx231xx_init_dev() 1306 /* Query cx231xx to find what pcb config it is related to */ cx231xx_init_dev() 1404 struct cx231xx *dev = container_of(work, request_module_async() 1405 struct cx231xx, request_module_wk); request_module_async() 1408 request_module("cx231xx-alsa"); request_module_async() 1411 request_module("cx231xx-dvb"); request_module_async() 1415 static void request_modules(struct cx231xx *dev) request_modules() 1421 static void flush_request_modules(struct cx231xx *dev) flush_request_modules() 1430 static int cx231xx_init_v4l2(struct cx231xx *dev, cx231xx_init_v4l2() 1553 struct cx231xx *dev = NULL; cx231xx_usb_probe() 1591 snprintf(dev->name, 29, "cx231xx #%d", nr); cx231xx_usb_probe() 1763 struct cx231xx *dev; cx231xx_usb_disconnect() 1810 .name = "cx231xx",
|
H A D | cx231xx-avcore.c | 8 other related usb control functions for cx231xx based chipset. 25 #include "cx231xx.h" 39 #include "cx231xx-dif.h" 58 static int verve_write_byte(struct cx231xx *dev, u8 saddr, u8 data) verve_write_byte() 64 static int verve_read_byte(struct cx231xx *dev, u8 saddr, u8 *data) verve_read_byte() 74 void initGPIO(struct cx231xx *dev) initGPIO() 96 void uninitGPIO(struct cx231xx *dev) uninitGPIO() 110 static int afe_write_byte(struct cx231xx *dev, u16 saddr, u8 data) afe_write_byte() 116 static int afe_read_byte(struct cx231xx *dev, u16 saddr, u8 *data) afe_read_byte() 127 int cx231xx_afe_init_super_block(struct cx231xx *dev, u32 ref_count) cx231xx_afe_init_super_block() 198 int cx231xx_afe_init_channels(struct cx231xx *dev) cx231xx_afe_init_channels() 247 int cx231xx_afe_setup_AFE_for_baseband(struct cx231xx *dev) cx231xx_afe_setup_AFE_for_baseband() 268 int cx231xx_afe_set_input_mux(struct cx231xx *dev, u32 input_mux) cx231xx_afe_set_input_mux() 305 int cx231xx_afe_set_mode(struct cx231xx *dev, enum AFE_MODE mode) cx231xx_afe_set_mode() 342 int cx231xx_afe_update_power_control(struct cx231xx *dev, cx231xx_afe_update_power_control() 480 int cx231xx_afe_adjust_ref_count(struct cx231xx *dev, u32 video_input) cx231xx_afe_adjust_ref_count() 525 static int vid_blk_write_byte(struct cx231xx *dev, u16 saddr, u8 data) vid_blk_write_byte() 531 static int vid_blk_read_byte(struct cx231xx *dev, u16 saddr, u8 *data) vid_blk_read_byte() 542 static int vid_blk_write_word(struct cx231xx *dev, u16 saddr, u32 data) vid_blk_write_word() 548 static int vid_blk_read_word(struct cx231xx *dev, u16 saddr, u32 *data) vid_blk_read_word() 553 int cx231xx_check_fw(struct cx231xx *dev) cx231xx_check_fw() 565 int cx231xx_set_video_input_mux(struct cx231xx *dev, u8 input) cx231xx_set_video_input_mux() 624 int cx231xx_set_decoder_video_input(struct cx231xx *dev, cx231xx_set_decoder_video_input() 937 void cx231xx_enable656(struct cx231xx *dev) cx231xx_enable656() 953 void cx231xx_disable656(struct cx231xx *dev) cx231xx_disable656() 971 int cx231xx_do_mode_ctrl_overrides(struct cx231xx *dev) cx231xx_do_mode_ctrl_overrides() 1068 int cx231xx_unmute_audio(struct cx231xx *dev) cx231xx_unmute_audio() 1074 static int stopAudioFirmware(struct cx231xx *dev) stopAudioFirmware() 1079 static int restartAudioFirmware(struct cx231xx *dev) restartAudioFirmware() 1084 int cx231xx_set_audio_input(struct cx231xx *dev, u8 input) cx231xx_set_audio_input() 1106 int cx231xx_set_audio_decoder_input(struct cx231xx *dev, cx231xx_set_audio_decoder_input() 1240 int cx231xx_init_ctrl_pin_status(struct cx231xx *dev) cx231xx_init_ctrl_pin_status() 1252 int cx231xx_set_agc_analog_digital_mux_select(struct cx231xx *dev, cx231xx_set_agc_analog_digital_mux_select() 1270 int cx231xx_enable_i2c_port_3(struct cx231xx *dev, bool is_port_3) cx231xx_enable_i2c_port_3() 1311 void update_HH_register_after_set_DIF(struct cx231xx *dev) update_HH_register_after_set_DIF() 1327 void cx231xx_dump_HH_reg(struct cx231xx *dev) cx231xx_dump_HH_reg() 1361 static void cx231xx_dump_SC_reg(struct cx231xx *dev) 1463 void cx231xx_Setup_AFE_for_LowIF(struct cx231xx *dev) cx231xx_Setup_AFE_for_LowIF() 1519 void cx231xx_set_Colibri_For_LowIF(struct cx231xx *dev, u32 if_freq, cx231xx_set_Colibri_For_LowIF() 1573 void cx231xx_set_DIF_bandpass(struct cx231xx *dev, u32 if_freq, cx231xx_set_DIF_bandpass() 1637 int cx231xx_dif_configure_C2HH_for_low_IF(struct cx231xx *dev, u32 mode, cx231xx_dif_configure_C2HH_for_low_IF() 1731 int cx231xx_dif_set_standard(struct cx231xx *dev, u32 standard) cx231xx_dif_set_standard() 2121 int cx231xx_tuner_pre_channel_change(struct cx231xx *dev) cx231xx_tuner_pre_channel_change() 2136 int cx231xx_tuner_post_channel_change(struct cx231xx *dev) cx231xx_tuner_post_channel_change() 2170 int cx231xx_i2s_blk_initialize(struct cx231xx *dev) cx231xx_i2s_blk_initialize() 2188 int cx231xx_i2s_blk_update_power_control(struct cx231xx *dev, cx231xx_i2s_blk_update_power_control() 2209 int cx231xx_i2s_blk_set_audio_input(struct cx231xx *dev, u8 audio_input) cx231xx_i2s_blk_set_audio_input() 2233 int cx231xx_set_power_mode(struct cx231xx *dev, enum AV_MODE mode) cx231xx_set_power_mode() 2449 int cx231xx_power_suspend(struct cx231xx *dev) cx231xx_power_suspend() 2476 int cx231xx_start_stream(struct cx231xx *dev, u32 ep_mask) cx231xx_start_stream() 2501 int cx231xx_stop_stream(struct cx231xx *dev, u32 ep_mask) cx231xx_stop_stream() 2526 int cx231xx_initialize_stream_xfer(struct cx231xx *dev, u32 media_type) cx231xx_initialize_stream_xfer() 2612 int cx231xx_capture_start(struct cx231xx *dev, int start, u8 media_type) cx231xx_capture_start() 2667 static int cx231xx_set_gpio_bit(struct cx231xx *dev, u32 gpio_bit, u32 gpio_val) cx231xx_set_gpio_bit() 2677 static int cx231xx_get_gpio_bit(struct cx231xx *dev, u32 gpio_bit, u32 *gpio_val) cx231xx_get_gpio_bit() 2699 int cx231xx_set_gpio_direction(struct cx231xx *dev, cx231xx_set_gpio_direction() 2734 int cx231xx_set_gpio_value(struct cx231xx *dev, int pin_number, int pin_value) cx231xx_set_gpio_value() 2770 int cx231xx_gpio_i2c_start(struct cx231xx *dev) cx231xx_gpio_i2c_start() 2803 int cx231xx_gpio_i2c_end(struct cx231xx *dev) cx231xx_gpio_i2c_end() 2839 int cx231xx_gpio_i2c_write_byte(struct cx231xx *dev, u8 data) cx231xx_gpio_i2c_write_byte() 2886 int cx231xx_gpio_i2c_read_byte(struct cx231xx *dev, u8 *buf) cx231xx_gpio_i2c_read_byte() 2928 int cx231xx_gpio_i2c_read_ack(struct cx231xx *dev) cx231xx_gpio_i2c_read_ack() 2983 int cx231xx_gpio_i2c_write_ack(struct cx231xx *dev) cx231xx_gpio_i2c_write_ack() 3011 int cx231xx_gpio_i2c_write_nak(struct cx231xx *dev) cx231xx_gpio_i2c_write_nak() 3037 int cx231xx_gpio_i2c_read(struct cx231xx *dev, u8 dev_addr, u8 *buf, u8 len) cx231xx_gpio_i2c_read() 3081 int cx231xx_gpio_i2c_write(struct cx231xx *dev, u8 dev_addr, u8 *buf, u8 len) cx231xx_gpio_i2c_write()
|
H A D | cx231xx-dvb.c | 2 DVB device driver for cx231xx 22 #include "cx231xx.h" 39 MODULE_DESCRIPTION("driver for cx231xx based DVB cards"); 176 static inline void print_err_status(struct cx231xx *dev, int packet, int status) print_err_status() 216 static inline int dvb_isoc_copy(struct cx231xx *dev, struct urb *urb) dvb_isoc_copy() 250 static inline int dvb_bulk_copy(struct cx231xx *dev, struct urb *urb) dvb_bulk_copy() 274 struct cx231xx *dev = dvb->adapter.priv; start_streaming() 304 struct cx231xx *dev = dvb->adapter.priv; stop_streaming() 358 struct cx231xx *dev = fe->dvb->priv; cx231xx_dvb_bus_ctrl() 379 static int attach_xc5000(u8 addr, struct cx231xx *dev) 409 int cx231xx_set_analog_freq(struct cx231xx *dev, u32 freq) cx231xx_set_analog_freq() 432 int cx231xx_reset_analog_tuner(struct cx231xx *dev) cx231xx_reset_analog_tuner() 465 struct cx231xx *dev, struct device *device) register_dvb() 594 static int dvb_init(struct cx231xx *dev) dvb_init() 930 dev_info(dev->dev, "Successfully loaded cx231xx-dvb\n"); dvb_init() 943 static int dvb_fini(struct cx231xx *dev) dvb_fini()
|
H A D | cx231xx-pcb-cfg.h | 2 cx231xx-pcb-cfg.h - driver for Conexant 222 struct cx231xx; 224 int initialize_cx231xx(struct cx231xx *p_dev);
|
H A D | cx231xx-pcb-cfg.c | 2 cx231xx-pcb-config.c - driver for Conexant 22 #include "cx231xx.h" 23 #include "cx231xx-conf-reg.h" 657 int initialize_cx231xx(struct cx231xx *dev) initialize_cx231xx()
|
H A D | cx231xx-reg.h | 2 cx231xx-reg.h - driver for Conexant Cx23100/101/102
|
H A D | cx231xx-dif.h | 2 * cx231xx-dif.h - driver for Conexant Cx23100/101/102 USB video capture devices 24 #include "cx231xx-reg.h"
|
/linux-4.4.14/drivers/media/i2c/cx25840/ |
H A D | cx25840-firmware.c | 65 #define CX231xx_FIRMWARE "v4l-cx231xx-avcore-01.fw" 125 /* cx231xx cannot accept more than 16 bytes at a time */ cx25840_loadfw()
|
/linux-4.4.14/drivers/media/rc/ |
H A D | mceusb.c | 244 .name = "Conexant Hybrid TV (cx231xx) MCE IR", 248 .name = "Conexant Hybrid TV (cx231xx) MCE IR", 252 .name = "Conexant Hybrid TV (cx231xx) MCE IR no TX", 395 /* Hauppauge WINTV-HVR-HVR 930C-HD - based on cx231xx */
|
/linux-4.4.14/Documentation/dvb/ |
H A D | get_dvb_firmware | 28 "opera1", "cx231xx", "cx18", "cx23885", "pvrusb2", "mpc718", 365 sub cx231xx { subroutine 366 my $fwfile = "v4l-cx231xx-avcore-01.fw";
|