[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAApk1dU5+Lf3oJhGUQQuWMA3iNpM3JBhbB8Vu5+tH7nHnWHicg@mail.gmail.com>
Date: Mon, 3 Dec 2018 17:28:58 +0000
From: Dave Emett <david.emett@...adcom.com>
To: Eric Anholt <eric@...olt.net>
Cc: dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
Thomas Spurden <thomas.spurden@...adcom.com>
Subject: Re: [PATCH 1/6] drm/v3d: Document cache flushing ABI.
On Mon, 3 Dec 2018 at 17:22, Dave Emett <david.emett@...adcom.com> wrote:
>
> > + * The caches (L1T, slice, and L2T) will be flushed before the job
> > + * executes. The TLB writes are guaranteed to have been flushed by
>
> I would say before *each* job executes, as the caches are flushed
> before both bin and render.
> I wouldn't say "the caches" as not all of the V3D caches are flushed
> before executing a control list. In particular, the VCD cache is not
> cleared by the kernel driver (not even sure if there is a register
> interface to do this); it is expected that the control list will do
> this itself (using the CLEAR_VCD_CACHE instruction).
> On 3.3 and earlier there is a separate L2C for instructions/uniforms
> and a GCA. These do need to be flushed, and it looks like they are, so
> they should be mentioned here.
Correction: on *3.2* and earlier there is a separate L2C for
instructions/uniforms. On 3.3 and earlier there is a GCA.
It looks like we're currently unconditionally writing the L2C clear
registers. We should really only be doing this on 3.2 and earlier.
Powered by blists - more mailing lists