OSDN Git Service

sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory()
authorPetr Tesarik <petr.tesarik.ext@huawei.com>
Mon, 24 Jul 2023 12:07:42 +0000 (14:07 +0200)
committerJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Sat, 9 Sep 2023 19:54:20 +0000 (21:54 +0200)
In all these cases, the last argument to dma_declare_coherent_memory() is
the buffer end address, but the expected value should be the size of the
reserved region.

Fixes: 39fb993038e1 ("media: arch: sh: ap325rxa: Use new renesas-ceu camera driver")
Fixes: c2f9b05fd5c1 ("media: arch: sh: ecovec: Use new renesas-ceu camera driver")
Fixes: f3590dc32974 ("media: arch: sh: kfr2r09: Use new renesas-ceu camera driver")
Fixes: 186c446f4b84 ("media: arch: sh: migor: Use new renesas-ceu camera driver")
Fixes: 1a3c230b4151 ("media: arch: sh: ms7724se: Use new renesas-ceu camera driver")
Signed-off-by: Petr Tesarik <petr.tesarik.ext@huawei.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Link: https://lore.kernel.org/r/20230724120742.2187-1-petrtesarik@huaweicloud.com
Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
arch/sh/boards/mach-ap325rxa/setup.c
arch/sh/boards/mach-ecovec24/setup.c
arch/sh/boards/mach-kfr2r09/setup.c
arch/sh/boards/mach-migor/setup.c
arch/sh/boards/mach-se/7724/setup.c

index 1517921..645cccf 100644 (file)
@@ -531,7 +531,7 @@ static int __init ap325rxa_devices_setup(void)
        device_initialize(&ap325rxa_ceu_device.dev);
        dma_declare_coherent_memory(&ap325rxa_ceu_device.dev,
                        ceu_dma_membase, ceu_dma_membase,
-                       ceu_dma_membase + CEU_BUFFER_MEMORY_SIZE - 1);
+                       CEU_BUFFER_MEMORY_SIZE);
 
        platform_device_add(&ap325rxa_ceu_device);
 
index 674da7e..7ec03d4 100644 (file)
@@ -1454,15 +1454,13 @@ static int __init arch_setup(void)
        device_initialize(&ecovec_ceu_devices[0]->dev);
        dma_declare_coherent_memory(&ecovec_ceu_devices[0]->dev,
                                    ceu0_dma_membase, ceu0_dma_membase,
-                                   ceu0_dma_membase +
-                                   CEU_BUFFER_MEMORY_SIZE - 1);
+                                   CEU_BUFFER_MEMORY_SIZE);
        platform_device_add(ecovec_ceu_devices[0]);
 
        device_initialize(&ecovec_ceu_devices[1]->dev);
        dma_declare_coherent_memory(&ecovec_ceu_devices[1]->dev,
                                    ceu1_dma_membase, ceu1_dma_membase,
-                                   ceu1_dma_membase +
-                                   CEU_BUFFER_MEMORY_SIZE - 1);
+                                   CEU_BUFFER_MEMORY_SIZE);
        platform_device_add(ecovec_ceu_devices[1]);
 
        gpiod_add_lookup_table(&cn12_power_gpiod_table);
index 20f4db7..c6d556d 100644 (file)
@@ -603,7 +603,7 @@ static int __init kfr2r09_devices_setup(void)
        device_initialize(&kfr2r09_ceu_device.dev);
        dma_declare_coherent_memory(&kfr2r09_ceu_device.dev,
                        ceu_dma_membase, ceu_dma_membase,
-                       ceu_dma_membase + CEU_BUFFER_MEMORY_SIZE - 1);
+                       CEU_BUFFER_MEMORY_SIZE);
 
        platform_device_add(&kfr2r09_ceu_device);
 
index f600612..773ee76 100644 (file)
@@ -604,7 +604,7 @@ static int __init migor_devices_setup(void)
        device_initialize(&migor_ceu_device.dev);
        dma_declare_coherent_memory(&migor_ceu_device.dev,
                        ceu_dma_membase, ceu_dma_membase,
-                       ceu_dma_membase + CEU_BUFFER_MEMORY_SIZE - 1);
+                       CEU_BUFFER_MEMORY_SIZE);
 
        platform_device_add(&migor_ceu_device);
 
index b60a262..6495f93 100644 (file)
@@ -940,15 +940,13 @@ static int __init devices_setup(void)
        device_initialize(&ms7724se_ceu_devices[0]->dev);
        dma_declare_coherent_memory(&ms7724se_ceu_devices[0]->dev,
                                    ceu0_dma_membase, ceu0_dma_membase,
-                                   ceu0_dma_membase +
-                                   CEU_BUFFER_MEMORY_SIZE - 1);
+                                   CEU_BUFFER_MEMORY_SIZE);
        platform_device_add(ms7724se_ceu_devices[0]);
 
        device_initialize(&ms7724se_ceu_devices[1]->dev);
        dma_declare_coherent_memory(&ms7724se_ceu_devices[1]->dev,
                                    ceu1_dma_membase, ceu1_dma_membase,
-                                   ceu1_dma_membase +
-                                   CEU_BUFFER_MEMORY_SIZE - 1);
+                                   CEU_BUFFER_MEMORY_SIZE);
        platform_device_add(ms7724se_ceu_devices[1]);
 
        return platform_add_devices(ms7724se_devices,