[PATCH 1/7] gpu: host1x: Resize channel register region on Tegra186 and later
Mikko Perttunen
cyndis at kapsi.fi
Mon Nov 26 11:14:40 UTC 2018
Reviewed-by: Mikko Perttunen <mperttunen at nvidia.com>
On 23.11.2018 14:31, Thierry Reding wrote:
> From: Thierry Reding <treding at nvidia.com>
>
> The register region allocated per channel was decreased from 16384 bytes
> to 256 bytes on Tegra186 and later. Resize the region to make sure every
> channel (instead of only the first) is properly programmed.
>
> Suggested-by: Mikko Perttunen <mperttunen at nvidia.com>
> Signed-off-by: Thierry Reding <treding at nvidia.com>
> ---
> drivers/gpu/host1x/hw/channel_hw.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/host1x/hw/channel_hw.c b/drivers/gpu/host1x/hw/channel_hw.c
> index d188f9068b91..95ea81172a83 100644
> --- a/drivers/gpu/host1x/hw/channel_hw.c
> +++ b/drivers/gpu/host1x/hw/channel_hw.c
> @@ -26,7 +26,6 @@
> #include "../intr.h"
> #include "../job.h"
>
> -#define HOST1X_CHANNEL_SIZE 16384
> #define TRACE_MAX_LENGTH 128U
>
> static void trace_write_gather(struct host1x_cdma *cdma, struct host1x_bo *bo,
> @@ -203,7 +202,11 @@ static void enable_gather_filter(struct host1x *host,
> static int host1x_channel_init(struct host1x_channel *ch, struct host1x *dev,
> unsigned int index)
> {
> - ch->regs = dev->regs + index * HOST1X_CHANNEL_SIZE;
> +#if HOST1X_HW < 6
> + ch->regs = dev->regs + index * 0x4000;
> +#else
> + ch->regs = dev->regs + index * 0x100;
> +#endif
> enable_gather_filter(dev, ch);
> return 0;
> }
>
More information about the dri-devel
mailing list