Using dma_addr_t as the type to hold address inside of a fix sized
descriptor used by the vpdma firmware is prone to fail when the expected
width is 32 bits and suddenly when CONFIG_LPAE is enabled the data size
is now 64 bits shifted the remaining members of the descriptor in memory
which confuses the firmware.

Signed-off-by: Benoit Parrot <bpar...@ti.com>
---
 drivers/media/platform/ti-vpe/vpdma_priv.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/media/platform/ti-vpe/vpdma_priv.h 
b/drivers/media/platform/ti-vpe/vpdma_priv.h
index d8ae3e1cd54d..0bbee45338bd 100644
--- a/drivers/media/platform/ti-vpe/vpdma_priv.h
+++ b/drivers/media/platform/ti-vpe/vpdma_priv.h
@@ -166,11 +166,11 @@ struct vpdma_dtd {
                u32             xfer_length_height;
                u32             w1;
        };
-       dma_addr_t              start_addr;
+       u32                     start_addr;
        u32                     pkt_ctl;
        union {
                u32             frame_width_height;     /* inbound */
-               dma_addr_t      desc_write_addr;        /* outbound */
+               u32             desc_write_addr;        /* outbound */
        };
        union {
                u32             start_h_v;              /* inbound */
-- 
2.17.1

Reply via email to