Hi again,
a bit of fun with kdb, but I think this should be fixed now. Turns out the problem was not with the patches per se but with some other code that had changed between 4.4 and 4.7.2, in drivers/gpu/drm/imx/imx-ldb.c -> imx_ldb_bind(...).
Specifically, the 4.4 code used to do a two-stage endpoint lookup:
port = of_graph_get_port_by_id(child, imx_ldb->lvds_mux ? 4 : 2);
if (port) {
struct device_node *endpoint, *remote;
endpoint = of_get_child_by_name(port, "endpoint");
but this changed by 4.7.2 to a single-step lookup:
ep = of_graph_get_endpoint_by_regs(child,
imx_ldb->lvds_mux ? 4 : 2,
-1);
Unfortunately the new of_graph_get_endpoint_by_regs(...) call kills the kernel and stops the boot (if you have an eDP daughter card fitted, so it doesn't affect "just the board" Novenas).
I've pushed a change to novena-kernel-patches to revert to the old, two-stage lookup, and the resulting kernel is booting fine on my loaner laptop-spec Novena.
Assuming you still have the 4.7.2 tarball around (simply wget it again, if not), you can do the following to test this new kernel:
~ $ cd novena-kernel-patches
novena-kernel-patches $ git pull
(to fetch the updated patch)
novena-kernel-patches $ cd..
~ $ rm -rf linux-4.7.2
~ $ tar -xJf linux-4.7.2.tar.xz
~ $ cd linux-4.7.2
linux-4.7.2 $ ../novena-kernel-patches/apply-patches.sh
( assuming that went OK, then proceed )
linux-4.7.2 $ make novena_defconfig
linux-4.7.2 $ make -j4 zImage modules dtbs
( this will take some time! )
linux-4.7.2 $ sudo make modules_install
( assuming your /boot is mounted, do: )
linux-4.7.2 $ cd /boot
boot $ sudo mv zImage{,.bak}
boot $ sudo mv novena.dtb{,.bak}
boot $ sudo cp "${HOME}/linux-4.7.2/arch/arm/boot/zImage" .
boot $ sudo cp "${HOME}/linux-4.7.2/arch/arm/boot/dts/imx6q-novena.dtb" novena.dtb
boot $ sync
Then reboot!
Please let me know if this update works for you; if so, I will update the gentoo images with the modified kernel in the next day or so.
Thanks again for reporting the issue, and apologies for the inconvenience caused ><
Best, sakaki