Re: [PATCH 1/2] drm/edid: Make EDID header fixup threshold configurable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 27, 2010 at 5:03 AM, Adam Jackson <ajax@xxxxxxxxxx> wrote:
> Signed-off-by: Adam Jackson <ajax@xxxxxxxxxx>

not sure about the kernel-parameters additions, since the option would
be drm.edid_threshhold= and its a module option, though now that we
can accept module options on the command line, we could start adding
them to parameters file. However you'd need to add the drm. bit to the
front of the option.

How much broken hw we seeing that this fixes? maybe some bug
references, as I hate having special options that people have to know
just to see somehting on screen.

Dave.

> ---
>  Documentation/kernel-parameters.txt |    4 ++++
>  drivers/gpu/drm/drm_edid.c          |    5 ++++-
>  2 files changed, 8 insertions(+), 1 deletions(-)
>
> diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
> index e2202e9..17d50d2 100644
> --- a/Documentation/kernel-parameters.txt
> +++ b/Documentation/kernel-parameters.txt
> @@ -713,6 +713,10 @@ and is between 256 and 4096 characters. It is defined in the file
>        edd=            [EDD]
>                        Format: {"off" | "on" | "skip[mbr]"}
>
> +       edid_threshold=<int> [DRM]
> +                       Set the minimum number of bytes of an EDID header
> +                       that must be valid, out of 8.  The default is 6.
> +
>        eisa_irq_edge=  [PARISC,HW]
>                        See header of drivers/parisc/eisa.c.
>
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index 7188674..6a1b5a3 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -62,6 +62,9 @@
>  /* use +hsync +vsync for detailed mode */
>  #define EDID_QUIRK_DETAILED_SYNC_PP            (1 << 6)
>
> +static unsigned int edid_threshold = 6;
> +MODULE_PARM_DESC(edid_threshold, "EDID header fixup threshold (default: 6)");
> +module_param_named(edid_threshold, edid_threshold, int, 0600);
>
>  #define LEVEL_DMT      0
>  #define LEVEL_GTF      1
> @@ -135,7 +138,7 @@ drm_edid_block_valid(u8 *raw_edid)
>                                score++;
>
>                if (score == 8) ;
> -               else if (score >= 6) {
> +               else if (score >= edid_threshold) {
>                        DRM_DEBUG("Fixing EDID header, your hardware may be failing\n");
>                        memcpy(raw_edid, edid_header, sizeof(edid_header));
>                } else {
> --
> 1.7.0.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux