Fix for bug 6691452 : DO NOT MERGE

As it so happens, there seem to be panels out there who disapprove of
sudden changes in their HDMI clock rate.  In particular, Sony LCD
panels made from around 2010-2011 (including the Sony GTV panel) seem
to dislike this behavior.  When exposed to a large jump in the clock
rate (say from -100pmm to +100ppm in about 30mSec), they seem to
panic, blank their audio and video, and then resync.  The whole
panic process takes about 2 seconds.

The HDMI spec says that its clock jitter requirements are defined by
their differential signalling eye diagram requirements relative to an
"Ideal Recovery Clock" (see section 4.2.3.1 of the HDMI 1.3a spec).
Basically, if you pass the eye diagram tests, you pass the clock
jitter requirements.  We have determined in lab that even being
extremely aggressive in our VCXO rate changes does not come even close
to violating the HDMI eye diagrams.  Its just this era of Sony panels
which seem to be upset by this behavior.

One way or the other, experiments which the GTV devices have seemed to
indicate that a full range sweep of the VCXO done in 10mSec steps over
anything faster than 190mSec can cause trouble.  Adding a healthy
degree of margin to this finding, the fix is to limit the rate of VCXO
control change such that it never goes at a rate faster than
FullRange/300mSec.

Change flagged as do not merge due to the code structure changes to master.
This will need to be merged by hand.

Signed-off-by: John Grossman <johngro@google.com>
Change-Id: Ibfd361fe1cc2cbd4909489e3317fb12e005c6a75
7 files changed