Improve the documentation for backlight_ops and
adapt it to kernel-doc style.

v2:
  - Add intro for each field (Daniel)

Signed-off-by: Sam Ravnborg <s...@ravnborg.org>
Reviewed-by: Daniel Thompson <daniel.thomp...@linaro.org>
Reviewed-by: Emil Velikov <emil.l.veli...@gmail.com>
Cc: Lee Jones <lee.jo...@linaro.org>
Cc: Daniel Thompson <daniel.thomp...@linaro.org>
Cc: Jingoo Han <jingooh...@gmail.com>
---
 include/linux/backlight.h | 59 +++++++++++++++++++++++++++++++++++----
 1 file changed, 53 insertions(+), 6 deletions(-)

diff --git a/include/linux/backlight.h b/include/linux/backlight.h
index 56e51ebab740..dfb43ee02ea0 100644
--- a/include/linux/backlight.h
+++ b/include/linux/backlight.h
@@ -55,19 +55,66 @@ enum backlight_scale {
 struct backlight_device;
 struct fb_info;
 
+/**
+ * struct backlight_ops - backlight operations
+ *
+ * The backlight operations are specifed when the backlight device is 
registered.
+ */
 struct backlight_ops {
+       /**
+        * @options: Configure how operations are called from the core.
+        *
+        * The options parameter is used to adjust the behaviour of the core.
+        * Set BL_CORE_SUSPENDRESUME to get the update_status() operation called
+        * upon suspend and resume.
+        */
        unsigned int options;
 
 #define BL_CORE_SUSPENDRESUME  (1 << 0)
 
-       /* Notify the backlight driver some property has changed */
+       /**
+        * @update_status: Operation called when properties have changed.
+        *
+        * Notify the backlight driver some property has changed.
+        * The update_status operation is protected by the update_lock.
+        *
+        * The backlight driver is expected to use backlight_is_blank()
+        * to check if the display is blanked and set brightness accordingly.
+        * update_status() is called when any of the properties has changed.
+        *
+        * RETURNS:
+        *
+        * 0 on sucees, negative error code if any failure occured.
+        */
        int (*update_status)(struct backlight_device *);
-       /* Return the current backlight brightness (accounting for power,
-          fb_blank etc.) */
+
+       /**
+        * @get_brightness: Return the current backlight brightness.
+        *
+        * The driver may implement this as a readback from the HW.
+        * This operation is optional and if not present then the current
+        * brightness property value is used.
+        *
+        * RETURNS:
+        *
+        * A brightness value which is 0 or a positive numer.
+        * On failure a negative error code is returned.
+        */
        int (*get_brightness)(struct backlight_device *);
-       /* Check if given framebuffer device is the one bound to this backlight;
-          return 0 if not, !=0 if it is. If NULL, backlight always matches the 
fb. */
-       int (*check_fb)(struct backlight_device *, struct fb_info *);
+
+       /**
+        * @check_fb: Check the framebuffer device.
+        *
+        * Check if given framebuffer device is the one bound to this backlight.
+        * This operation is optional and if not implemented it is assumed that 
the
+        * fbdev is always the one bound to the backlight.
+        *
+        * RETURNS:
+        *
+        * If info is NULL or the info matches the fbdev bound to the backlight 
return true.
+        * If info does not match the fbdev bound to the backlight return false.
+        */
+       int (*check_fb)(struct backlight_device *bd, struct fb_info *info);
 };
 
 /* This structure defines all the properties of a backlight */
-- 
2.25.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to