<p>Ok, here's a more elegant way of automatically choosing the resolution based on the EDID returned by the monitor.  This patch adds an "-a" option to the console command that will automatically choose the best resolution.</p>

<p>edid.c and edid.h are originally from xrandr, but with some formatting changes to make them fit in better with the ipxe code base, and some new interface code.</p>

<p>Compiling with DEBUG=edid:2 will give you a human-readable dump of the EDID when you run "console -a".</p>

<hr>

<h4>You can view, comment on, or merge this pull request online at:</h4>
<p>  <a href='https://github.com/ipxe/ipxe/pull/48'>https://github.com/ipxe/ipxe/pull/48</a></p>

<h4>Commit Summary</h4>
<ul>
  <li>[edid] Initial support for parsing a monitor's EDID</li>
  <li>[efi] Add new console option to select preferred resolution using EDID</li>
</ul>

<h4>File Changes</h4>
<ul>
  <li>
    <strong>A</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-0">src/core/edid.c</a>
    (869)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-1">src/hci/commands/console_cmd.c</a>
    (2)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-2">src/include/edid.h</a>
    (190)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-3">src/include/ipxe/console.h</a>
    (2)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-4">src/include/ipxe/efi/Protocol/EdidActive.h</a>
    (52)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-5">src/include/ipxe/efi/Protocol/EdidDiscovered.h</a>
    (50)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-6">src/include/ipxe/efi/Protocol/EdidOverride.h</a>
    (67)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-7">src/include/ipxe/efi/efi.h</a>
    (2)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-8">src/include/ipxe/errfile.h</a>
    (1)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-9">src/interface/efi/efi_fbcon.c</a>
    (89)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/ipxe/ipxe/pull/48/files#diff-10">src/interface/efi/efi_guid.c</a>
    (10)
  </li>
</ul>

<h4>Patch Links:</h4>
<ul>
  <li><a href='https://github.com/ipxe/ipxe/pull/48.patch'>https://github.com/ipxe/ipxe/pull/48.patch</a></li>
  <li><a href='https://github.com/ipxe/ipxe/pull/48.diff'>https://github.com/ipxe/ipxe/pull/48.diff</a></li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br>Reply to this email directly or <a href="https://github.com/ipxe/ipxe/pull/48">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AArTVIq2fMHId5_YAzuBs90j8k4vk0ilks5ptVm5gaJpZM4HwBRR.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/ipxe/ipxe/pull/48"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>