Lines Matching refs:vtg

154 static void vtg_reset(struct sti_vtg *vtg)
156 writel(1, vtg->regs + VTG_DRST_AUTOC);
238 static void vtg_set_mode(struct sti_vtg *vtg,
246 writel(mode->htotal, vtg->regs + VTG_CLKLN);
249 writel(mode->vtotal * 2, vtg->regs + VTG_HLFLN);
252 vtg_set_output_window(vtg->regs, mode);
269 vtg->regs + vtg_regs_offs[i].h_hd);
271 vtg->regs + vtg_regs_offs[i].top_v_vd);
273 vtg->regs + vtg_regs_offs[i].bot_v_vd);
275 vtg->regs + vtg_regs_offs[i].top_v_hd);
277 vtg->regs + vtg_regs_offs[i].bot_v_hd);
281 writel(type, vtg->regs + VTG_MODE);
284 static void vtg_enable_irq(struct sti_vtg *vtg)
287 writel(0xFFFF, vtg->regs + VTG_HOST_ITS_BCLR);
288 writel(0xFFFF, vtg->regs + VTG_HOST_ITM_BCLR);
289 writel(VTG_IRQ_MASK, vtg->regs + VTG_HOST_ITM_BSET);
292 void sti_vtg_set_config(struct sti_vtg *vtg,
296 vtg_set_mode(vtg, VTG_MODE_MASTER, vtg->sync_params, mode);
298 vtg_reset(vtg);
300 vtg_enable_irq(vtg);
340 int sti_vtg_register_client(struct sti_vtg *vtg, struct notifier_block *nb,
343 vtg->crtc = crtc;
344 return raw_notifier_chain_register(&vtg->notifier_list, nb);
347 int sti_vtg_unregister_client(struct sti_vtg *vtg, struct notifier_block *nb)
349 return raw_notifier_chain_unregister(&vtg->notifier_list, nb);
354 struct sti_vtg *vtg = arg;
357 event = (vtg->irq_status & VTG_IRQ_TOP) ?
360 raw_notifier_call_chain(&vtg->notifier_list, event, vtg->crtc);
367 struct sti_vtg *vtg = arg;
369 vtg->irq_status = readl(vtg->regs + VTG_HOST_ITS);
371 writel(vtg->irq_status, vtg->regs + VTG_HOST_ITS_BCLR);
374 readl(vtg->regs + VTG_HOST_ITS);
382 struct sti_vtg *vtg;
386 vtg = devm_kzalloc(dev, sizeof(*vtg), GFP_KERNEL);
387 if (!vtg)
396 vtg->regs = devm_ioremap(dev, res->start, resource_size(res));
397 if (!vtg->regs) {
402 vtg->irq = platform_get_irq(pdev, 0);
403 if (vtg->irq < 0) {
405 return vtg->irq;
408 RAW_INIT_NOTIFIER_HEAD(&vtg->notifier_list);
410 ret = devm_request_threaded_irq(dev, vtg->irq, vtg_irq,
412 dev_name(dev), vtg);
418 platform_set_drvdata(pdev, vtg);
426 { .compatible = "st,vtg", },
433 .name = "sti-vtg",