/linux-4.4.14/drivers/media/pci/cx18/ |
H A D | Makefile | 0 cx18-objs := cx18-driver.o cx18-cards.o cx18-i2c.o cx18-firmware.o cx18-gpio.o \ 2 cx18-queue.o cx18-streams.o cx18-fileops.o cx18-ioctl.o cx18-controls.o \ 3 cx18-mailbox.o cx18-vbi.o cx18-audio.o cx18-video.o cx18-irq.o \ 4 cx18-av-core.o cx18-av-audio.o cx18-av-firmware.o cx18-av-vbi.o cx18-scb.o \ 5 cx18-dvb.o cx18-io.o 6 cx18-alsa-objs := cx18-alsa-main.o cx18-alsa-pcm.o 8 obj-$(CONFIG_VIDEO_CX18) += cx18.o 9 obj-$(CONFIG_VIDEO_CX18_ALSA) += cx18-alsa.o
|
H A D | cx18-io.h | 2 * cx18 driver PCI memory mapped IO access routines 26 #include "cx18-driver.h" 38 static inline u32 cx18_raw_readl(struct cx18 *cx, const void __iomem *addr) cx18_raw_readl() 44 void cx18_raw_writel_noretry(struct cx18 *cx, u32 val, void __iomem *addr) cx18_raw_writel_noretry() 49 static inline void cx18_raw_writel(struct cx18 *cx, u32 val, void __iomem *addr) cx18_raw_writel() 60 static inline u32 cx18_readl(struct cx18 *cx, const void __iomem *addr) cx18_readl() 66 void cx18_writel_noretry(struct cx18 *cx, u32 val, void __iomem *addr) cx18_writel_noretry() 71 static inline void cx18_writel(struct cx18 *cx, u32 val, void __iomem *addr) cx18_writel() 82 void cx18_writel_expect(struct cx18 *cx, u32 val, void __iomem *addr, cx18_writel_expect() 98 static inline u16 cx18_readw(struct cx18 *cx, const void __iomem *addr) cx18_readw() 104 void cx18_writew_noretry(struct cx18 *cx, u16 val, void __iomem *addr) cx18_writew_noretry() 109 static inline void cx18_writew(struct cx18 *cx, u16 val, void __iomem *addr) cx18_writew() 119 static inline u8 cx18_readb(struct cx18 *cx, const void __iomem *addr) cx18_readb() 125 void cx18_writeb_noretry(struct cx18 *cx, u8 val, void __iomem *addr) cx18_writeb_noretry() 130 static inline void cx18_writeb(struct cx18 *cx, u8 val, void __iomem *addr) cx18_writeb() 141 void cx18_memcpy_fromio(struct cx18 *cx, void *to, cx18_memcpy_fromio() 147 void cx18_memset_io(struct cx18 *cx, void __iomem *addr, int val, size_t count); 151 static inline void cx18_write_reg_noretry(struct cx18 *cx, u32 val, u32 reg) cx18_write_reg_noretry() 156 static inline void cx18_write_reg(struct cx18 *cx, u32 val, u32 reg) cx18_write_reg() 161 static inline void cx18_write_reg_expect(struct cx18 *cx, u32 val, u32 reg, cx18_write_reg_expect() 167 static inline u32 cx18_read_reg(struct cx18 *cx, u32 reg) cx18_read_reg() 174 static inline void cx18_write_enc(struct cx18 *cx, u32 val, u32 addr) cx18_write_enc() 179 static inline u32 cx18_read_enc(struct cx18 *cx, u32 addr) cx18_read_enc() 184 void cx18_sw1_irq_enable(struct cx18 *cx, u32 val); 185 void cx18_sw1_irq_disable(struct cx18 *cx, u32 val); 186 void cx18_sw2_irq_enable(struct cx18 *cx, u32 val); 187 void cx18_sw2_irq_disable(struct cx18 *cx, u32 val); 188 void cx18_sw2_irq_disable_cpu(struct cx18 *cx, u32 val); 189 void cx18_setup_page(struct cx18 *cx, u32 addr);
|
H A D | cx18-streams.h | 2 * cx18 init/start/stop/exit stream functions 25 u32 cx18_find_handle(struct cx18 *cx); 26 struct cx18_stream *cx18_handle_to_stream(struct cx18 *cx, u32 handle); 27 int cx18_streams_setup(struct cx18 *cx); 28 int cx18_streams_register(struct cx18 *cx); 29 void cx18_streams_cleanup(struct cx18 *cx, int unregister); 32 void cx18_stream_rotate_idx_mdls(struct cx18 *cx); 62 void cx18_stop_all_captures(struct cx18 *cx);
|
H A D | cx18-video.c | 2 * cx18 video interface functions 22 #include "cx18-driver.h" 23 #include "cx18-video.h" 24 #include "cx18-cards.h" 26 void cx18_video_set_io(struct cx18 *cx) cx18_video_set_io()
|
H A D | cx18-irq.c | 2 * cx18 interrupt handling 23 #include "cx18-driver.h" 24 #include "cx18-io.h" 25 #include "cx18-irq.h" 26 #include "cx18-mailbox.h" 27 #include "cx18-scb.h" 29 static void xpu_ack(struct cx18 *cx, u32 sw2) xpu_ack() 37 static void epu_cmd(struct cx18 *cx, u32 sw1) epu_cmd() 47 struct cx18 *cx = (struct cx18 *)dev_id; cx18_irq_handler()
|
H A D | cx18-io.c | 2 * cx18 driver PCI memory mapped IO access routines 23 #include "cx18-driver.h" 24 #include "cx18-io.h" 25 #include "cx18-irq.h" 27 void cx18_memset_io(struct cx18 *cx, void __iomem *addr, int val, size_t count) cx18_memset_io() 58 void cx18_sw1_irq_enable(struct cx18 *cx, u32 val) cx18_sw1_irq_enable() 65 void cx18_sw1_irq_disable(struct cx18 *cx, u32 val) cx18_sw1_irq_disable() 71 void cx18_sw2_irq_enable(struct cx18 *cx, u32 val) cx18_sw2_irq_enable() 78 void cx18_sw2_irq_disable(struct cx18 *cx, u32 val) cx18_sw2_irq_disable() 84 void cx18_sw2_irq_disable_cpu(struct cx18 *cx, u32 val) cx18_sw2_irq_disable_cpu() 91 void cx18_setup_page(struct cx18 *cx, u32 addr) cx18_setup_page()
|
H A D | cx18-controls.c | 2 * cx18 ioctl control functions 26 #include "cx18-driver.h" 27 #include "cx18-cards.h" 28 #include "cx18-ioctl.h" 29 #include "cx18-audio.h" 30 #include "cx18-mailbox.h" 31 #include "cx18-controls.h" 35 struct cx18 *cx = container_of(cxhdl, struct cx18, cxhdl); cx18_s_stream_vbi_fmt() 94 struct cx18 *cx = container_of(cxhdl, struct cx18, cxhdl); cx18_s_video_encoding() 112 struct cx18 *cx = container_of(cxhdl, struct cx18, cxhdl); cx18_s_audio_sampling_freq() 123 struct cx18 *cx = container_of(cxhdl, struct cx18, cxhdl); cx18_s_audio_mode()
|
H A D | cx18-alsa-main.c | 2 * ALSA interface to cx18 PCM capture streams 37 #include "cx18-driver.h" 38 #include "cx18-version.h" 39 #include "cx18-alsa.h" 40 #include "cx18-alsa-mixer.h" 41 #include "cx18-alsa-pcm.h" 48 printk(KERN_INFO "%s: " fmt, "cx18-alsa", ## arg); \ 117 struct cx18 *cx = to_cx18(cxsc->v4l2_dev); snd_cx18_card_set_names() 137 struct cx18 *cx = to_cx18(v4l2_dev); snd_cx18_init() 201 static int cx18_alsa_load(struct cx18 *cx) cx18_alsa_load() 207 printk(KERN_ERR "cx18-alsa: %s: struct v4l2_device * is NULL\n", cx18_alsa_load() 214 printk(KERN_ERR "cx18-alsa cx is NULL\n"); cx18_alsa_load() 235 CX18_DEBUG_ALSA_INFO("%s: created cx18 ALSA interface instance " cx18_alsa_load() 243 printk(KERN_INFO "cx18-alsa: module loading...\n"); cx18_alsa_init() 250 struct cx18 *cx = to_cx18(cxsc->v4l2_dev); snd_cx18_exit() 264 printk(KERN_ERR "cx18-alsa: %s: struct v4l2_device * is NULL\n", cx18_alsa_exit_callback() 285 printk(KERN_INFO "cx18-alsa: module unloading...\n"); cx18_alsa_exit() 287 drv = driver_find("cx18", &pci_bus_type); cx18_alsa_exit() 292 printk(KERN_INFO "cx18-alsa: module unload complete\n"); cx18_alsa_exit()
|
H A D | cx18-gpio.h | 2 * cx18 gpio functions 24 void cx18_gpio_init(struct cx18 *cx); 25 int cx18_gpio_register(struct cx18 *cx, u32 hw);
|
H A D | cx18-audio.c | 2 * cx18 audio-related functions 24 #include "cx18-driver.h" 25 #include "cx18-io.h" 26 #include "cx18-cards.h" 27 #include "cx18-audio.h" 37 int cx18_audio_set_io(struct cx18 *cx) cx18_audio_set_io()
|
H A D | cx18-gpio.c | 2 * cx18 gpio functions 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-cards.h" 28 #include "cx18-gpio.h" 52 static void gpio_write(struct cx18 *cx) gpio_write() 69 static void gpio_update(struct cx18 *cx, u32 mask, u32 data) gpio_update() 80 static void gpio_reset_seq(struct cx18 *cx, u32 active_lo, u32 active_hi, gpio_reset_seq() 110 struct cx18 *cx = v4l2_get_subdevdata(sd); gpiomux_log_status() 121 struct cx18 *cx = v4l2_get_subdevdata(sd); gpiomux_s_radio() 135 struct cx18 *cx = v4l2_get_subdevdata(sd); gpiomux_s_std() 161 struct cx18 *cx = v4l2_get_subdevdata(sd); gpiomux_s_audio_routing() 209 struct cx18 *cx = v4l2_get_subdevdata(sd); resetctrl_log_status() 220 struct cx18 *cx = v4l2_get_subdevdata(sd); resetctrl_reset() 268 void cx18_gpio_init(struct cx18 *cx) cx18_gpio_init() 294 int cx18_gpio_register(struct cx18 *cx, u32 hw) cx18_gpio_register() 324 struct cx18 *cx = to_cx18((struct v4l2_device *)data); cx18_reset_ir_gpio() 342 struct cx18 *cx = cb_data->cx; cx18_reset_tuner_gpio()
|
H A D | cx18-i2c.c | 2 * cx18 I2C functions 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-cards.h" 28 #include "cx18-gpio.h" 29 #include "cx18-i2c.h" 30 #include "cx18-irq.h" 86 static int cx18_i2c_new_ir(struct cx18 *cx, struct i2c_adapter *adap, u32 hw, cx18_i2c_new_ir() 111 int cx18_i2c_register(struct cx18 *cx, unsigned idx) cx18_i2c_register() 152 struct v4l2_subdev *cx18_find_hw(struct cx18 *cx, u32 hw) cx18_find_hw() 170 struct cx18 *cx = ((struct cx18_i2c_algo_callback_data *)data)->cx; cx18_setscl() 183 struct cx18 *cx = ((struct cx18_i2c_algo_callback_data *)data)->cx; cx18_setsda() 196 struct cx18 *cx = ((struct cx18_i2c_algo_callback_data *)data)->cx; cx18_getscl() 205 struct cx18 *cx = ((struct cx18_i2c_algo_callback_data *)data)->cx; cx18_getsda() 214 .name = "cx18 i2c driver", 233 int init_cx18_i2c(struct cx18 *cx) init_cx18_i2c() 304 void exit_cx18_i2c(struct cx18 *cx) exit_cx18_i2c()
|
H A D | cx18-driver.c | 2 * cx18 driver initialization and card probing 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-version.h" 28 #include "cx18-cards.h" 29 #include "cx18-i2c.h" 30 #include "cx18-irq.h" 31 #include "cx18-gpio.h" 32 #include "cx18-firmware.h" 33 #include "cx18-queue.h" 34 #include "cx18-streams.h" 35 #include "cx18-av-core.h" 36 #include "cx18-scb.h" 37 #include "cx18-mailbox.h" 38 #include "cx18-ioctl.h" 39 #include "cx18-controls.h" 52 int (*cx18_ext_init)(struct cx18 *); 257 struct cx18 *dev = container_of(work, struct cx18, request_module_wk); request_module_async() 259 /* Make sure cx18-alsa module is loaded */ request_module_async() 260 request_module("cx18-alsa"); request_module_async() 262 /* Initialize cx18-alsa for this instance of the cx18 device */ request_module_async() 267 static void request_modules(struct cx18 *dev) request_modules() 273 static void flush_request_modules(struct cx18 *dev) flush_request_modules() 297 static void cx18_iounmap(struct cx18 *cx) cx18_iounmap() 310 static void cx18_eeprom_dump(struct cx18 *cx, unsigned char *eedata, int len) cx18_eeprom_dump() 325 void cx18_read_eeprom(struct cx18 *cx, struct tveeprom *tv) cx18_read_eeprom() 336 strlcpy(c->name, "cx18 tveeprom tmp", sizeof(c->name)); cx18_read_eeprom() 366 static void cx18_process_eeprom(struct cx18 *cx) cx18_process_eeprom() 457 static v4l2_std_id cx18_parse_std(struct cx18 *cx) cx18_parse_std() 539 static void cx18_process_options(struct cx18 *cx) cx18_process_options() 701 static int cx18_create_in_workq(struct cx18 *cx) cx18_create_in_workq() 713 static void cx18_init_in_work_orders(struct cx18 *cx) cx18_init_in_work_orders() 723 /* Precondition: the cx18 structure has been memset to 0. Only 728 static int cx18_init_struct1(struct cx18 *cx) cx18_init_struct1() 785 static void cx18_init_struct2(struct cx18 *cx) cx18_init_struct2() 810 static int cx18_setup_pci(struct cx18 *cx, struct pci_dev *pci_dev, cx18_setup_pci() 826 if (!request_mem_region(cx->base_addr, CX18_MEM_SIZE, "cx18 encoder")) { cx18_setup_pci() 856 static void cx18_init_subdevs(struct cx18 *cx) cx18_init_subdevs() 908 struct cx18 *cx; cx18_probe() 913 printk(KERN_ERR "cx18: cannot manage card %d, driver has a " cx18_probe() 918 cx = kzalloc(sizeof(struct cx18), GFP_ATOMIC); cx18_probe() 920 printk(KERN_ERR "cx18: cannot manage card %d, out of memory\n", cx18_probe() 929 printk(KERN_ERR "cx18: v4l2_device_register of card %d failed" cx18_probe() 934 snprintf(cx->v4l2_dev.name, sizeof(cx->v4l2_dev.name), "cx18-%d", cx18_probe() 1132 /* Load cx18 submodules (cx18-alsa) */ cx18_probe() 1158 int cx18_init_on_first_open(struct cx18 *cx) cx18_init_on_first_open() 1258 static void cx18_cancel_in_work_orders(struct cx18 *cx) cx18_cancel_in_work_orders() 1265 static void cx18_cancel_out_work_orders(struct cx18 *cx) cx18_cancel_out_work_orders() 1276 struct cx18 *cx = to_cx18(v4l2_dev); cx18_remove() 1329 .name = "cx18", 1337 printk(KERN_INFO "cx18: Start initialization, version %s\n", module_start() 1342 printk(KERN_ERR "cx18: Exiting, cx18_first_minor must be between 0 and %d\n", module_start() 1349 printk(KERN_INFO "cx18: Debug value must be >= 0 and <= 511!\n"); module_start() 1353 printk(KERN_ERR "cx18: Error detecting PCI card\n"); module_start() 1356 printk(KERN_INFO "cx18: End initialization\n"); module_start()
|
H A D | cx18-ioctl.c | 2 * cx18 ioctl system call 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-version.h" 28 #include "cx18-mailbox.h" 29 #include "cx18-i2c.h" 30 #include "cx18-queue.h" 31 #include "cx18-fileops.h" 32 #include "cx18-vbi.h" 33 #include "cx18-audio.h" 34 #include "cx18-video.h" 35 #include "cx18-streams.h" 36 #include "cx18-ioctl.h" 37 #include "cx18-gpio.h" 38 #include "cx18-controls.h" 39 #include "cx18-cards.h" 40 #include "cx18-av-core.h" 152 struct cx18 *cx = id->cx; cx18_g_fmt_vid_cap() 175 struct cx18 *cx = fh2id(fh)->cx; cx18_g_fmt_vbi_cap() 194 struct cx18 *cx = fh2id(fh)->cx; cx18_g_fmt_sliced_vbi_cap() 220 struct cx18 *cx = id->cx; cx18_try_fmt_vid_cap() 249 struct cx18 *cx = fh2id(fh)->cx; cx18_try_fmt_sliced_vbi_cap() 269 struct cx18 *cx = id->cx; cx18_s_fmt_vid_cap() 312 struct cx18 *cx = id->cx; cx18_s_fmt_vbi_cap() 342 struct cx18 *cx = id->cx; cx18_s_fmt_sliced_vbi_cap() 373 struct cx18 *cx = fh2id(fh)->cx; cx18_g_register() 387 struct cx18 *cx = fh2id(fh)->cx; cx18_s_register() 403 struct cx18 *cx = id->cx; cx18_querycap() 417 struct cx18 *cx = fh2id(fh)->cx; cx18_enumaudio() 424 struct cx18 *cx = fh2id(fh)->cx; cx18_g_audio() 432 struct cx18 *cx = fh2id(fh)->cx; cx18_s_audio() 443 struct cx18 *cx = fh2id(fh)->cx; cx18_enum_input() 452 struct cx18 *cx = fh2id(fh)->cx; cx18_cropcap() 464 struct cx18 *cx = fh2id(fh)->cx; cx18_g_selection() 504 struct cx18 *cx = fh2id(fh)->cx; cx18_g_input() 513 struct cx18 *cx = id->cx; cx18_s_input() 550 struct cx18 *cx = fh2id(fh)->cx; cx18_g_frequency() 562 struct cx18 *cx = id->cx; cx18_s_frequency() 576 struct cx18 *cx = fh2id(fh)->cx; cx18_g_std() 585 struct cx18 *cx = id->cx; cx18_s_std() 621 struct cx18 *cx = id->cx; cx18_s_tuner() 632 struct cx18 *cx = fh2id(fh)->cx; cx18_g_tuner() 640 strlcpy(vt->name, "cx18 Radio Tuner", sizeof(vt->name)); cx18_g_tuner() 642 strlcpy(vt->name, "cx18 TV Tuner", sizeof(vt->name)); cx18_g_tuner() 649 struct cx18 *cx = fh2id(fh)->cx; cx18_g_sliced_vbi_cap() 770 struct cx18 *cx = fh2id(fh)->cx; cx18_g_enc_index() 817 struct cx18 *cx = id->cx; cx18_vb_queue() 836 struct cx18 *cx = id->cx; cx18_streamon() 857 struct cx18 *cx = id->cx; cx18_streamoff() 875 struct cx18 *cx = id->cx; cx18_reqbufs() 889 struct cx18 *cx = id->cx; cx18_querybuf() 902 struct cx18 *cx = id->cx; cx18_qbuf() 915 struct cx18 *cx = id->cx; cx18_dqbuf() 929 struct cx18 *cx = id->cx; cx18_encoder_cmd() 989 struct cx18 *cx = fh2id(fh)->cx; cx18_try_encoder_cmd() 1021 struct cx18 *cx = fh2id(fh)->cx; cx18_log_status() 1065 struct cx18 *cx = fh2id(fh)->cx; cx18_default()
|
H A D | cx18-alsa-pcm.c | 3 * ALSA interface to cx18 PCM capture streams 35 #include "cx18-driver.h" 36 #include "cx18-queue.h" 37 #include "cx18-streams.h" 38 #include "cx18-fileops.h" 39 #include "cx18-alsa.h" 40 #include "cx18-alsa-pcm.h" 48 printk(KERN_INFO "cx18-alsa-pcm %s: " fmt, \ 83 dprintk("cx18 alsa announce ptr=%p data=%p num_bytes=%zu\n", cxsc, cx18_alsa_announce_pcm_data() 154 struct cx18 *cx = to_cx18(v4l2_dev); snd_cx18_pcm_capture_open() 159 /* Instruct the cx18 to start sending packets */ snd_cx18_pcm_capture_open() 201 struct cx18 *cx = to_cx18(v4l2_dev); snd_cx18_pcm_capture_close() 204 /* Instruct the cx18 to stop sending packets */ snd_cx18_pcm_capture_close() 331 struct cx18 *cx = to_cx18(v4l2_dev); snd_cx18_pcm_create()
|
H A D | cx18-version.h | 2 * cx18 driver version information 25 #define CX18_DRIVER_NAME "cx18"
|
H A D | cx18-av-core.h | 2 * cx18 ADEC header 31 struct cx18; 358 int cx18_av_write(struct cx18 *cx, u16 addr, u8 value); 359 int cx18_av_write4(struct cx18 *cx, u16 addr, u32 value); 360 int cx18_av_write4_noretry(struct cx18 *cx, u16 addr, u32 value); 361 int cx18_av_write_expect(struct cx18 *cx, u16 addr, u8 value, u8 eval, u8 mask); 362 int cx18_av_write4_expect(struct cx18 *cx, u16 addr, u32 value, u32 eval, 364 u8 cx18_av_read(struct cx18 *cx, u16 addr); 365 u32 cx18_av_read4(struct cx18 *cx, u16 addr); 366 int cx18_av_and_or(struct cx18 *cx, u16 addr, unsigned mask, u8 value); 367 int cx18_av_and_or4(struct cx18 *cx, u16 addr, u32 mask, u32 value); 368 void cx18_av_std_setup(struct cx18 *cx); 370 int cx18_av_probe(struct cx18 *cx); 374 int cx18_av_loadfw(struct cx18 *cx); 379 void cx18_av_audio_set_path(struct cx18 *cx);
|
H A D | cx18-mailbox.c | 2 * cx18 mailbox functions 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-scb.h" 28 #include "cx18-irq.h" 29 #include "cx18-mailbox.h" 30 #include "cx18-queue.h" 31 #include "cx18-streams.h" 32 #include "cx18-alsa-pcm.h" /* FIXME make configurable */ 119 static void dump_mb(struct cx18 *cx, struct cx18_mailbox *mb, char *name) dump_mb() 217 static void cx18_mdl_send_to_alsa(struct cx18 *cx, struct cx18_stream *s, cx18_mdl_send_to_alsa() 244 static void epu_dma_done(struct cx18 *cx, struct cx18_in_work_order *order) epu_dma_done() 314 /* Pass the data to cx18-alsa */ epu_dma_done() 338 static void epu_debug(struct cx18 *cx, struct cx18_in_work_order *order) epu_debug() 349 static void epu_cmd(struct cx18 *cx, struct cx18_in_work_order *order) epu_cmd() 378 void free_in_work_order(struct cx18 *cx, struct cx18_in_work_order *order) free_in_work_order() 387 struct cx18 *cx = order->cx; cx18_in_work_handler() 397 static void mb_ack_irq(struct cx18 *cx, struct cx18_in_work_order *order) mb_ack_irq() 433 static int epu_dma_done_irq(struct cx18 *cx, struct cx18_in_work_order *order) epu_dma_done_irq() 461 int epu_debug_irq(struct cx18 *cx, struct cx18_in_work_order *order) epu_debug_irq() 482 int epu_cmd_irq(struct cx18 *cx, struct cx18_in_work_order *order) epu_cmd_irq() 514 struct cx18_in_work_order *alloc_in_work_order_irq(struct cx18 *cx) alloc_in_work_order_irq() 537 void cx18_api_epu_cmd_irq(struct cx18 *cx, int rpu) cx18_api_epu_cmd_irq() 600 static int cx18_api_call(struct cx18 *cx, u32 cmd, int args, u32 data[]) cx18_api_call() 753 int cx18_api(struct cx18 *cx, u32 cmd, int args, u32 data[]) cx18_api() 760 struct cx18 *cx = s->cx; cx18_set_filter_param() 779 struct cx18 *cx = s->cx; cx18_api_func() 838 int cx18_vapi_result(struct cx18 *cx, u32 data[MAX_MB_ARGUMENTS], cx18_vapi_result() 851 int cx18_vapi(struct cx18 *cx, u32 cmd, int args, ...) cx18_vapi()
|
H A D | cx18-mailbox.h | 2 * cx18 mailbox functions 39 struct cx18; 44 * firmware, but its definition needs to be here, instead of in cx18-scb.h, 84 int cx18_api(struct cx18 *cx, u32 cmd, int args, u32 data[]); 85 int cx18_vapi_result(struct cx18 *cx, u32 data[MAX_MB_ARGUMENTS], u32 cmd, 87 int cx18_vapi(struct cx18 *cx, u32 cmd, int args, ...); 91 void cx18_api_epu_cmd_irq(struct cx18 *cx, int rpu);
|
H A D | cx18-vbi.c | 2 * cx18 Vertical Blank Interval support functions 24 #include "cx18-driver.h" 25 #include "cx18-vbi.h" 26 #include "cx18-ioctl.h" 27 #include "cx18-queue.h" 39 static void copy_vbi_data(struct cx18 *cx, int lines, u32 pts_stamp) copy_vbi_data() 109 static u32 compress_raw_buf(struct cx18 *cx, u8 *buf, u32 size, u32 hdr_size) compress_raw_buf() 142 static u32 compress_sliced_buf(struct cx18 *cx, u8 *buf, u32 size, compress_sliced_buf() 189 static void _cx18_process_vbi_data(struct cx18 *cx, struct cx18_buffer *buf) _cx18_process_vbi_data() 251 void cx18_process_vbi_data(struct cx18 *cx, struct cx18_mdl *mdl, cx18_process_vbi_data()
|
H A D | cx18-alsa-mixer.c | 3 * ALSA interface to cx18 PCM capture streams 35 #include "cx18-alsa.h" 36 #include "cx18-driver.h" 39 * Note the cx18-av-core volume scale is funny, due to the alignment of the 88 struct cx18 *cx = to_cx18(cxsc->v4l2_dev); snd_cx18_mixer_tv_vol_get() 108 struct cx18 *cx = to_cx18(cxsc->v4l2_dev); snd_cx18_mixer_tv_vol_put()
|
H A D | cx18-alsa.h | 2 * ALSA interface to cx18 PCM capture streams 41 struct cx18 *cx = to_cx18(cxsc->v4l2_dev); snd_cx18_lock() 47 struct cx18 *cx = to_cx18(cxsc->v4l2_dev); snd_cx18_unlock()
|
H A D | cx18-dvb.c | 2 * cx18 functions for DVB support 23 #include "cx18-version.h" 24 #include "cx18-dvb.h" 25 #include "cx18-io.h" 26 #include "cx18-queue.h" 27 #include "cx18-streams.h" 28 #include "cx18-cards.h" 29 #include "cx18-gpio.h" 43 #define FWFILE "dvb-cx18-mpc718-mt352.fw" 139 struct cx18 *cx = stream->cx; yuan_mpc718_mt352_reqfw() 254 struct cx18 *cx; cx18_dvb_start_feed() 325 struct cx18 *cx; cx18_dvb_stop_feed() 349 struct cx18 *cx = stream->cx; cx18_dvb_register() 441 struct cx18 *cx = stream->cx; cx18_dvb_unregister() 473 struct cx18 *cx = stream->cx; dvb_register()
|
H A D | cx18-scb.c | 2 * cx18 System Control Block initialization 23 #include "cx18-driver.h" 24 #include "cx18-io.h" 25 #include "cx18-scb.h" 27 void cx18_init_scb(struct cx18 *cx) cx18_init_scb()
|
H A D | cx18-fileops.c | 2 * cx18 file operation functions 25 #include "cx18-driver.h" 26 #include "cx18-fileops.h" 27 #include "cx18-i2c.h" 28 #include "cx18-queue.h" 29 #include "cx18-vbi.h" 30 #include "cx18-audio.h" 31 #include "cx18-mailbox.h" 32 #include "cx18-scb.h" 33 #include "cx18-streams.h" 34 #include "cx18-controls.h" 35 #include "cx18-ioctl.h" 36 #include "cx18-cards.h" 46 struct cx18 *cx = id->cx; cx18_claim_stream() 106 struct cx18 *cx = s->cx; cx18_release_stream() 161 static void cx18_dualwatch(struct cx18 *cx) cx18_dualwatch() 187 struct cx18 *cx = s->cx; cx18_get_mdl() 259 static void cx18_setup_sliced_vbi_mdl(struct cx18 *cx) cx18_setup_sliced_vbi_mdl() 277 struct cx18 *cx = s->cx; cx18_copy_buf_to_user() 423 struct cx18 *cx = s->cx; cx18_read() 489 struct cx18 *cx = s->cx; cx18_read_pos() 499 struct cx18 *cx = id->cx; cx18_start_capture() 590 struct cx18 *cx = id->cx; cx18_v4l2_read() 615 struct cx18 *cx = id->cx; cx18_v4l2_enc_poll() 664 struct cx18 *cx = id->cx; cx18_v4l2_mmap() 715 struct cx18 *cx = id->cx; cx18_stop_capture() 758 struct cx18 *cx = id->cx; cx18_v4l2_close() 798 struct cx18 *cx = s->cx; cx18_serialized_open() 850 struct cx18 *cx = s->cx; cx18_v4l2_open() 864 void cx18_mute(struct cx18 *cx) cx18_mute() 877 void cx18_unmute(struct cx18 *cx) cx18_unmute()
|
H A D | cx18-firmware.c | 2 * cx18 firmware functions 23 #include "cx18-driver.h" 24 #include "cx18-io.h" 25 #include "cx18-scb.h" 26 #include "cx18-irq.h" 27 #include "cx18-firmware.h" 28 #include "cx18-cards.h" 101 static int load_cpu_fw_direct(const char *fn, u8 __iomem *mem, struct cx18 *cx) load_cpu_fw_direct() 140 static int load_apu_fw_direct(const char *fn, u8 __iomem *dst, struct cx18 *cx, load_apu_fw_direct() 213 void cx18_halt_firmware(struct cx18 *cx) cx18_halt_firmware() 222 void cx18_init_power(struct cx18 *cx, int lowpwr) cx18_init_power() 331 void cx18_init_memory(struct cx18 *cx) cx18_init_memory() 382 int cx18_firmware_init(struct cx18 *cx) cx18_firmware_init()
|
H A D | cx18-streams.c | 2 * cx18 init/start/stop/exit stream functions 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-fileops.h" 28 #include "cx18-mailbox.h" 29 #include "cx18-i2c.h" 30 #include "cx18-queue.h" 31 #include "cx18-ioctl.h" 32 #include "cx18-streams.h" 33 #include "cx18-cards.h" 34 #include "cx18-scb.h" 35 #include "cx18-dvb.h" 124 struct cx18 *cx = s->cx; cx18_prepare_buffer() 199 struct cx18 *cx = s->cx; buffer_setup() 221 struct cx18 *cx = s->cx; buffer_prepare() 255 static void cx18_stream_init(struct cx18 *cx, int type) cx18_stream_init() 312 static int cx18_prep_dev(struct cx18 *cx, int type) cx18_prep_dev() 387 int cx18_streams_setup(struct cx18 *cx) cx18_streams_setup() 411 static int cx18_reg_dev(struct cx18 *cx, int type) cx18_reg_dev() 479 int cx18_streams_register(struct cx18 *cx) cx18_streams_register() 501 void cx18_streams_cleanup(struct cx18 *cx, int unregister) cx18_streams_cleanup() 555 struct cx18 *cx = s->cx; cx18_vbi_setup() 663 void cx18_stream_rotate_idx_mdls(struct cx18 *cx) cx18_stream_rotate_idx_mdls() 693 struct cx18 *cx = s->cx; _cx18_stream_put_mdl_fw() 788 struct cx18 *cx = s->cx; cx18_start_v4l2_encode_stream() 962 void cx18_stop_all_captures(struct cx18 *cx) cx18_stop_all_captures() 978 struct cx18 *cx = s->cx; cx18_stop_v4l2_encode_stream() 1026 u32 cx18_find_handle(struct cx18 *cx) cx18_find_handle() 1040 struct cx18_stream *cx18_handle_to_stream(struct cx18 *cx, u32 handle) cx18_handle_to_stream()
|
H A D | cx18-av-core.c | 2 * cx18 ADEC audio functions 25 #include "cx18-driver.h" 26 #include "cx18-io.h" 27 #include "cx18-cards.h" 29 int cx18_av_write(struct cx18 *cx, u16 addr, u8 value) cx18_av_write() 41 int cx18_av_write_expect(struct cx18 *cx, u16 addr, u8 value, u8 eval, u8 mask) cx18_av_write_expect() 53 int cx18_av_write4(struct cx18 *cx, u16 addr, u32 value) cx18_av_write4() 60 cx18_av_write4_expect(struct cx18 *cx, u16 addr, u32 value, u32 eval, u32 mask) cx18_av_write4_expect() 66 int cx18_av_write4_noretry(struct cx18 *cx, u16 addr, u32 value) cx18_av_write4_noretry() 72 u8 cx18_av_read(struct cx18 *cx, u16 addr) cx18_av_read() 80 u32 cx18_av_read4(struct cx18 *cx, u16 addr) cx18_av_read4() 85 int cx18_av_and_or(struct cx18 *cx, u16 addr, unsigned and_mask, cx18_av_and_or() 93 int cx18_av_and_or4(struct cx18 *cx, u16 addr, u32 and_mask, cx18_av_and_or4() 101 static void cx18_av_init(struct cx18 *cx) cx18_av_init() 130 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_initialize() 287 void cx18_av_std_setup(struct cx18 *cx) cx18_av_std_setup() 532 static void input_change(struct cx18 *cx) input_change() 580 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_frequency() 585 static int set_input(struct cx18 *cx, enum cx18_av_video_input vid_input, set_input() 762 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_video_routing() 770 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_audio_routing() 777 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_g_tuner() 814 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_tuner() 859 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_std() 922 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_ctrl() 954 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_set_fmt() 1027 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_stream() 1040 static void log_video_status(struct cx18 *cx) log_video_status() 1082 static void log_audio_status(struct cx18 *cx) log_audio_status() 1233 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_log_status() 1243 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_g_register() 1255 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_register() 1316 int cx18_av_probe(struct cx18 *cx) cx18_av_probe()
|
H A D | cx18-driver.h | 2 * cx18 driver internal defines and structures 53 #include "cx18-mailbox.h" 54 #include "cx18-av-core.h" 77 /* Maximum cx18 driver instances. */ 275 /* per-cx18, i_flags */ 347 struct cx18; /* forward reference */ 363 struct cx18 *cx; 378 struct cx18 *cx; /* for ease of use */ 433 struct cx18 *cx; 446 /* forward declaration of struct defined in cx18-cards.h */ 520 * Used in cx18-vbi.c only for collecting sliced data, and as a source 561 * Only used in cx18-fileops.c, but its state needs to persist at times. 569 struct cx18 *cx; 575 /* Struct to hold info about cx18 cards */ 576 struct cx18 { struct 618 unsigned long i_flags; /* global cx18 flags */ 648 char in_workq_name[11]; /* "cx18-NN-in" */ 674 /* Used for cx18-alsa module loading */ 678 static inline struct cx18 *to_cx18(struct v4l2_device *v4l2_dev) to_cx18() 680 return container_of(v4l2_dev, struct cx18, v4l2_dev); to_cx18() 683 /* cx18 extensions to be loaded */ 684 extern int (*cx18_ext_init)(struct cx18 *); 696 void cx18_read_eeprom(struct cx18 *cx, struct tveeprom *tv); 699 int cx18_init_on_first_open(struct cx18 *cx); 702 static inline int cx18_raw_vbi(const struct cx18 *cx) cx18_raw_vbi()
|
H A D | cx18-irq.h | 2 * cx18 interrupt handling
|
H A D | cx18-av-audio.c | 2 * cx18 ADEC audio functions 25 #include "cx18-driver.h" 27 static int set_audclk_freq(struct cx18 *cx, u32 freq) set_audclk_freq() 303 void cx18_av_audio_set_path(struct cx18 *cx) cx18_av_audio_set_path() 345 static void set_volume(struct cx18 *cx, int volume) set_volume() 361 static void set_bass(struct cx18 *cx, int bass) set_bass() 367 static void set_treble(struct cx18 *cx, int treble) set_treble() 373 static void set_balance(struct cx18 *cx, int balance) set_balance() 389 static void set_mute(struct cx18 *cx, int mute) set_mute() 418 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_clock_freq() 445 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_audio_s_ctrl()
|
H A D | cx18-av-vbi.c | 2 * cx18 ADEC VBI functions 25 #include "cx18-driver.h" 134 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_g_sliced_fmt() 177 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_raw_fmt() 191 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_s_sliced_fmt() 262 struct cx18 *cx = v4l2_get_subdevdata(sd); cx18_av_decode_vbi_line()
|
H A D | cx18-queue.c | 2 * cx18 buffer queues 25 #include "cx18-driver.h" 26 #include "cx18-queue.h" 27 #include "cx18-streams.h" 28 #include "cx18-scb.h" 29 #include "cx18-io.h" 142 struct cx18 *cx = s->cx; cx18_queue_get_mdl() 279 struct cx18 *cx = s->cx; cx18_load_queues() 349 struct cx18 *cx = s->cx; cx18_stream_alloc() 422 struct cx18 *cx = s->cx; cx18_stream_free()
|
H A D | cx18-av-firmware.c | 2 * cx18 ADEC firmware functions 23 #include "cx18-driver.h" 24 #include "cx18-io.h" 36 static int cx18_av_verifyfw(struct cx18 *cx, const struct firmware *fw) cx18_av_verifyfw() 78 int cx18_av_loadfw(struct cx18 *cx) cx18_av_loadfw()
|
H A D | cx18-cards.h | 2 * cx18 functions to query card hardware 156 int cx18_get_input(struct cx18 *cx, u16 index, struct v4l2_input *input); 157 int cx18_get_audio_input(struct cx18 *cx, u16 index, struct v4l2_audio *input);
|
H A D | cx18-cards.c | 2 * cx18 functions to query card hardware 25 #include "cx18-driver.h" 26 #include "cx18-cards.h" 27 #include "cx18-av-core.h" 28 #include "cx18-i2c.h" 594 int cx18_get_input(struct cx18 *cx, u16 index, struct v4l2_input *input) cx18_get_input() 620 int cx18_get_audio_input(struct cx18 *cx, u16 index, struct v4l2_audio *audio) cx18_get_audio_input()
|
H A D | cx18-queue.h | 2 * cx18 buffer queues
|
H A D | cx18-scb.h | 2 * cx18 System Control Block initialization 26 #include "cx18-mailbox.h" 278 void cx18_init_scb(struct cx18 *cx);
|
H A D | cx23418.h | 2 * cx18 header containing common defines.
|
/linux-4.4.14/include/media/ |
H A D | v4l2-device.h | 93 this function returns 0. If the name ends with a digit (e.g. cx18), 94 then the name will be set to cx18-0 since cx180 looks really odd. */
|
H A D | v4l2-common.h | 153 still used in tuner-simple.c (TUNER_SET_CONFIG), cx18/ivtv (RESET) and
|
/linux-4.4.14/drivers/media/pci/cobalt/ |
H A D | cobalt-driver.h | 4 * Derived from cx18-driver.h
|
H A D | cobalt-i2c.c | 4 * Derived from cx18-i2c.c
|
H A D | cobalt-driver.c | 4 * Derived from cx18-driver.c
|
H A D | cobalt-v4l2.c | 4 * Derived from ivtv-ioctl.c and cx18-fileops.c
|
/linux-4.4.14/drivers/media/pci/ivtv/ |
H A D | ivtv-alsa-main.c | 7 * Portions of this work were sponsored by ONELAN Limited for the cx18 driver
|
H A D | ivtv-alsa-pcm.c | 8 * Portions of this work were sponsored by ONELAN Limited for the cx18 driver
|
H A D | ivtv-driver.c | 293 /* Initialize ivtv-alsa for this instance of the cx18 device */ request_module_async()
|
/linux-4.4.14/Documentation/dvb/ |
H A D | get_dvb_firmware | 28 "opera1", "cx231xx", "cx18", "cx23885", "pvrusb2", "mpc718", 378 sub cx18 { subroutine 404 my $fwfile = "dvb-cx18-mpc718-mt352.fw";
|