OSDN Git Service

fbdev/sh7760fb: Alloc DMA memory from hardware device
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 13 Jun 2023 11:07:02 +0000 (13:07 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Tue, 27 Jun 2023 07:58:50 +0000 (09:58 +0200)
Pass the hardware device to the DMA helpers dma_alloc_coherent() and
dma_free_coherent(). The fbdev device that is currently being used is
a software device and does not provide DMA memory. Also update the
related dev_*() output statements similarly.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230613110953.24176-28-tzimmermann@suse.de
drivers/video/fbdev/sh7760fb.c

index 1078419..1b4ccd7 100644 (file)
@@ -359,7 +359,7 @@ static void sh7760fb_free_mem(struct fb_info *info)
        if (!info->screen_base)
                return;
 
-       dma_free_coherent(info->dev, info->screen_size,
+       dma_free_coherent(info->device, info->screen_size,
                          info->screen_base, par->fbdma);
 
        par->fbdma = 0;
@@ -408,14 +408,14 @@ static int sh7760fb_alloc_mem(struct fb_info *info)
        if (vram < PAGE_SIZE)
                vram = PAGE_SIZE;
 
-       fbmem = dma_alloc_coherent(info->dev, vram, &par->fbdma, GFP_KERNEL);
+       fbmem = dma_alloc_coherent(info->device, vram, &par->fbdma, GFP_KERNEL);
 
        if (!fbmem)
                return -ENOMEM;
 
        if ((par->fbdma & SH7760FB_DMA_MASK) != SH7760FB_DMA_MASK) {
                sh7760fb_free_mem(info);
-               dev_err(info->dev, "kernel gave me memory at 0x%08lx, which is"
+               dev_err(info->device, "kernel gave me memory at 0x%08lx, which is"
                        "unusable for the LCDC\n", (unsigned long)par->fbdma);
                return -ENOMEM;
        }
@@ -486,7 +486,7 @@ static int sh7760fb_probe(struct platform_device *pdev)
 
        ret = sh7760fb_alloc_mem(info);
        if (ret) {
-               dev_dbg(info->dev, "framebuffer memory allocation failed!\n");
+               dev_dbg(info->device, "framebuffer memory allocation failed!\n");
                goto out_unmap;
        }