<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jul 17, 2013 at 10:45 AM, Tom Parker <span dir="ltr"><<a href="mailto:tom@carrott.org" target="_blank">tom@carrott.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
How does the HDMI output on the XO-4 work? I've got a micro-HDMI to regular HDMI cable and also an HDMI-DVI adaptor. I tried connecting to the the HDMI input of a TV and that worked in both sugar and the firmware. Quality was kinda poor (like it was doing some scaling, which I guess it has to if it's doing mirror and filling both screens) and the mouse pointer didn't show up on the TV. I didn't check the output of xrandr in this configuration.<br>
</blockquote><div><br></div><div>The XO-4 is using the SOC's hardware scaling to mirror the 1200x900 framebuffer of the XO-4.  Yes the quality isn't the best but we determined it was good enough for launch and it saves some extra CPU cycles and minimizes X drawing lag as Xorg is still just drawing for the LCD screen.  Without compositing this is the lowest cost way of mirroring screen output.  This is all done automatically in the kernel driver when the hdmi cable is plugged in.  Much like most android tablets on the market we wanted to keep the process simple without needing to tweak a large number of knobs and config files.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
When I connect to a regular monitor via the DVI adaptor, the monitor detects the presence of the laptop and goes to sleep. In the open firmware, if I type 720p, I get the firmware on the screen. If I then type bye, the laptop boots normally but there is no further output on the screen. I don't see any additional displays in xrandr.<br>
</blockquote><div><br></div><div>DVI requires an additional set of frequencies and resolutions setup.  HDMI timings are CEC standard and DVI are VESA standard.  Some monitors do handle CEC timings over the DVI cable but that is very hit and miss.  Our initial goal was to get a driver working that could handle HDMI certification and then add support for DVI later.  OFW gives you a 720p resolution because that is the fallback that Mitch puts in.  You are probably are getting output like "we don't support any of these resolutions, falling back to 720p"  This is fine for OFW as more advanced users will be in there using it for testing.  Simply outputting an unstable or unsupported resolution to a monitor that could produce erratic behavior was not something that we can support long term.  We felt only supporting modes that the monitors EDID supported was the safest way to minimize confusion.  This is a pretty safe assumption for HDMI, DVI can be hit and miss.</div>
<div> </div><div>We do have patches for more accurate HDMI clocks in the current kernel git tree.  I am not sure if they have made it into a build yet.</div><div><br></div><div>Xorg has no idea that there is an HDMI monitor attached so xrandr will show nothing about the output.  KISS for this release as it was a new feature to the XO line.</div>
<div><br></div><div>If you want to provide the output of dmesg when you connect your DVI cable I will gladly take a look and see why you aren't at least getting a VESA VGA resolution.</div><div><br></div><div>-Jon</div>
</div></div></div>