So far we tried to rotate on the primary plane, but the feedback has
been that it doesn't work for 90 and 270 degrees. As crtc also supports
rotation this change refactors the functionality to provide rotation on
the crtc if the primary plane doesn't support it.
Unfortunately on my system this doesn't help: all crtcs report no
supported transformations. So either I did a mistake in the
initialization or someone else needs to test this patch.