drivers/media/pci/cobalt/cobalt-alsa-main.c
64
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-alsa-main.c
72
cobalt->instance, s->video_channel);
drivers/media/pci/cobalt/cobalt-alsa-main.c
77
cobalt->instance, s->video_channel);
drivers/media/pci/cobalt/cobalt-alsa-main.c
84
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-alsa-main.c
95
ret = snd_card_new(&cobalt->pci_dev->dev, SNDRV_DEFAULT_IDX1,
drivers/media/pci/cobalt/cobalt-alsa-pcm.c
465
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-alsa-pcm.c
471
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-alsa-pcm.c
475
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-alsa-pcm.c
499
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-alsa-pcm.c
502
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-cpld.c
15
static u16 cpld_read(struct cobalt *cobalt, u32 offset)
drivers/media/pci/cobalt/cobalt-cpld.c
17
return cobalt_bus_read32(cobalt->bar1, ADRS(offset));
drivers/media/pci/cobalt/cobalt-cpld.c
20
static void cpld_write(struct cobalt *cobalt, u32 offset, u16 val)
drivers/media/pci/cobalt/cobalt-cpld.c
22
return cobalt_bus_write32(cobalt->bar1, ADRS(offset), val);
drivers/media/pci/cobalt/cobalt-cpld.c
228
bool cobalt_cpld_set_freq(struct cobalt *cobalt, unsigned f_out)
drivers/media/pci/cobalt/cobalt-cpld.c
25
static void cpld_info_ver3(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-cpld.c
262
cpld_read(cobalt, SI570_CLOCK_CTRL);
drivers/media/pci/cobalt/cobalt-cpld.c
283
cpld_write(cobalt, SI570_CLOCK_CTRL,
drivers/media/pci/cobalt/cobalt-cpld.c
287
cpld_write(cobalt, SI570_REG7, regs[0]);
drivers/media/pci/cobalt/cobalt-cpld.c
288
cpld_write(cobalt, SI570_REG8, regs[1]);
drivers/media/pci/cobalt/cobalt-cpld.c
289
cpld_write(cobalt, SI570_REG9, regs[2]);
drivers/media/pci/cobalt/cobalt-cpld.c
290
cpld_write(cobalt, SI570_REG10, regs[3]);
drivers/media/pci/cobalt/cobalt-cpld.c
291
cpld_write(cobalt, SI570_REG11, regs[4]);
drivers/media/pci/cobalt/cobalt-cpld.c
292
cpld_write(cobalt, SI570_REG12, regs[5]);
drivers/media/pci/cobalt/cobalt-cpld.c
293
cpld_write(cobalt, SI570_CLOCK_CTRL,
drivers/media/pci/cobalt/cobalt-cpld.c
297
cpld_write(cobalt, SI570_CLOCK_CTRL,
drivers/media/pci/cobalt/cobalt-cpld.c
301
read_regs[0] = cpld_read(cobalt, SI570_REG7);
drivers/media/pci/cobalt/cobalt-cpld.c
302
read_regs[1] = cpld_read(cobalt, SI570_REG8);
drivers/media/pci/cobalt/cobalt-cpld.c
303
read_regs[2] = cpld_read(cobalt, SI570_REG9);
drivers/media/pci/cobalt/cobalt-cpld.c
304
read_regs[3] = cpld_read(cobalt, SI570_REG10);
drivers/media/pci/cobalt/cobalt-cpld.c
305
read_regs[4] = cpld_read(cobalt, SI570_REG11);
drivers/media/pci/cobalt/cobalt-cpld.c
306
read_regs[5] = cpld_read(cobalt, SI570_REG12);
drivers/media/pci/cobalt/cobalt-cpld.c
307
cpld_write(cobalt, SI570_CLOCK_CTRL,
drivers/media/pci/cobalt/cobalt-cpld.c
312
cpld_write(cobalt, SI570_CLOCK_CTRL,
drivers/media/pci/cobalt/cobalt-cpld.c
32
cpld_read(cobalt, 0));
drivers/media/pci/cobalt/cobalt-cpld.c
35
cpld_read(cobalt, 0x04));
drivers/media/pci/cobalt/cobalt-cpld.c
38
cpld_read(cobalt, 0x08));
drivers/media/pci/cobalt/cobalt-cpld.c
40
cpld_read(cobalt, 0x0c));
drivers/media/pci/cobalt/cobalt-cpld.c
42
cpld_read(cobalt, 0x10));
drivers/media/pci/cobalt/cobalt-cpld.c
44
cpld_read(cobalt, 0x14));
drivers/media/pci/cobalt/cobalt-cpld.c
46
cpld_read(cobalt, 0x18));
drivers/media/pci/cobalt/cobalt-cpld.c
48
cpld_read(cobalt, 0x1c));
drivers/media/pci/cobalt/cobalt-cpld.c
50
cpld_read(cobalt, 0x20));
drivers/media/pci/cobalt/cobalt-cpld.c
52
cpld_read(cobalt, 0x24));
drivers/media/pci/cobalt/cobalt-cpld.c
55
cpld_read(cobalt, 0x28));
drivers/media/pci/cobalt/cobalt-cpld.c
58
cpld_read(cobalt, 0x2c));
drivers/media/pci/cobalt/cobalt-cpld.c
60
cpld_read(cobalt, 0x30));
drivers/media/pci/cobalt/cobalt-cpld.c
63
cpld_read(cobalt, 0x34) / 4);
drivers/media/pci/cobalt/cobalt-cpld.c
65
cpld_read(cobalt, 0x38) / 4);
drivers/media/pci/cobalt/cobalt-cpld.c
66
rd = cpld_read(cobalt, 0x3c);
drivers/media/pci/cobalt/cobalt-cpld.c
69
rd = cpld_read(cobalt, 0x40);
drivers/media/pci/cobalt/cobalt-cpld.c
72
rd = cpld_read(cobalt, 0x44);
drivers/media/pci/cobalt/cobalt-cpld.c
75
rd = cpld_read(cobalt, 0x48);
drivers/media/pci/cobalt/cobalt-cpld.c
78
rd = cpld_read(cobalt, 0x4c);
drivers/media/pci/cobalt/cobalt-cpld.c
81
rd = cpld_read(cobalt, 0x50);
drivers/media/pci/cobalt/cobalt-cpld.c
84
rd = cpld_read(cobalt, 0x54);
drivers/media/pci/cobalt/cobalt-cpld.c
89
void cobalt_cpld_status(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-cpld.c
91
u32 rev = cpld_read(cobalt, 0x30);
drivers/media/pci/cobalt/cobalt-cpld.c
97
cpld_info_ver3(cobalt);
drivers/media/pci/cobalt/cobalt-cpld.h
14
void cobalt_cpld_status(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-cpld.h
15
bool cobalt_cpld_set_freq(struct cobalt *cobalt, unsigned freq);
drivers/media/pci/cobalt/cobalt-driver.c
104
if (cobalt->have_hsma_rx)
drivers/media/pci/cobalt/cobalt-driver.c
109
if (cobalt->have_hsma_tx)
drivers/media/pci/cobalt/cobalt-driver.c
114
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_EDGE, 0xffffffff);
drivers/media/pci/cobalt/cobalt-driver.c
117
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_MASK, irqs);
drivers/media/pci/cobalt/cobalt-driver.c
120
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_MASK, 0);
drivers/media/pci/cobalt/cobalt-driver.c
126
struct cobalt *cobalt = to_cobalt(sd->v4l2_dev);
drivers/media/pci/cobalt/cobalt-driver.c
130
if (sd == cobalt->streams[i].sd)
drivers/media/pci/cobalt/cobalt-driver.c
139
struct cobalt *cobalt = to_cobalt(sd->v4l2_dev);
drivers/media/pci/cobalt/cobalt-driver.c
141
struct cobalt_stream *s = &cobalt->streams[sd_nr];
drivers/media/pci/cobalt/cobalt-driver.c
149
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
186
void cobalt_pcie_status_show(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
188
struct pci_dev *pci_dev = cobalt->pci_dev;
drivers/media/pci/cobalt/cobalt-driver.c
189
struct pci_dev *pci_bus_dev = cobalt->pci_dev->bus->self;
drivers/media/pci/cobalt/cobalt-driver.c
235
static unsigned pcie_link_get_lanes(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
237
struct pci_dev *pci_dev = cobalt->pci_dev;
drivers/media/pci/cobalt/cobalt-driver.c
246
static unsigned pcie_bus_link_get_lanes(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
248
struct pci_dev *pci_dev = cobalt->pci_dev->bus->self;
drivers/media/pci/cobalt/cobalt-driver.c
257
static void msi_config_show(struct cobalt *cobalt, struct pci_dev *pci_dev)
drivers/media/pci/cobalt/cobalt-driver.c
279
static void cobalt_pci_iounmap(struct cobalt *cobalt, struct pci_dev *pci_dev)
drivers/media/pci/cobalt/cobalt-driver.c
281
if (cobalt->bar0) {
drivers/media/pci/cobalt/cobalt-driver.c
282
pci_iounmap(pci_dev, cobalt->bar0);
drivers/media/pci/cobalt/cobalt-driver.c
283
cobalt->bar0 = NULL;
drivers/media/pci/cobalt/cobalt-driver.c
285
if (cobalt->bar1) {
drivers/media/pci/cobalt/cobalt-driver.c
286
pci_iounmap(pci_dev, cobalt->bar1);
drivers/media/pci/cobalt/cobalt-driver.c
287
cobalt->bar1 = NULL;
drivers/media/pci/cobalt/cobalt-driver.c
291
static void cobalt_free_msi(struct cobalt *cobalt, struct pci_dev *pci_dev)
drivers/media/pci/cobalt/cobalt-driver.c
293
free_irq(pci_dev->irq, (void *)cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
297
static int cobalt_setup_pci(struct cobalt *cobalt, struct pci_dev *pci_dev,
drivers/media/pci/cobalt/cobalt-driver.c
311
pci_read_config_byte(pci_dev, PCI_CLASS_REVISION, &cobalt->card_rev);
drivers/media/pci/cobalt/cobalt-driver.c
312
pci_read_config_word(pci_dev, PCI_DEVICE_ID, &cobalt->device_id);
drivers/media/pci/cobalt/cobalt-driver.c
314
switch (cobalt->device_id) {
drivers/media/pci/cobalt/cobalt-driver.c
323
if (pcie_link_get_lanes(cobalt) != 8) {
drivers/media/pci/cobalt/cobalt-driver.c
325
pcie_link_get_lanes(cobalt));
drivers/media/pci/cobalt/cobalt-driver.c
326
if (pcie_bus_link_get_lanes(cobalt) < 8)
drivers/media/pci/cobalt/cobalt-driver.c
328
pcie_bus_link_get_lanes(cobalt));
drivers/media/pci/cobalt/cobalt-driver.c
329
if (pcie_link_get_lanes(cobalt) != pcie_bus_link_get_lanes(cobalt)) {
drivers/media/pci/cobalt/cobalt-driver.c
350
cobalt_pcie_status_show(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
352
cobalt->bar0 = pci_iomap(pci_dev, 0, 0);
drivers/media/pci/cobalt/cobalt-driver.c
353
cobalt->bar1 = pci_iomap(pci_dev, 1, 0);
drivers/media/pci/cobalt/cobalt-driver.c
354
if (cobalt->bar1 == NULL) {
drivers/media/pci/cobalt/cobalt-driver.c
355
cobalt->bar1 = pci_iomap(pci_dev, 2, 0);
drivers/media/pci/cobalt/cobalt-driver.c
358
if (!cobalt->bar0 || !cobalt->bar1) {
drivers/media/pci/cobalt/cobalt-driver.c
364
ctrl = cobalt_read_bar1(cobalt, COBALT_SYS_CTRL_BASE);
drivers/media/pci/cobalt/cobalt-driver.c
365
cobalt_write_bar1(cobalt, COBALT_SYS_CTRL_BASE, ctrl & ~0xf00);
drivers/media/pci/cobalt/cobalt-driver.c
369
cobalt_set_interrupt(cobalt, false);
drivers/media/pci/cobalt/cobalt-driver.c
376
msi_config_show(cobalt, pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
380
cobalt->v4l2_dev.name, (void *)cobalt)) {
drivers/media/pci/cobalt/cobalt-driver.c
386
omni_sg_dma_init(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
393
cobalt_pci_iounmap(cobalt, pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
397
pci_disable_device(cobalt->pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
401
static int cobalt_hdl_info_get(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
406
cobalt->hdl_info[i] =
drivers/media/pci/cobalt/cobalt-driver.c
407
ioread8(cobalt->bar1 + COBALT_HDL_INFO_BASE + i);
drivers/media/pci/cobalt/cobalt-driver.c
408
cobalt->hdl_info[COBALT_HDL_INFO_SIZE - 1] = '\0';
drivers/media/pci/cobalt/cobalt-driver.c
409
if (strstr(cobalt->hdl_info, COBALT_HDL_SEARCH_STR))
drivers/media/pci/cobalt/cobalt-driver.c
415
static void cobalt_stream_struct_init(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
420
struct cobalt_stream *s = &cobalt->streams[i];
drivers/media/pci/cobalt/cobalt-driver.c
422
s->cobalt = cobalt;
drivers/media/pci/cobalt/cobalt-driver.c
433
s->dma_channel = i + cobalt->first_fifo_channel;
drivers/media/pci/cobalt/cobalt-driver.c
468
static int cobalt_subdevs_init(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
490
struct cobalt_stream *s = cobalt->streams;
drivers/media/pci/cobalt/cobalt-driver.c
508
s[i].i2c_adap = &cobalt->i2c_adap[i];
drivers/media/pci/cobalt/cobalt-driver.c
511
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
513
s[i].sd = v4l2_i2c_new_subdev_board(&cobalt->v4l2_dev,
drivers/media/pci/cobalt/cobalt-driver.c
533
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
536
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
540
cobalt->streams[i + COBALT_AUDIO_IN_STREAM].is_dummy = false;
drivers/media/pci/cobalt/cobalt-driver.c
545
static int cobalt_subdevs_hsma_init(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.c
598
struct cobalt_stream *s = &cobalt->streams[COBALT_HSMA_IN_NODE];
drivers/media/pci/cobalt/cobalt-driver.c
600
s->i2c_adap = &cobalt->i2c_adap[COBALT_NUM_ADAPTERS - 1];
drivers/media/pci/cobalt/cobalt-driver.c
603
cobalt_s_bit_sysctrl(cobalt, COBALT_SYS_CTRL_NRESET_TO_HDMI_BIT(4), 1);
drivers/media/pci/cobalt/cobalt-driver.c
605
s->sd = v4l2_i2c_new_subdev_board(&cobalt->v4l2_dev,
drivers/media/pci/cobalt/cobalt-driver.c
616
cobalt->have_hsma_rx = true;
drivers/media/pci/cobalt/cobalt-driver.c
619
cobalt->streams[4 + COBALT_AUDIO_IN_STREAM].is_dummy = false;
drivers/media/pci/cobalt/cobalt-driver.c
621
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
624
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
629
cobalt_s_bit_sysctrl(cobalt, COBALT_SYS_CTRL_NRESET_TO_HDMI_BIT(4), 0);
drivers/media/pci/cobalt/cobalt-driver.c
630
cobalt_s_bit_sysctrl(cobalt, COBALT_SYS_CTRL_PWRDN0_TO_HSMA_TX_BIT, 0);
drivers/media/pci/cobalt/cobalt-driver.c
632
s->i2c_adap = &cobalt->i2c_adap[COBALT_NUM_ADAPTERS - 1];
drivers/media/pci/cobalt/cobalt-driver.c
633
s->sd = v4l2_i2c_new_subdev_board(&cobalt->v4l2_dev,
drivers/media/pci/cobalt/cobalt-driver.c
637
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
639
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
641
cobalt_s_bit_sysctrl(cobalt,
drivers/media/pci/cobalt/cobalt-driver.c
643
cobalt->have_hsma_tx = true;
drivers/media/pci/cobalt/cobalt-driver.c
650
cobalt->streams[COBALT_AUDIO_OUT_STREAM].is_dummy = false;
drivers/media/pci/cobalt/cobalt-driver.c
659
struct cobalt *cobalt;
drivers/media/pci/cobalt/cobalt-driver.c
666
cobalt = kzalloc_obj(struct cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
667
if (cobalt == NULL)
drivers/media/pci/cobalt/cobalt-driver.c
669
cobalt->pci_dev = pci_dev;
drivers/media/pci/cobalt/cobalt-driver.c
670
cobalt->instance = i;
drivers/media/pci/cobalt/cobalt-driver.c
671
mutex_init(&cobalt->pci_lock);
drivers/media/pci/cobalt/cobalt-driver.c
673
retval = v4l2_device_register(&pci_dev->dev, &cobalt->v4l2_dev);
drivers/media/pci/cobalt/cobalt-driver.c
676
cobalt->instance);
drivers/media/pci/cobalt/cobalt-driver.c
677
kfree(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
680
snprintf(cobalt->v4l2_dev.name, sizeof(cobalt->v4l2_dev.name),
drivers/media/pci/cobalt/cobalt-driver.c
681
"cobalt-%d", cobalt->instance);
drivers/media/pci/cobalt/cobalt-driver.c
682
cobalt->v4l2_dev.notify = cobalt_notify;
drivers/media/pci/cobalt/cobalt-driver.c
683
cobalt_info("Initializing card %d\n", cobalt->instance);
drivers/media/pci/cobalt/cobalt-driver.c
685
cobalt->irq_work_queues =
drivers/media/pci/cobalt/cobalt-driver.c
686
create_singlethread_workqueue(cobalt->v4l2_dev.name);
drivers/media/pci/cobalt/cobalt-driver.c
687
if (cobalt->irq_work_queues == NULL) {
drivers/media/pci/cobalt/cobalt-driver.c
693
INIT_WORK(&cobalt->irq_work_queue, cobalt_irq_work_handler);
drivers/media/pci/cobalt/cobalt-driver.c
696
retval = cobalt_setup_pci(cobalt, pci_dev, pci_id);
drivers/media/pci/cobalt/cobalt-driver.c
701
if (cobalt_hdl_info_get(cobalt))
drivers/media/pci/cobalt/cobalt-driver.c
704
cobalt_info("%s", cobalt->hdl_info);
drivers/media/pci/cobalt/cobalt-driver.c
706
retval = cobalt_i2c_init(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
710
cobalt_stream_struct_init(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
712
retval = cobalt_subdevs_init(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
716
if (!(cobalt_read_bar1(cobalt, COBALT_SYS_STAT_BASE) &
drivers/media/pci/cobalt/cobalt-driver.c
718
retval = cobalt_subdevs_hsma_init(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
723
retval = cobalt_nodes_register(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
728
cobalt_set_interrupt(cobalt, true);
drivers/media/pci/cobalt/cobalt-driver.c
729
v4l2_device_call_all(&cobalt->v4l2_dev, 0, core,
drivers/media/pci/cobalt/cobalt-driver.c
734
cobalt_flash_probe(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
739
cobalt_i2c_exit(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
740
cobalt_s_bit_sysctrl(cobalt, COBALT_SYS_CTRL_HSMA_TX_ENABLE_BIT, 0);
drivers/media/pci/cobalt/cobalt-driver.c
742
cobalt_free_msi(cobalt, pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
743
cobalt_pci_iounmap(cobalt, pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
744
pci_release_regions(cobalt->pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
745
pci_disable_device(cobalt->pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
747
destroy_workqueue(cobalt->irq_work_queues);
drivers/media/pci/cobalt/cobalt-driver.c
751
v4l2_device_unregister(&cobalt->v4l2_dev);
drivers/media/pci/cobalt/cobalt-driver.c
752
kfree(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
759
struct cobalt *cobalt = to_cobalt(v4l2_dev);
drivers/media/pci/cobalt/cobalt-driver.c
762
cobalt_flash_remove(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
763
cobalt_set_interrupt(cobalt, false);
drivers/media/pci/cobalt/cobalt-driver.c
764
flush_workqueue(cobalt->irq_work_queues);
drivers/media/pci/cobalt/cobalt-driver.c
765
cobalt_nodes_unregister(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
767
struct v4l2_subdev *sd = cobalt->streams[i].sd;
drivers/media/pci/cobalt/cobalt-driver.c
776
cobalt_i2c_exit(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
777
cobalt_free_msi(cobalt, pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
778
cobalt_s_bit_sysctrl(cobalt, COBALT_SYS_CTRL_HSMA_TX_ENABLE_BIT, 0);
drivers/media/pci/cobalt/cobalt-driver.c
779
cobalt_pci_iounmap(cobalt, pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
780
pci_release_regions(cobalt->pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
781
pci_disable_device(cobalt->pci_dev);
drivers/media/pci/cobalt/cobalt-driver.c
782
destroy_workqueue(cobalt->irq_work_queues);
drivers/media/pci/cobalt/cobalt-driver.c
787
kfree(cobalt);
drivers/media/pci/cobalt/cobalt-driver.c
87
static void cobalt_set_interrupt(struct cobalt *cobalt, bool enable)
drivers/media/pci/cobalt/cobalt-driver.h
124
#define COBALT_CVI(cobalt, c) \
drivers/media/pci/cobalt/cobalt-driver.h
125
(cobalt->bar1 + COBALT_VID_BASE + (c) * COBALT_VID_SIZE)
drivers/media/pci/cobalt/cobalt-driver.h
126
#define COBALT_CVI_VMR(cobalt, c) \
drivers/media/pci/cobalt/cobalt-driver.h
127
(cobalt->bar1 + COBALT_VID_BASE + (c) * COBALT_VID_SIZE + 0x100)
drivers/media/pci/cobalt/cobalt-driver.h
128
#define COBALT_CVI_EVCNT(cobalt, c) \
drivers/media/pci/cobalt/cobalt-driver.h
129
(cobalt->bar1 + COBALT_VID_BASE + (c) * COBALT_VID_SIZE + 0x200)
drivers/media/pci/cobalt/cobalt-driver.h
130
#define COBALT_CVI_FREEWHEEL(cobalt, c) \
drivers/media/pci/cobalt/cobalt-driver.h
131
(cobalt->bar1 + COBALT_VID_BASE + (c) * COBALT_VID_SIZE + 0x300)
drivers/media/pci/cobalt/cobalt-driver.h
132
#define COBALT_CVI_CLK_LOSS(cobalt, c) \
drivers/media/pci/cobalt/cobalt-driver.h
133
(cobalt->bar1 + COBALT_VID_BASE + (c) * COBALT_VID_SIZE + 0x400)
drivers/media/pci/cobalt/cobalt-driver.h
134
#define COBALT_CVI_PACKER(cobalt, c) \
drivers/media/pci/cobalt/cobalt-driver.h
135
(cobalt->bar1 + COBALT_VID_BASE + (c) * COBALT_VID_SIZE + 0x500)
drivers/media/pci/cobalt/cobalt-driver.h
137
#define COBALT_TX_BASE(cobalt) (cobalt->bar1 + COBALT_VID_BASE + 0x5000)
drivers/media/pci/cobalt/cobalt-driver.h
158
#define cobalt_err(fmt, arg...) v4l2_err(&cobalt->v4l2_dev, fmt, ## arg)
drivers/media/pci/cobalt/cobalt-driver.h
159
#define cobalt_warn(fmt, arg...) v4l2_warn(&cobalt->v4l2_dev, fmt, ## arg)
drivers/media/pci/cobalt/cobalt-driver.h
160
#define cobalt_info(fmt, arg...) v4l2_info(&cobalt->v4l2_dev, fmt, ## arg)
drivers/media/pci/cobalt/cobalt-driver.h
162
v4l2_dbg(level, cobalt_debug, &cobalt->v4l2_dev, fmt, ## arg)
drivers/media/pci/cobalt/cobalt-driver.h
164
struct cobalt;
drivers/media/pci/cobalt/cobalt-driver.h
169
struct cobalt *cobalt;
drivers/media/pci/cobalt/cobalt-driver.h
243
struct cobalt *cobalt;
drivers/media/pci/cobalt/cobalt-driver.h
292
static inline struct cobalt *to_cobalt(struct v4l2_device *v4l2_dev)
drivers/media/pci/cobalt/cobalt-driver.h
294
return container_of(v4l2_dev, struct cobalt, v4l2_dev);
drivers/media/pci/cobalt/cobalt-driver.h
297
static inline void cobalt_write_bar0(struct cobalt *cobalt, u32 reg, u32 val)
drivers/media/pci/cobalt/cobalt-driver.h
299
iowrite32(val, cobalt->bar0 + reg);
drivers/media/pci/cobalt/cobalt-driver.h
302
static inline u32 cobalt_read_bar0(struct cobalt *cobalt, u32 reg)
drivers/media/pci/cobalt/cobalt-driver.h
304
return ioread32(cobalt->bar0 + reg);
drivers/media/pci/cobalt/cobalt-driver.h
307
static inline void cobalt_write_bar1(struct cobalt *cobalt, u32 reg, u32 val)
drivers/media/pci/cobalt/cobalt-driver.h
309
iowrite32(val, cobalt->bar1 + reg);
drivers/media/pci/cobalt/cobalt-driver.h
312
static inline u32 cobalt_read_bar1(struct cobalt *cobalt, u32 reg)
drivers/media/pci/cobalt/cobalt-driver.h
314
return ioread32(cobalt->bar1 + reg);
drivers/media/pci/cobalt/cobalt-driver.h
317
static inline u32 cobalt_g_sysctrl(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.h
319
return cobalt_read_bar1(cobalt, COBALT_SYS_CTRL_BASE);
drivers/media/pci/cobalt/cobalt-driver.h
322
static inline void cobalt_s_bit_sysctrl(struct cobalt *cobalt,
drivers/media/pci/cobalt/cobalt-driver.h
327
mutex_lock(&cobalt->pci_lock);
drivers/media/pci/cobalt/cobalt-driver.h
328
ctrl = cobalt_read_bar1(cobalt, COBALT_SYS_CTRL_BASE);
drivers/media/pci/cobalt/cobalt-driver.h
329
cobalt_write_bar1(cobalt, COBALT_SYS_CTRL_BASE,
drivers/media/pci/cobalt/cobalt-driver.h
331
mutex_unlock(&cobalt->pci_lock);
drivers/media/pci/cobalt/cobalt-driver.h
334
static inline u32 cobalt_g_sysstat(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-driver.h
336
return cobalt_read_bar1(cobalt, COBALT_SYS_STAT_BASE);
drivers/media/pci/cobalt/cobalt-driver.h
371
void cobalt_pcie_status_show(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-flash.c
105
mtd->dev.parent = &cobalt->pci_dev->dev;
drivers/media/pci/cobalt/cobalt-flash.c
110
void cobalt_flash_remove(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-flash.c
112
if (cobalt->mtd) {
drivers/media/pci/cobalt/cobalt-flash.c
113
mtd_device_unregister(cobalt->mtd);
drivers/media/pci/cobalt/cobalt-flash.c
114
map_destroy(cobalt->mtd);
drivers/media/pci/cobalt/cobalt-flash.c
85
int cobalt_flash_probe(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-flash.c
91
map->virt = cobalt->bar1;
drivers/media/pci/cobalt/cobalt-flash.c
98
cobalt->mtd = mtd;
drivers/media/pci/cobalt/cobalt-flash.h
14
int cobalt_flash_probe(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-flash.h
15
void cobalt_flash_remove(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-i2c.c
100
(cobalt->bar1 + COBALT_I2C_HSMA_BASE);
drivers/media/pci/cobalt/cobalt-i2c.c
305
int cobalt_i2c_init(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-i2c.c
319
cobalt_i2c_regs(cobalt, i);
drivers/media/pci/cobalt/cobalt-i2c.c
320
struct i2c_adapter *adap = &cobalt->i2c_adap[i];
drivers/media/pci/cobalt/cobalt-i2c.c
349
cobalt->i2c_data[i].cobalt = cobalt;
drivers/media/pci/cobalt/cobalt-i2c.c
350
cobalt->i2c_data[i].regs = regs;
drivers/media/pci/cobalt/cobalt-i2c.c
353
adap->algo_data = &cobalt->i2c_data[i];
drivers/media/pci/cobalt/cobalt-i2c.c
356
" #%d-%d", cobalt->instance, i);
drivers/media/pci/cobalt/cobalt-i2c.c
357
i2c_set_adapdata(adap, &cobalt->v4l2_dev);
drivers/media/pci/cobalt/cobalt-i2c.c
358
adap->dev.parent = &cobalt->pci_dev->dev;
drivers/media/pci/cobalt/cobalt-i2c.c
366
i2c_del_adapter(&cobalt->i2c_adap[i]);
drivers/media/pci/cobalt/cobalt-i2c.c
374
void cobalt_i2c_exit(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-i2c.c
381
cobalt_err("unregistered bus %s\n", cobalt->i2c_adap[i].name);
drivers/media/pci/cobalt/cobalt-i2c.c
382
i2c_del_adapter(&cobalt->i2c_adap[i]);
drivers/media/pci/cobalt/cobalt-i2c.c
82
cobalt_i2c_regs(struct cobalt *cobalt, unsigned idx)
drivers/media/pci/cobalt/cobalt-i2c.c
88
(cobalt->bar1 + COBALT_I2C_0_BASE);
drivers/media/pci/cobalt/cobalt-i2c.c
91
(cobalt->bar1 + COBALT_I2C_1_BASE);
drivers/media/pci/cobalt/cobalt-i2c.c
94
(cobalt->bar1 + COBALT_I2C_2_BASE);
drivers/media/pci/cobalt/cobalt-i2c.c
97
(cobalt->bar1 + COBALT_I2C_3_BASE);
drivers/media/pci/cobalt/cobalt-i2c.h
12
int cobalt_i2c_init(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-i2c.h
13
void cobalt_i2c_exit(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-irq.c
136
struct cobalt *cobalt = (struct cobalt *)dev_id;
drivers/media/pci/cobalt/cobalt-irq.c
138
cobalt_read_bar0(cobalt, DMA_INTERRUPT_STATUS_REG) & 0xffff;
drivers/media/pci/cobalt/cobalt-irq.c
139
u32 mask = cobalt_read_bar1(cobalt, COBALT_SYS_STAT_MASK);
drivers/media/pci/cobalt/cobalt-irq.c
140
u32 edge = cobalt_read_bar1(cobalt, COBALT_SYS_STAT_EDGE);
drivers/media/pci/cobalt/cobalt-irq.c
144
cobalt_write_bar0(cobalt, DMA_INTERRUPT_STATUS_REG, dma_interrupt);
drivers/media/pci/cobalt/cobalt-irq.c
145
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_MASK, mask & ~edge);
drivers/media/pci/cobalt/cobalt-irq.c
146
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_EDGE, edge);
drivers/media/pci/cobalt/cobalt-irq.c
149
struct cobalt_stream *s = &cobalt->streams[i];
drivers/media/pci/cobalt/cobalt-irq.c
153
cobalt->irq_dma[i]++;
drivers/media/pci/cobalt/cobalt-irq.c
159
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_MASK,
drivers/media/pci/cobalt/cobalt-irq.c
169
cobalt->irq_full_fifo++;
drivers/media/pci/cobalt/cobalt-irq.c
17
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-irq.c
173
queue_work(cobalt->irq_work_queues, &cobalt->irq_work_queue);
drivers/media/pci/cobalt/cobalt-irq.c
181
cobalt->irq_adv1++;
drivers/media/pci/cobalt/cobalt-irq.c
187
cobalt->irq_adv2++;
drivers/media/pci/cobalt/cobalt-irq.c
189
cobalt->irq_advout++;
drivers/media/pci/cobalt/cobalt-irq.c
191
cobalt->irq_dma_tot++;
drivers/media/pci/cobalt/cobalt-irq.c
193
cobalt->irq_none++;
drivers/media/pci/cobalt/cobalt-irq.c
194
dma_interrupt = cobalt_read_bar0(cobalt, DMA_INTERRUPT_STATUS_REG);
drivers/media/pci/cobalt/cobalt-irq.c
20
COBALT_CVI_FREEWHEEL(s->cobalt, rx);
drivers/media/pci/cobalt/cobalt-irq.c
201
struct cobalt *cobalt =
drivers/media/pci/cobalt/cobalt-irq.c
202
container_of(work, struct cobalt, irq_work_queue);
drivers/media/pci/cobalt/cobalt-irq.c
206
struct cobalt_stream *s = &cobalt->streams[i];
drivers/media/pci/cobalt/cobalt-irq.c
211
v4l2_subdev_call(cobalt->streams[i].sd, core,
drivers/media/pci/cobalt/cobalt-irq.c
213
mask = cobalt_read_bar1(cobalt, COBALT_SYS_STAT_MASK);
drivers/media/pci/cobalt/cobalt-irq.c
214
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_MASK,
drivers/media/pci/cobalt/cobalt-irq.c
22
COBALT_CVI_VMR(s->cobalt, rx);
drivers/media/pci/cobalt/cobalt-irq.c
220
void cobalt_irq_log_status(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-irq.c
226
cobalt->irq_adv1, cobalt->irq_adv2, cobalt->irq_advout,
drivers/media/pci/cobalt/cobalt-irq.c
227
cobalt->irq_none, cobalt->irq_full_fifo);
drivers/media/pci/cobalt/cobalt-irq.c
228
cobalt_info("irq: dma_tot=%u (", cobalt->irq_dma_tot);
drivers/media/pci/cobalt/cobalt-irq.c
230
pr_cont("%s%u", i ? "/" : "", cobalt->irq_dma[i]);
drivers/media/pci/cobalt/cobalt-irq.c
232
cobalt->irq_dma_tot = cobalt->irq_adv1 = cobalt->irq_adv2 = 0;
drivers/media/pci/cobalt/cobalt-irq.c
233
cobalt->irq_advout = cobalt->irq_none = cobalt->irq_full_fifo = 0;
drivers/media/pci/cobalt/cobalt-irq.c
234
memset(cobalt->irq_dma, 0, sizeof(cobalt->irq_dma));
drivers/media/pci/cobalt/cobalt-irq.c
236
mask = cobalt_read_bar1(cobalt, COBALT_SYS_STAT_MASK);
drivers/media/pci/cobalt/cobalt-irq.c
237
cobalt_write_bar1(cobalt, COBALT_SYS_STAT_MASK,
drivers/media/pci/cobalt/cobalt-irq.c
24
COBALT_CVI(s->cobalt, rx);
drivers/media/pci/cobalt/cobalt-irq.c
26
COBALT_CVI_CLK_LOSS(s->cobalt, rx);
drivers/media/pci/cobalt/cobalt-irq.h
13
void cobalt_irq_log_status(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-omnitek.c
107
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-omnitek.c
117
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-omnitek.c
123
int omni_sg_dma_init(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-omnitek.c
128
cobalt->first_fifo_channel = 0;
drivers/media/pci/cobalt/cobalt-omnitek.c
129
cobalt->dma_channels = capa & 0xf;
drivers/media/pci/cobalt/cobalt-omnitek.c
131
cobalt->pci_32_bit = false;
drivers/media/pci/cobalt/cobalt-omnitek.c
133
cobalt->pci_32_bit = true;
drivers/media/pci/cobalt/cobalt-omnitek.c
135
for (i = 0; i < cobalt->dma_channels; i++) {
drivers/media/pci/cobalt/cobalt-omnitek.c
143
cobalt->first_fifo_channel++;
drivers/media/pci/cobalt/cobalt-omnitek.c
145
show_dma_capability(cobalt);
drivers/media/pci/cobalt/cobalt-omnitek.c
149
int descriptor_list_create(struct cobalt *cobalt,
drivers/media/pci/cobalt/cobalt-omnitek.c
176
if (cobalt->pci_32_bit) {
drivers/media/pci/cobalt/cobalt-omnitek.c
42
#define BASE (cobalt->bar0)
drivers/media/pci/cobalt/cobalt-omnitek.c
65
static void show_dma_capability(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-omnitek.c
98
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-omnitek.h
29
int omni_sg_dma_init(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-omnitek.h
34
int descriptor_list_create(struct cobalt *cobalt,
drivers/media/pci/cobalt/cobalt-v4l2.c
1198
static int cobalt_node_register(struct cobalt *cobalt, int node)
drivers/media/pci/cobalt/cobalt-v4l2.c
1202
struct cobalt_stream *s = cobalt->streams + node;
drivers/media/pci/cobalt/cobalt-v4l2.c
1211
"%s-%d", cobalt->v4l2_dev.name, node);
drivers/media/pci/cobalt/cobalt-v4l2.c
1232
vdev->v4l2_dev = &cobalt->v4l2_dev;
drivers/media/pci/cobalt/cobalt-v4l2.c
1263
q->dev = &cobalt->pci_dev->dev;
drivers/media/pci/cobalt/cobalt-v4l2.c
1289
int cobalt_nodes_register(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-v4l2.c
1295
ret = cobalt_node_register(cobalt, node);
drivers/media/pci/cobalt/cobalt-v4l2.c
1303
void cobalt_nodes_unregister(struct cobalt *cobalt)
drivers/media/pci/cobalt/cobalt-v4l2.c
1309
struct cobalt_stream *s = cobalt->streams + node;
drivers/media/pci/cobalt/cobalt-v4l2.c
141
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
144
COBALT_TX_BASE(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
154
if (!cobalt_cpld_set_freq(cobalt, clk)) {
drivers/media/pci/cobalt/cobalt-v4l2.c
199
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
218
packer = COBALT_CVI_PACKER(cobalt, ch);
drivers/media/pci/cobalt/cobalt-v4l2.c
249
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
252
COBALT_CVI_EVCNT(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
262
COBALT_TX_BASE(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
280
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
285
struct m00389_cvi_regmap __iomem *cvi = COBALT_CVI(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
286
struct m00460_evcnt_regmap __iomem *evcnt = COBALT_CVI_EVCNT(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
301
fw = COBALT_CVI_FREEWHEEL(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
302
vmr = COBALT_CVI_VMR(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
303
clkloss = COBALT_CVI_CLK_LOSS(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
346
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
353
COBALT_CVI_EVCNT(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
359
COBALT_TX_BASE(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
380
cobalt_write_bar0(cobalt, DMA_INTERRUPT_STATUS_REG,
drivers/media/pci/cobalt/cobalt-v4l2.c
387
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
410
fw = COBALT_CVI_FREEWHEEL(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
411
vmr = COBALT_CVI_VMR(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
412
clkloss = COBALT_CVI_CLK_LOSS(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
432
static int cobalt_cobaltc(struct cobalt *cobalt, unsigned int cmd, void *arg)
drivers/media/pci/cobalt/cobalt-v4l2.c
435
void __iomem *adrs = cobalt->bar1 + regs->reg;
drivers/media/pci/cobalt/cobalt-v4l2.c
454
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
456
return cobalt_cobaltc(cobalt, VIDIOC_DBG_G_REGISTER, reg);
drivers/media/pci/cobalt/cobalt-v4l2.c
463
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
465
return cobalt_cobaltc(cobalt, VIDIOC_DBG_S_REGISTER,
drivers/media/pci/cobalt/cobalt-v4l2.c
474
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
479
"PCIe:%s", pci_name(cobalt->pci_dev));
drivers/media/pci/cobalt/cobalt-v4l2.c
482
if (cobalt->have_hsma_tx)
drivers/media/pci/cobalt/cobalt-v4l2.c
495
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
499
cvi = COBALT_CVI(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
500
vmr = COBALT_CVI_VMR(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
501
fw = COBALT_CVI_FREEWHEEL(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
502
clkloss = COBALT_CVI_CLK_LOSS(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
503
packer = COBALT_CVI_PACKER(cobalt, rx);
drivers/media/pci/cobalt/cobalt-v4l2.c
55
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
568
struct cobalt *cobalt = s->cobalt;
drivers/media/pci/cobalt/cobalt-v4l2.c
570
COBALT_TX_BASE(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
573
cobalt_info("%s", cobalt->hdl_info);
drivers/media/pci/cobalt/cobalt-v4l2.c
575
cobalt_g_sysctrl(cobalt),
drivers/media/pci/cobalt/cobalt-v4l2.c
576
cobalt_g_sysstat(cobalt));
drivers/media/pci/cobalt/cobalt-v4l2.c
579
cobalt_pcie_status_show(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
580
cobalt_cpld_status(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
581
cobalt_irq_log_status(cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.c
74
desc->dev = &cobalt->pci_dev->dev;
drivers/media/pci/cobalt/cobalt-v4l2.c
80
ret = descriptor_list_create(cobalt, sg_desc->sgl,
drivers/media/pci/cobalt/cobalt-v4l2.h
10
void cobalt_nodes_unregister(struct cobalt *cobalt);
drivers/media/pci/cobalt/cobalt-v4l2.h
9
int cobalt_nodes_register(struct cobalt *cobalt);