mx6memcal: Finish migration to defconfig options
[oweals/u-boot.git] / include / panel.h
index 57fccf222e3fef9926886c2c9e15381d7a266bc0..cd596d48c027e8561b9ac3408cbcb1d4cd29d027 100644 (file)
@@ -1,8 +1,7 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * Copyright (c) 2016 Google, Inc
  * Written by Simon Glass <sjg@chromium.org>
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #ifndef _PANEL_H
@@ -16,16 +15,54 @@ struct panel_ops {
         * @return 0 if OK, -ve on error
         */
        int (*enable_backlight)(struct udevice *dev);
+
+       /**
+        * set_backlight - Set panel backlight brightness
+        *
+        * @dev:        Panel device containing the backlight to update
+        * @percent:    Brightness value (0 to 100, or BACKLIGHT_... value)
+        * @return 0 if OK, -ve on error
+        */
+       int (*set_backlight)(struct udevice *dev, int percent);
+
+       /**
+        * get_timings() - Get display timings from panel.
+        *
+        * @dev:        Panel device containing the display timings
+        * @tim:        Place to put timings
+        * @return 0 if OK, -ve on error
+        */
+       int (*get_display_timing)(struct udevice *dev,
+                                 struct display_timing *timing);
 };
 
 #define panel_get_ops(dev)     ((struct panel_ops *)(dev)->driver->ops)
 
 /**
- * panel_enable_backlight() - Enable the panel backlight
+ * panel_enable_backlight() - Enable/disable the panel backlight
  *
  * @dev:       Panel device containing the backlight to enable
+ * @enable:    true to enable the backlight, false to dis
  * @return 0 if OK, -ve on error
  */
 int panel_enable_backlight(struct udevice *dev);
 
+/**
+ * panel_set_backlight - Set brightness for the panel backlight
+ *
+ * @dev:       Panel device containing the backlight to update
+ * @percent:   Brightness value (0 to 100, or BACKLIGHT_... value)
+ * @return 0 if OK, -ve on error
+ */
+int panel_set_backlight(struct udevice *dev, int percent);
+
+/**
+ * panel_get_display_timing() - Get display timings from panel.
+ *
+ * @dev:       Panel device containing the display timings
+ * @return 0 if OK, -ve on error
+ */
+int panel_get_display_timing(struct udevice *dev,
+                            struct display_timing *timing);
+
 #endif