[U-Boot] [PATCH] fpga: zynqpl: Fixed bug in alignment routine

Eli Billauer eli.billauer at gmail.com
Tue Mar 18 22:14:54 CET 2014


Hello,

We're completely out of sync with our git repositories, but I changed 
the relevant parts in my zynqpl.c (with the patch of this thread not 
applied), and it worked well. The alignment went downwards as expected.

Regards,
    Eli

On 18/03/14 14:17, Michal Simek wrote:
> Does this work for you? If yes, I will send this as regular patch.
>
> diff --git a/drivers/fpga/zynqpl.c b/drivers/fpga/zynqpl.c
> index 3572bc9..49eef0f 100644
> --- a/drivers/fpga/zynqpl.c
> +++ b/drivers/fpga/zynqpl.c
> @@ -289,10 +289,11 @@ static int zynq_dma_xfer_init(u32 partialbit)
>   static u32 *zynq_align_dma_buffer(u32 *buf, u32 len, u32 swap)
>   {
>          u32 *new_buf;
> -       u32 i;
> +       u32 i, align;
>
> -       if ((u32)buf != ALIGN((u32)buf, ARCH_DMA_MINALIGN)) {
> -               new_buf = (u32 *)ALIGN((u32)buf, ARCH_DMA_MINALIGN);
> +       align = ALIGN((u32)(buf - ARCH_DMA_MINALIGN + 1), ARCH_DMA_MINALIGN);
> +       if ((u32)buf != align) {
> +               new_buf = (u32 *)align;
>
>    




More information about the U-Boot mailing list