Lines Matching refs:hdlcd

43 	struct hdlcd_drm_private *hdlcd = drm->dev_private;
49 hdlcd->clk = devm_clk_get(drm->dev, "pxlclk");
50 if (IS_ERR(hdlcd->clk))
51 return PTR_ERR(hdlcd->clk);
54 atomic_set(&hdlcd->buffer_underrun_count, 0);
55 atomic_set(&hdlcd->bus_error_count, 0);
56 atomic_set(&hdlcd->vsync_count, 0);
57 atomic_set(&hdlcd->dma_end_count, 0);
61 hdlcd->mmio = devm_ioremap_resource(drm->dev, res);
62 if (IS_ERR(hdlcd->mmio)) {
64 ret = PTR_ERR(hdlcd->mmio);
65 hdlcd->mmio = NULL;
69 version = hdlcd_read(hdlcd, HDLCD_REG_VERSION);
102 drm_crtc_cleanup(&hdlcd->crtc);
128 struct hdlcd_drm_private *hdlcd = drm->dev_private;
131 irq_status = hdlcd_read(hdlcd, HDLCD_REG_INT_STATUS);
135 atomic_inc(&hdlcd->buffer_underrun_count);
138 atomic_inc(&hdlcd->dma_end_count);
141 atomic_inc(&hdlcd->bus_error_count);
144 atomic_inc(&hdlcd->vsync_count);
148 drm_crtc_handle_vblank(&hdlcd->crtc);
151 hdlcd_write(hdlcd, HDLCD_REG_INT_CLEAR, irq_status);
158 struct hdlcd_drm_private *hdlcd = drm->dev_private;
160 hdlcd_write(hdlcd, HDLCD_REG_INT_MASK, 0);
161 hdlcd_write(hdlcd, HDLCD_REG_INT_CLEAR, ~0);
167 struct hdlcd_drm_private *hdlcd = drm->dev_private;
168 unsigned long irq_mask = hdlcd_read(hdlcd, HDLCD_REG_INT_MASK);
173 hdlcd_write(hdlcd, HDLCD_REG_INT_MASK, irq_mask);
180 struct hdlcd_drm_private *hdlcd = drm->dev_private;
182 unsigned long irq_mask = hdlcd_read(hdlcd, HDLCD_REG_INT_MASK);
192 hdlcd_write(hdlcd, HDLCD_REG_INT_MASK, irq_mask);
200 struct hdlcd_drm_private *hdlcd = drm->dev_private;
202 seq_printf(m, "underrun : %d\n", atomic_read(&hdlcd->buffer_underrun_count));
203 seq_printf(m, "dma_end : %d\n", atomic_read(&hdlcd->dma_end_count));
204 seq_printf(m, "bus_error: %d\n", atomic_read(&hdlcd->bus_error_count));
205 seq_printf(m, "vsync : %d\n", atomic_read(&hdlcd->vsync_count));
213 struct hdlcd_drm_private *hdlcd = drm->dev_private;
214 unsigned long clkrate = clk_get_rate(hdlcd->clk);
215 unsigned long mode_clock = hdlcd->crtc.mode.crtc_clock * 1000;
248 .name = "hdlcd",
258 struct hdlcd_drm_private *hdlcd;
261 hdlcd = devm_kzalloc(dev, sizeof(*hdlcd), GFP_KERNEL);
262 if (!hdlcd)
269 drm->dev_private = hdlcd;
278 hdlcd->crtc.port = of_graph_get_port_by_id(dev->of_node, 0);
317 of_node_put(hdlcd->crtc.port);
318 hdlcd->crtc.port = NULL;
332 struct hdlcd_drm_private *hdlcd = drm->dev_private;
337 of_node_put(hdlcd->crtc.port);
338 hdlcd->crtc.port = NULL;
386 { .compatible = "arm,hdlcd" },
413 .name = "hdlcd",