Lines Matching refs:hvs

82 			 readl((u32 __iomem *)vc4->hvs->dlist + i + 0),  in vc4_hvs_dump_state()
83 readl((u32 __iomem *)vc4->hvs->dlist + i + 1), in vc4_hvs_dump_state()
84 readl((u32 __iomem *)vc4->hvs->dlist + i + 2), in vc4_hvs_dump_state()
85 readl((u32 __iomem *)vc4->hvs->dlist + i + 3)); in vc4_hvs_dump_state()
141 static int vc4_hvs_upload_linear_kernel(struct vc4_hvs *hvs, in vc4_hvs_upload_linear_kernel() argument
148 ret = drm_mm_insert_node(&hvs->dlist_mm, space, VC4_KERNEL_DWORDS); in vc4_hvs_upload_linear_kernel()
155 dst_kernel = hvs->dlist + space->start; in vc4_hvs_upload_linear_kernel()
174 struct vc4_hvs *hvs = NULL; in vc4_hvs_bind() local
178 hvs = devm_kzalloc(&pdev->dev, sizeof(*hvs), GFP_KERNEL); in vc4_hvs_bind()
179 if (!hvs) in vc4_hvs_bind()
182 hvs->pdev = pdev; in vc4_hvs_bind()
184 hvs->regs = vc4_ioremap_regs(pdev, 0); in vc4_hvs_bind()
185 if (IS_ERR(hvs->regs)) in vc4_hvs_bind()
186 return PTR_ERR(hvs->regs); in vc4_hvs_bind()
188 hvs->dlist = hvs->regs + SCALER_DLIST_START; in vc4_hvs_bind()
190 spin_lock_init(&hvs->mm_lock); in vc4_hvs_bind()
197 drm_mm_init(&hvs->dlist_mm, in vc4_hvs_bind()
206 drm_mm_init(&hvs->lbm_mm, 0, 96 * 1024); in vc4_hvs_bind()
211 ret = vc4_hvs_upload_linear_kernel(hvs, in vc4_hvs_bind()
212 &hvs->mitchell_netravali_filter, in vc4_hvs_bind()
217 vc4->hvs = hvs; in vc4_hvs_bind()
240 if (vc4->hvs->mitchell_netravali_filter.allocated) in vc4_hvs_unbind()
241 drm_mm_remove_node(&vc4->hvs->mitchell_netravali_filter); in vc4_hvs_unbind()
243 drm_mm_takedown(&vc4->hvs->dlist_mm); in vc4_hvs_unbind()
244 drm_mm_takedown(&vc4->hvs->lbm_mm); in vc4_hvs_unbind()
246 vc4->hvs = NULL; in vc4_hvs_unbind()