X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fedid.h;h=cee7c4c763719dd511e7fc6df2951b8ecb645d90;hb=46b5c8ed017958fc387ab86c71ae6c90abb6793c;hp=f05d2b82f24494eca9b837d71d2c6a496dcf5387;hpb=83d290c56fab2d38cd1ab4c4cc7099559c1d5046;p=platform%2Fkernel%2Fu-boot.git diff --git a/include/edid.h b/include/edid.h index f05d2b8..cee7c4c 100644 --- a/include/edid.h +++ b/include/edid.h @@ -277,7 +277,7 @@ void edid_print_info(struct edid1_info *edid_info); * Check the EDID info. * * @param info The EDID info to be checked - * @return 0 on valid, or -1 on invalid + * Return: 0 on valid, or -1 on invalid */ int edid_check_info(struct edid1_info *info); @@ -286,7 +286,7 @@ int edid_check_info(struct edid1_info *info); * * @param edid_block EDID block data * - * @return 0 on success, or a negative errno on error + * Return: 0 on success, or a negative errno on error */ int edid_check_checksum(u8 *edid_block); @@ -298,7 +298,7 @@ int edid_check_checksum(u8 *edid_block); * @param hmax Returns the maxium horizontal rate * @param vmin Returns the minimum vertical rate * @param vmax Returns the maxium vertical rate - * @return 0 on success, or -1 on error + * Return: 0 on success, or -1 on error */ int edid_get_ranges(struct edid1_info *edid, unsigned int *hmin, unsigned int *hmax, unsigned int *vmin, @@ -307,6 +307,28 @@ int edid_get_ranges(struct edid1_info *edid, unsigned int *hmin, struct display_timing; /** + * edid_get_timing_validate() - Get basic digital display parameters with + * mode selection callback + * + * @param buf Buffer containing EDID data + * @param buf_size Size of buffer in bytes + * @param timing Place to put preferring timing information + * @param panel_bits_per_colourp Place to put the number of bits per + * colour supported by the panel. This will be set to + * -1 if not available + * @param mode_valid Callback validating mode, returning true is mode is + * supported, false otherwise. + * @parem valid_priv Pointer to private data for mode_valid callback + * Return: 0 if timings are OK, -ve on error + */ +int edid_get_timing_validate(u8 *buf, int buf_size, + struct display_timing *timing, + int *panel_bits_per_colourp, + bool (*mode_valid)(void *priv, + const struct display_timing *timing), + void *mode_valid_priv); + +/** * edid_get_timing() - Get basic digital display parameters * * @param buf Buffer containing EDID data @@ -315,7 +337,7 @@ struct display_timing; * @param panel_bits_per_colourp Place to put the number of bits per * colour supported by the panel. This will be set to * -1 if not available - * @return 0 if timings are OK, -ve on error + * Return: 0 if timings are OK, -ve on error */ int edid_get_timing(u8 *buf, int buf_size, struct display_timing *timing, int *panel_bits_per_colourp);