Thanks for offering to send a device for testing. I’m hoping we can get it working without that being necessary.
I can provide an image later today that should have the panel selection working.
The only question mark for me is whether your configuration actually requires GPIO 95 (stock assigns it for backlight enable) and 100 (stock assigns that for panel external power supply) to be enabled. It is not required on my devices that have the boyift8201 panel configuration. The effect that would be seen if it was needed is simply that the screen might turn black sometime after bootloader initialization or won’t come back on after it goes to sleep the first time.
If it is required it can be added. It doesn’t do anything on my devices that don’t need it, so it’s not dangerous to just enable it for all devices.
With these new images you’d simply have to flash the lk2nd.img to boot and the cd-18781y-rootfs.img to userdata using EDL and that’s it.
Once my entire work is upstreamed to pmOS you only ever have to use apk to update the system, including kernels. Or use pmbootstrap sideload if you build kernel packages locally. No more flashing required.
If you’re interested, the way panel and touchscreen selection works is this:
The device’s bootloader already passes along the panel selection string in the kernel cmdline (that’s what we got from the dmesg output). Since it’s now lk2nd that receives that cmdline and not the Linux kernel, lk2nd picks it up and uses it to identify which panel and touchscreen to activate (this is a mapping I made in lk2nd). The mainline dts for the device has a generic placeholder for the panel compatible string that gets replaced with the correct one (which is actually different from what stock uses due to mainline naming rules). It also has nodes for both touchscreen chips but both of them are status = "disabled". lk2nd will overwrite whichever touchscreen chip it wants to enable to status = "okay" and that’s that. Pretty nifty actually.