• Home
  • Raw
  • Download

Lines Matching refs:ldev

202 static void lima_fini_ip(struct lima_device *ldev, int index)  in lima_fini_ip()  argument
205 struct lima_ip *ip = ldev->ip + index; in lima_fini_ip()
290 int lima_device_init(struct lima_device *ldev) in lima_device_init() argument
295 dma_set_coherent_mask(ldev->dev, DMA_BIT_MASK(32)); in lima_device_init()
297 err = lima_clk_init(ldev); in lima_device_init()
301 err = lima_regulator_init(ldev); in lima_device_init()
305 ldev->empty_vm = lima_vm_create(ldev); in lima_device_init()
306 if (!ldev->empty_vm) { in lima_device_init()
311 ldev->va_start = 0; in lima_device_init()
312 if (ldev->id == lima_gpu_mali450) { in lima_device_init()
313 ldev->va_end = LIMA_VA_RESERVE_START; in lima_device_init()
314 ldev->dlbu_cpu = dma_alloc_wc( in lima_device_init()
315 ldev->dev, LIMA_PAGE_SIZE, in lima_device_init()
316 &ldev->dlbu_dma, GFP_KERNEL); in lima_device_init()
317 if (!ldev->dlbu_cpu) { in lima_device_init()
322 ldev->va_end = LIMA_VA_RESERVE_END; in lima_device_init()
324 res = platform_get_resource(ldev->pdev, IORESOURCE_MEM, 0); in lima_device_init()
325 ldev->iomem = devm_ioremap_resource(ldev->dev, res); in lima_device_init()
326 if (IS_ERR(ldev->iomem)) { in lima_device_init()
327 dev_err(ldev->dev, "fail to ioremap iomem\n"); in lima_device_init()
328 err = PTR_ERR(ldev->iomem); in lima_device_init()
333 err = lima_init_ip(ldev, i); in lima_device_init()
338 err = lima_init_gp_pipe(ldev); in lima_device_init()
342 err = lima_init_pp_pipe(ldev); in lima_device_init()
346 dev_info(ldev->dev, "bus rate = %lu\n", clk_get_rate(ldev->clk_bus)); in lima_device_init()
347 dev_info(ldev->dev, "mod rate = %lu", clk_get_rate(ldev->clk_gpu)); in lima_device_init()
352 lima_fini_gp_pipe(ldev); in lima_device_init()
355 lima_fini_ip(ldev, i); in lima_device_init()
357 if (ldev->dlbu_cpu) in lima_device_init()
358 dma_free_wc(ldev->dev, LIMA_PAGE_SIZE, in lima_device_init()
359 ldev->dlbu_cpu, ldev->dlbu_dma); in lima_device_init()
361 lima_vm_put(ldev->empty_vm); in lima_device_init()
363 lima_regulator_fini(ldev); in lima_device_init()
365 lima_clk_fini(ldev); in lima_device_init()
369 void lima_device_fini(struct lima_device *ldev) in lima_device_fini() argument
373 lima_fini_pp_pipe(ldev); in lima_device_fini()
374 lima_fini_gp_pipe(ldev); in lima_device_fini()
377 lima_fini_ip(ldev, i); in lima_device_fini()
379 if (ldev->dlbu_cpu) in lima_device_fini()
380 dma_free_wc(ldev->dev, LIMA_PAGE_SIZE, in lima_device_fini()
381 ldev->dlbu_cpu, ldev->dlbu_dma); in lima_device_fini()
383 lima_vm_put(ldev->empty_vm); in lima_device_fini()
385 lima_regulator_fini(ldev); in lima_device_fini()
387 lima_clk_fini(ldev); in lima_device_fini()