|
@@ -208,6 +208,16 @@ enum omap_hdmi_flags {
|
|
|
OMAP_HDMI_SDA_SCL_EXTERNAL_PULLUP = 1 << 0,
|
|
|
};
|
|
|
|
|
|
+enum omap_dss_output_id {
|
|
|
+ OMAP_DSS_OUTPUT_DPI = 1 << 0,
|
|
|
+ OMAP_DSS_OUTPUT_DBI = 1 << 1,
|
|
|
+ OMAP_DSS_OUTPUT_SDI = 1 << 2,
|
|
|
+ OMAP_DSS_OUTPUT_DSI1 = 1 << 3,
|
|
|
+ OMAP_DSS_OUTPUT_DSI2 = 1 << 4,
|
|
|
+ OMAP_DSS_OUTPUT_VENC = 1 << 5,
|
|
|
+ OMAP_DSS_OUTPUT_HDMI = 1 << 6,
|
|
|
+};
|
|
|
+
|
|
|
/* RFBI */
|
|
|
|
|
|
struct rfbi_timings {
|
|
@@ -493,6 +503,24 @@ struct omap_dsi_pin_config {
|
|
|
int pins[OMAP_DSS_MAX_DSI_PINS];
|
|
|
};
|
|
|
|
|
|
+struct omap_dss_output {
|
|
|
+ struct list_head list;
|
|
|
+
|
|
|
+ /* display type supported by the output */
|
|
|
+ enum omap_display_type type;
|
|
|
+
|
|
|
+ /* output instance */
|
|
|
+ enum omap_dss_output_id id;
|
|
|
+
|
|
|
+ /* output's platform device pointer */
|
|
|
+ struct platform_device *pdev;
|
|
|
+
|
|
|
+ /* dynamic fields */
|
|
|
+ struct omap_overlay_manager *manager;
|
|
|
+
|
|
|
+ struct omap_dss_device *device;
|
|
|
+};
|
|
|
+
|
|
|
struct omap_dss_device {
|
|
|
struct device dev;
|
|
|
|
|
@@ -702,6 +730,8 @@ struct omap_overlay_manager *omap_dss_get_overlay_manager(int num);
|
|
|
int omap_dss_get_num_overlays(void);
|
|
|
struct omap_overlay *omap_dss_get_overlay(int num);
|
|
|
|
|
|
+struct omap_dss_output *omap_dss_get_output(enum omap_dss_output_id id);
|
|
|
+
|
|
|
void omapdss_default_get_resolution(struct omap_dss_device *dssdev,
|
|
|
u16 *xres, u16 *yres);
|
|
|
int omapdss_default_get_recommended_bpp(struct omap_dss_device *dssdev);
|