kms: Add igt_drm_plane_try_commit()

For some of our tests, we want to make sure that bogus plane programming
attempts fail with the expected error code.  Add
igt_drm_plane_try_commit() that will just return the error code on
failure rather than failing the current subtest.  This lets us test the
return value against the expected error code.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
kms_plane: Update for universal plane changes

Recent changes in igt_kms to support universal planes have removed the
plane list order guarantees that kms_plane depended upon.  Ensure that
we loop over the entire plane list properly and then selectively skip
non-overlay planes.

While we're at it, update a couple igt_output_get_plane() calls to use
plane enums rather than integer values to make it clear what we're
actually doing.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
kms_universal_plane: Universal plane testing (v2)

Add a simple test to exercise universal plane support.

v2:  Test that proper error codes are returned for invalid plane
     programming attempts.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>