On Wed, Apr 10, 2019 at 03:23:27PM +0100, Ian Jackson wrote:
> From: Wei Liu <wei.l...@citrix.com>
> 
> Empirically, on stretch armhf:
> 
>   drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>   drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of 
> `dma_alloc_wc' from incompatible pointer type 
> [-Werror=incompatible-pointer-types]
>      pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
>                                                 ^
> etc.

This was fixed in v4.18 by this commit:

        commit 2f8a6da866eff746a9f8c7745790f3765baeb589
        Author: Emil Goode <emil....@goode.io>
        Date:   Wed May 16 12:22:04 2018 +0200

            gpu: host1x: Fix compiler errors by converting to dma_addr_t

            The compiler is complaining with the following errors:

            drivers/gpu/host1x/cdma.c:94:48: error:
                    passing argument 3 of ‘dma_alloc_wc’ from incompatible 
pointer type
                    [-Werror=incompatible-pointer-types]

            drivers/gpu/host1x/cdma.c:113:48: error:
                    passing argument 3 of ‘dma_alloc_wc’ from incompatible 
pointer type
                    [-Werror=incompatible-pointer-types]

            The expected pointer type of the third argument to dma_alloc_wc() is
            dma_addr_t but phys_addr_t is passed.

            Change the phys member of struct push_buffer to be dma_addr_t so 
that we
            pass the correct type to dma_alloc_wc().
            Also check pb->mapped for non-NULL in the destroy function as that 
is the
            right way of checking if dma_alloc_wc() was successful.

            Signed-off-by: Emil Goode <emil....@goode.io>
            Signed-off-by: Thierry Reding <tred...@nvidia.com>

It should be fairly easy to backport this to older releases, though I'm
not sure exactly what made this trigger. This wasn't causing any build
errors for a very long time, since this type mismatch has existed ever
since the driver was merged all the way back in v3.10.

Thierry

> This is blocking the upgrade of the Xen Project CI to Debian stretch
> so disable it for now.
> 
> Signed-off-by: Wei Liu <wei.l...@citrix.com>
> CC: Julien Grall <julien.gr...@arm.com>
> CC: Stefano Stabellini <sstabell...@kernel.org>
> CC: Thierry Reding <thierry.red...@gmail.com>
> CC: dri-devel@lists.freedesktop.org
> ---
>  ts-kernel-build | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/ts-kernel-build b/ts-kernel-build
> index 21b8f78a..0bc443de 100755
> --- a/ts-kernel-build
> +++ b/ts-kernel-build
> @@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
>      *) ;;
>  esac
>  
> +# Disable components that don't build
> +setopt CONFIG_TEGRA_HOST1X n
> +
>  exit 0
>  END
>  }
> -- 
> 2.11.0
> 

Attachment: signature.asc
Description: PGP signature

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to