]> git.baikalelectronics.ru Git - kernel.git/commitdiff
dmaengine: at_hdmac: Fix at_lli struct definition
authorTudor Ambarus <tudor.ambarus@microchip.com>
Tue, 25 Oct 2022 09:02:35 +0000 (12:02 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 Nov 2022 16:42:10 +0000 (17:42 +0100)
commit b23a20a47d83df285a4f7318698b91da2b33f5b6 upstream.

Those hardware registers are all of 32 bits, while dma_addr_t ca be of
type u64 or u32 depending on CONFIG_ARCH_DMA_ADDR_T_64BIT. Force u32 to
comply with what the hardware expects.

Fixes: a8ae07d54e40 ("dmaengine: at_hdmac: new driver for the Atmel AHB DMA Controller")
Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Cc: stable@vger.kernel.org
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Link: https://lore.kernel.org/r/20221025090306.297886-1-tudor.ambarus@microchip.com
Link: https://lore.kernel.org/r/20221025090306.297886-2-tudor.ambarus@microchip.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/dma/at_hdmac_regs.h

index fe8a5853ec491b321f8eff6d6990bf1f72943dbb..65fa3e395bf0d9f5817c857d0d0ddbd08bb89e2c 100644 (file)
 /* LLI == Linked List Item; aka DMA buffer descriptor */
 struct at_lli {
        /* values that are not changed by hardware */
-       dma_addr_t      saddr;
-       dma_addr_t      daddr;
+       u32 saddr;
+       u32 daddr;
        /* value that may get written back: */
-       u32             ctrla;
+       u32 ctrla;
        /* more values that are not changed by hardware */
-       u32             ctrlb;
-       dma_addr_t      dscr;   /* chain to next lli */
+       u32 ctrlb;
+       u32 dscr;       /* chain to next lli */
 };
 
 /**