Apollo Lake, HDMI and EDID

  • I have an issue with my NUC6CAYH (Apollo Lake). LE 8.0.2, latest BIOS and LSPCon 1.6.6 firmware. Audio is being decoded (HDMI) to my LG TV (no bitstream).

    Under Audio Settings I see the device setup as LG TV on DisplayPort 0. All is good.

    If I turn off the TV and turn it back on it now shows LG TV on HDMI 0. At this point my audio no longer works, need to reboot.

    On the Kodi forum it was recommended to set my EDID. I tried this both the manual way and getedid script. Both seem to work "a bit", meaning a give the TV a toggle or two and see it stays as DisplayPort. But after several hours it will still revert back to HDMI, requiring a reboot.

    Not sure this is a Kodi, LE or Linux bug at this point. I know the Apollo has a number of HDMI/audio issues but I thought they were all around bitstreaming.

    The Kodi log doesn't show much, no errors. Devices are discovered the same:

    03:16:56.328 T:140673106503808 NOTICE: Device 4

    03:16:56.328 T:140673106503808 NOTICE: m_deviceName : hdmi:CARD=PCH,DEV=0

    03:16:56.328 T:140673106503808 NOTICE: m_displayName : HDA Intel PCH

    03:16:56.328 T:140673106503808 NOTICE: m_displayNameExtra: GSM LG TV on DisplayPort #0

    03:16:56.328 T:140673106503808 NOTICE: m_deviceType : AE_DEVTYPE_HDMI

    03:16:56.328 T:140673106503808 NOTICE: m_channels : FL,FR,LFE,FC,BC,BL,BR,FLOC,FROC,BLOC,BROC,TFC,TC,TFL,TFR,UNKNOWN1

    03:16:56.328 T:140673106503808 NOTICE: m_sampleRates : 32000,44100,48000

    03:16:56.328 T:140673106503808 NOTICE: m_dataFormats : AE_FMT_RAW,AE_FMT_S32NE,AE_FMT_S16NE,AE_FMT_S16LE,AE_FMT_RAW


    10:20:11.694 T:140672996734720 NOTICE: Device 4

    10:20:11.694 T:140672996734720 NOTICE: m_deviceName : hdmi:CARD=PCH,DEV=0

    10:20:11.694 T:140672996734720 NOTICE: m_displayName : HDA Intel PCH

    10:20:11.695 T:140672996734720 NOTICE: m_displayNameExtra: GSM LG TV on HDMI #0

    10:20:11.695 T:140672996734720 NOTICE: m_deviceType : AE_DEVTYPE_HDMI

    10:20:11.695 T:140672996734720 NOTICE: m_channels : FL,FR,LFE,FC,BC,BL,BR,FLOC,FROC,BLOC,BROC,TFC,TC,TFL,TFR,UNKNOWN1

    10:20:11.695 T:140672996734720 NOTICE: m_sampleRates : 32000,44100,48000

    10:20:11.695 T:140672996734720 NOTICE: m_dataFormats : AE_FMT_RAW,AE_FMT_S32NE,AE_FMT_S16NE,AE_FMT_S16LE,AE_FMT_RAW


    EDID seems to load ok (from startup log):

    [ 0.000000] Kernel command line: root=/dev/ram0 rdinit=/init usbcore.autosuspend=-1 BOOT_IMAGE=/KERNEL boot=LABEL=System disk=LABEL=Storage quiet initrd=/edid.cpio drm_kms_helper.edid_firmware=DP-1:edid/edid.bin video=DP-1:D

    [ 2.173297] [drm] Got external EDID base block and 1 extension from "edid/edid.bin" for connector "DP-1"

    After several hours when I turn the TV on and check settings it's still DisplayPort but as soon as I try to play TV (no audio) I get:

    18:59:16.862 T:140269547980544 NOTICE: Found 2 Lists of Devices

    18:59:16.862 T:140269547980544 NOTICE: Enumerated ALSA devices:and then the device shows up as HDMI again.

  • Have you installed the latest beta? I've got no more sound output over hdmi after installing it. Reverting back to 8.02 fixed it. I'm using a J3455-itx board and faced similar problems as you.
    I've created an edid entry and also updated LSPcon to v1.66 since the same chip is used to convert the signal. Also I've set "Keep audio device alive" to "Always" and this seems to work until updating to the beta version.