Disclaimer – this could be a bit offtopic, since the issue is not really related to Kodi but HW/kernel interaction as it looks to me, but I’m posting regardless since it’s been an issue nagging me for over a year.
I have a setup with a Gigabyte GA-C1073UN pushing picture and audio over HDMI though an Onkyo AVR to a Samsung TV. I’ve had this same setup for years and sometime after kernel 4.3 came out a year ago, I started getting weird refresh rate changes meaning blinking to black and back to whatever it was before. So my remedy was to run 4.2.8 since then but I’m figuring it’s finally time to sort out the cause of the issue since it still exists after upgrading Ubuntu kernel to mainline 4.8.6.
The main symptom is refresh rate changing going from 1920x1080x60 to black and back. It also happens on other resolutions when watching 50p content such as LiveTV for example but not as frequently as with 60p. This means also cuts on audio and generally an unusable viewing experience.
I have replaced both HDMI cables today to eliminate connectivity issue before making this post. I also tried a direct connect from PC to TV bypassing the AVR, and then there is no error at all.
There used to be i915 errors to go with the situation in the logs with kernels 4.8.6<>4.2.8 but these are gone now, only possibly related error in dmesg that remains is: i915 0000:00:02.0: HDMI-A-1: EDID block 0 invalid.
EDIT: updated dmesg after the system has been up a while, i915 errors are now present
[Tue Nov 8 14:44:20 2016] [drm:intel_set_pch_fifo_underrun_reporting [i915]] *ERROR* uncleared pch fifo underrun on pch transcoder A
[Tue Nov 8 14:44:20 2016] [drm:intel_pch_fifo_underrun_irq_handler [i915]] *ERROR* PCH transcoder A FIFO underrun
[Tue Nov 8 14:44:31 2016] [drm:intel_set_pch_fifo_underrun_reporting [i915]] *ERROR* uncleared pch fifo underrun on pch transcoder A
[Tue Nov 8 14:44:31 2016] [drm:intel_pch_fifo_underrun_irq_handler [i915]] *ERROR* PCH transcoder A FIFO underrun
Here are relevant logs
kodi@cube:~$ dpkg -l |grep mesa | pastebinit
http://paste.ubuntu.com/23446332/
kodi@cube:~$ DISPLAY=:0 vainfo | pastebinit
error: XDG_RUNTIME_DIR not set in the environment.
libva info: VA-API version 0.39.2
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
http://paste.ubuntu.com/23446334/
kodi@cube:/etc/X11$ cat ~/.kodi/temp/kodi.log | pastebinit
http://paste.ubuntu.com/23446459/
kodi@cube:~$ dmesg | pastebinit
http://paste.ubuntu.com/23446337/
EDIT: updated
kodi@cube:~$ dmesg | pastebinit
http://paste.ubuntu.com/23446573/
kodi@cube:~$ id | pastebinit
http://paste.ubuntu.com/23446338/
kodi@cube:~$ amixer | pastebinit
http://paste.ubuntu.com/23446339/
AVR
kodi@cube:/etc/X11$ parse-edid < edid | pastebinit
Checksum Correct
http://paste.ubuntu.com/23446367/
TV
kodi@cube:/etc/X11$ parse-edid < /lib/firmware/edid/edid.bin | pastebinit
Checksum Correct
http://paste.ubuntu.com/23446373/