drm/panfrost: Add support for 2MB page entries
authorRob Herring <robh@kernel.org>
Thu, 11 Apr 2019 21:53:13 +0000 (16:53 -0500)
committerRob Herring <robh@kernel.org>
Fri, 12 Apr 2019 18:33:58 +0000 (13:33 -0500)
commit4dff47c7607a7ceb9916fec179dc88e7b90f3b7c
tree13b15ce9d047bd089e42f524083f0cb271866ae2
parentf3ba91228e8e917e5bd6c4b72bfe846933d17370
drm/panfrost: Add support for 2MB page entries

Add support for 2MB sized pages. This will improve our map and unmap
times and save a bit of memory by avoiding 3rd level page tables for
contiguous allocations.

As we use shmem for buffers and huge page allocations for shmem are off
by default, there isn't an improvement out of the box and userspace must
enable THP for shmem.

It's not clear if the h/w can support 1GB page sizes which standard
ARM long format descriptors support. In any case, it is unlikely we'll
see any contiguous 1GB allocations on current h/w.

Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Steven Price <steven.price@arm.com>
Acked-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190411215313.1937-1-robh@kernel.org
drivers/gpu/drm/panfrost/panfrost_mmu.c