• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/video/

Lines Matching defs:mx3_fbi

319 static void sdc_enable_channel(struct mx3fb_info *mx3_fbi)
321 struct mx3fb_data *mx3fb = mx3_fbi->mx3fb;
322 struct idmac_channel *ichan = mx3_fbi->idmac_channel;
327 if (mx3_fbi->txd)
328 dev_dbg(mx3fb->dev, "mx3fbi %p, desc %p, sg %p\n", mx3_fbi,
329 to_tx_desc(mx3_fbi->txd), to_tx_desc(mx3_fbi->txd)->sg);
331 dev_dbg(mx3fb->dev, "mx3fbi %p, txd = NULL\n", mx3_fbi);
334 if (mx3_fbi->cookie < 0) {
335 mx3_fbi->txd = dma_chan->device->device_prep_slave_sg(dma_chan,
336 &mx3_fbi->sg[0], 1, DMA_TO_DEVICE, DMA_PREP_INTERRUPT);
337 if (!mx3_fbi->txd) {
343 mx3_fbi->txd->callback_param = mx3_fbi->txd;
344 mx3_fbi->txd->callback = mx3fb_dma_done;
346 cookie = mx3_fbi->txd->tx_submit(mx3_fbi->txd);
348 mx3_fbi->txd, cookie, list_empty(&ichan->queue) ? '-' : '+');
350 if (!mx3_fbi->txd || !mx3_fbi->txd->tx_submit) {
358 cookie = mx3_fbi->cookie;
360 mx3_fbi->txd, cookie, list_empty(&ichan->queue) ? '-' : '+');
365 sdc_fb_init(mx3_fbi);
366 mx3_fbi->cookie = cookie;
378 static void sdc_disable_channel(struct mx3fb_info *mx3_fbi)
380 struct mx3fb_data *mx3fb = mx3_fbi->mx3fb;
386 enabled = sdc_fb_uninit(mx3_fbi);
390 mx3_fbi->txd->chan->device->device_control(mx3_fbi->txd->chan,
392 mx3_fbi->txd = NULL;
393 mx3_fbi->cookie = -EINVAL;
710 struct mx3fb_info *mx3_fbi = mx3fb->fbi->par;
717 complete(&mx3_fbi->flip_cmpl);
725 struct mx3fb_info *mx3_fbi = fbi->par;
726 struct mx3fb_data *mx3fb = mx3_fbi->mx3fb;
727 struct idmac_channel *ichan = mx3_fbi->idmac_channel;
729 struct scatterlist *sg = mx3_fbi->sg;
732 if (mx3_fbi->txd)
733 sdc_disable_channel(mx3_fbi);
754 if (mx3_fbi->ipu_ch == IDMAC_SDC_0) {
795 sdc_set_window_pos(mx3fb, mx3_fbi->ipu_ch, 0, 0);
797 mx3_fbi->cur_ipu_buf = 0;
804 if (mx3_fbi->blank == FB_BLANK_UNBLANK)
805 sdc_enable_channel(mx3_fbi);
817 struct mx3fb_info *mx3_fbi = fbi->par;
818 struct mx3fb_data *mx3fb = mx3_fbi->mx3fb;
819 struct idmac_channel *ichan = mx3_fbi->idmac_channel;
824 mutex_lock(&mx3_fbi->mutex);
828 mutex_unlock(&mx3_fbi->mutex);
840 struct mx3fb_info *mx3_fbi = fbi->par;
925 var->sync |= mx3_fbi->sync;
926 mx3_fbi->sync |= var->sync;
942 struct mx3fb_info *mx3_fbi = fbi->par;
948 mutex_lock(&mx3_fbi->mutex);
979 mutex_unlock(&mx3_fbi->mutex);
986 struct mx3fb_info *mx3_fbi = fbi->par;
987 struct mx3fb_data *mx3fb = mx3_fbi->mx3fb;
989 mx3_fbi->blank = blank;
1000 sdc_disable_channel(mx3_fbi);
1003 sdc_enable_channel(mx3_fbi);
1014 struct mx3fb_info *mx3_fbi = fbi->par;
1019 if (mx3_fbi->blank == blank)
1022 mutex_lock(&mx3_fbi->mutex);
1024 mutex_unlock(&mx3_fbi->mutex);
1039 struct mx3fb_info *mx3_fbi = fbi->par;
1044 struct scatterlist *sg = mx3_fbi->sg;
1045 struct dma_chan *dma_chan = &mx3_fbi->idmac_channel->dma_chan;
1050 list_empty(&mx3_fbi->idmac_channel->queue) ? '-' : '+');
1069 mutex_lock(&mx3_fbi->mutex);
1076 mx3_fbi->cur_ipu_buf, base);
1083 init_completion(&mx3_fbi->flip_cmpl);
1084 enable_irq(mx3_fbi->idmac_channel->eof_irq);
1086 ret = wait_for_completion_timeout(&mx3_fbi->flip_cmpl, HZ / 10);
1088 mutex_unlock(&mx3_fbi->mutex);
1091 disable_irq(mx3_fbi->idmac_channel->eof_irq);
1095 mx3_fbi->cur_ipu_buf = !mx3_fbi->cur_ipu_buf;
1097 sg_dma_address(&sg[mx3_fbi->cur_ipu_buf]) = base;
1098 sg_set_page(&sg[mx3_fbi->cur_ipu_buf],
1102 if (mx3_fbi->txd)
1103 async_tx_ack(mx3_fbi->txd);
1106 mx3_fbi->cur_ipu_buf, 1, DMA_TO_DEVICE, DMA_PREP_INTERRUPT);
1110 mutex_unlock(&mx3_fbi->mutex);
1126 mx3_fbi->cur_ipu_buf, base);
1127 mutex_unlock(&mx3_fbi->mutex);
1131 mx3_fbi->txd = txd;
1141 mutex_unlock(&mx3_fbi->mutex);
1177 struct mx3fb_info *mx3_fbi = mx3fb->fbi->par;
1183 if (mx3_fbi->blank == FB_BLANK_UNBLANK) {
1184 sdc_disable_channel(mx3_fbi);
1197 struct mx3fb_info *mx3_fbi = mx3fb->fbi->par;
1199 if (mx3_fbi->blank == FB_BLANK_UNBLANK) {
1200 sdc_enable_channel(mx3_fbi);
1517 struct mx3fb_info *mx3_fbi = fbi->par;
1520 chan = &mx3_fbi->idmac_channel->dma_chan;