X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=include%2Fedid.h;h=2562733061c0a4e2103ad0557c80047882ce16cf;hb=406df85345f942d9348443983d81a01e013e920b;hp=a9f2f3d3abff930f42b6e3bcff106a11ea2f6f4f;hpb=a9f47426ced2e5057930990f3cd602b8ab936f69;p=oweals%2Fu-boot.git diff --git a/include/edid.h b/include/edid.h index a9f2f3d3ab..2562733061 100644 --- a/include/edid.h +++ b/include/edid.h @@ -1,11 +1,10 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (c) 2012 The Chromium OS Authors. * * (C) Copyright 2010 * Petr Stetiar * - * SPDX-License-Identifier: GPL-2.0+ - * * Contains stolen code from ddcprobe project which is: * Copyright (C) Nalin Dahyabhai */ @@ -307,6 +306,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 *