• Francisco Jerez's avatar
    drm/nv20: Use the nv30 CRTC bandwidth calculation code. · 4295f188
    Francisco Jerez authored
    nv2x CRTC FIFOs are as large as in nv3x (4kB it seems), and the FIFO
    control registers have the same layout: we can make them share the
    same implementation.
    
    Previously we were using the nv1x code, but the calculated FIFO
    watermarks are usually too low for nv2x and they cause horrible
    scanout artifacts. They've gone unnoticed until now because we've been
    leaving one of the bandwidth regs uninitialized (CRE 47, which
    contains the most significant bits of FFLWM), so everything seemed to
    work fine except in some cases after a cold boot, depending on the
    memory bandwidth and pixel clocks used.
    Signed-off-by: default avatarFrancisco Jerez <currojerez@riseup.net>
    Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
    4295f188
nouveau_hw.c 33.6 KB