drm/omap: Merge omap_dss_device type and output_type fields
The omap_dss_device type and output_type fields differ mostly for historical reasons. The output_type field is required for all devices but the display at the end of the pipeline, and must be set to OMAP_DISPLAY_TYPE_NONE for the latter. The type field is required for all devices but the internal encoder, for which it is ignored. The only reason why the output_type field must be set to OMAP_DISPLAY_TYPE_NONE for the display at the end of the pipeline is to identify omap_dss_device instances corresponding to displays. This is not documented and confusing. Clean the code by adding a new display field to the omap_dss_device structure to identify displays, and merge the type and output_type fields. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com> Tested-by: Sebastian Reichel <sebastian.reichel@collabora.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:

committed by
Tomi Valkeinen

parent
a4e26525ca
commit
0dbfc39667
@@ -413,14 +413,18 @@ struct omap_dss_device {
|
||||
|
||||
struct list_head list;
|
||||
|
||||
enum omap_display_type type;
|
||||
/*
|
||||
* DSS output type that this device generates (for DSS internal devices)
|
||||
* or requires (for external encoders). Must be OMAP_DISPLAY_TYPE_NONE
|
||||
* for display devices (connectors and panels) and to non-zero value for
|
||||
* all other devices.
|
||||
* DSS type that this device generates (for DSS internal devices) or
|
||||
* requires (for external encoders, connectors and panels). Must be a
|
||||
* non-zero (different than OMAP_DISPLAY_TYPE_NONE) value.
|
||||
*/
|
||||
enum omap_display_type output_type;
|
||||
enum omap_display_type type;
|
||||
|
||||
/*
|
||||
* True if the device is a display (panel or connector) at the end of
|
||||
* the pipeline, false otherwise.
|
||||
*/
|
||||
bool display;
|
||||
|
||||
const char *name;
|
||||
|
||||
|
Reference in New Issue
Block a user