drm/tegra: dc - Add YUYV support

YUYV is UYVY with swapped bytes. Luckily the Tegra DC hardware can swap
bytes during scan-out, so supporting YUYV is simply a matter of writing
the correct value to the byteswap register.

This patch modifies tegra_dc_format() to return the byte swap parameter
via an output parameter in addition to returning the pixel format. Many
other formats can potentially be supported in a similar way.

Signed-off-by: Thierry Reding <treding@nvidia.com>
diff --git a/drivers/gpu/drm/tegra/drm.h b/drivers/gpu/drm/tegra/drm.h
index 597aa82..302bfee 100644
--- a/drivers/gpu/drm/tegra/drm.h
+++ b/drivers/gpu/drm/tegra/drm.h
@@ -156,6 +156,7 @@
 	} dst;
 	unsigned int bits_per_pixel;
 	unsigned int format;
+	unsigned int swap;
 	unsigned int stride[2];
 	unsigned long base[3];
 	bool bottom_up;
@@ -163,7 +164,7 @@
 };
 
 /* from dc.c */
-unsigned int tegra_dc_format(uint32_t format);
+unsigned int tegra_dc_format(uint32_t format, unsigned int *swap);
 int tegra_dc_setup_window(struct tegra_dc *dc, unsigned int index,
 			  const struct tegra_dc_window *window);
 void tegra_dc_enable_vblank(struct tegra_dc *dc);