[RFC v4 08/20] drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling