panfrost: Don't allocate a tiler heap buffer on v10+

Heap management is completely different on CSF hardware, and the heap
buffer remain unused in that case. Make the tiler heap BO creation
conditional to reflect that.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26358>
This commit is contained in:
Boris Brezillon 2023-11-15 11:48:36 +01:00 committed by Marge Bot
parent ce24f78603
commit 2d44800079

View file

@ -117,10 +117,16 @@ panfrost_open_device(void *memctx, int fd, struct panfrost_device *dev)
/* Tiler heap is internally required by the tiler, which can only be
* active for a single job chain at once, so a single heap can be
* shared across batches/contextes */
* shared across batches/contextes.
*
* Heap management is completely different on CSF HW, don't allocate the
* heap BO in that case.
*/
dev->tiler_heap = panfrost_bo_create(
dev, 128 * 1024 * 1024, PAN_BO_INVISIBLE | PAN_BO_GROWABLE, "Tiler heap");
if (dev->arch < 10) {
dev->tiler_heap = panfrost_bo_create(
dev, 128 * 1024 * 1024, PAN_BO_INVISIBLE | PAN_BO_GROWABLE, "Tiler heap");
}
pthread_mutex_init(&dev->submit_lock, NULL);