Comment 5 for bug 1814938

Revision history for this message
Davidaf (davidaf) wrote :

SOLVED.

Reponding to Kai-Heng question, the edid file was not in initramfs and I didn't know how to add it at the time.

I was using another monitor the last months and didn't encounter this problem.
This week I connected the monitor and found the same problem again, this time with Ubuntu 19.10 and Kubuntu 19.10.

This time I was using an encrypted root partition so the edid file must be in the initfd file to be found by the kernel.

I managed to include it by creating a file named /etc/initramfs-tools/hooks/edid with this content:
-----------
#!/bin/sh
PREREQ=""
prereqs()
{
    echo "$PREREQ"
}

case $1 in
prereqs)
    prereqs
    exit 0
    ;;
esac

. /usr/share/initramfs-tools/hook-functions
# Begin real processing below this line
mkdir -p "${DESTDIR}/lib/firmware/edid"
cp -a /lib/firmware/edid/modified_edid.bin "${DESTDIR}/lib/firmware/edid/modified_edid.bin"
exit 0
-----------

The file needs execution permission: chmod +x /etc/initramfs-tools/hooks/edid
And initrd must be updated: update-initramfs -u

After that "lsinitramfs /boot/initrd.img-5.3.0-40-generic | grep edid" shows the file included.

With this the kernel is able to load the file at boot, and the monitor works nicely.

I suppose the source of this bug is me not knowing how to manage Ubuntu boot process, so if no one more is affected by this problem I think the bug can be closed.
Thanks.