This was all kicked off by me figuring out how the PPC byteswap thing worked.
In the end, we're keeping the implicit byteswap based on architecture, but also
expose the correctly supported formats, and fix some overlay details.

Overlay framebuffers have various funky requirements that should be enforced at
framebuffer creation time (these are set apart by their YUV formats). Further,
I simplify some error-checking details for both nv4 and nv10+ framebuffers as
well as using the pitch properly instead of making wild assumptions (how did 
every work... not sure).

This has seen some modest modetest testing on NV5, NV17, NV34, and NV4A. I 
some odd issues on NV5 with certain scaling factors, but I'm somewhat sure that
those issues were there before - either the hw can't keep up or we're not 
some clocks.

Ilia Mirkin (4):
  drm/nouveau/display: prevent undisplayable framebuffers from creation
  drm/nouveau/overlay: improve error detection, fix pitch setting
  drm/nouveau/overlay: add NV21 support
  drm/nouveau/dispnv04: fix exposed format list

 drivers/gpu/drm/nouveau/dispnv04/crtc.c    | 36 ++++++++++++++-
 drivers/gpu/drm/nouveau/dispnv04/overlay.c | 71 +++++++++++++++++-------------
 drivers/gpu/drm/nouveau/nouveau_display.c  | 21 +++++++++
 3 files changed, 96 insertions(+), 32 deletions(-)


Nouveau mailing list

Reply via email to