[General Questions and Answers] Shimmy99:
About last year, I posted a series of threads detailing a heroic attempt and effort to get a special Android/Linux-capable desktop-sized single-board computer called the Firefly ITX-3588J, with Rockchip RK3588 SoC, working as a dual-boot system for both those OSes, which ultimately faltered at that time.

However, with the lapse of time, a fair bit has changed and I've decided to resurrect it. (I also see Firefly has come out with some new kit, too, and there are other RK3588 hardware setups available in various sizes and types.) And I'm wondering if anyone here knows or can help with where I am at now, particularly those who've worked on bootloaders or at least who, if not anyone here, than others, might have some knowledge related to resolving what may be one of these last issues before I can get this on its feet.

My plan for the device was - and still is - because there is SATA capability on the board, to have both OSes resident on a hard disk, just like a desktop x86 PC, and ultimately to stick a mobile phone network card in the M.2 so it can function as a home phone. The problem that I kept running into, though, was that the software support at the time was still very limited and the non-standard vendor-provided bootloaders and kernels did not seem to like being pushed into a dual-boot configuration and I could not figure out why. However, with the lapse of time, a fair bit of mainstream support has been created for the RK3588 SoC in both U-Boot and the Linux kernel. Nonetheless, official support is still not yet complete, but I really wanna get this thing going soon. Hence this thread.

Right now, I've been focusing especially on preparing a new version of U-Boot for the device, because the one that shipped with it was based on a quite old version from 2017, which most importantly means its UEFI implementation was pretty basic and dodgy, and what my game plan has been is to try and use the U-Boot UEFI to chainload GRUB, which then will go on to load Linux or perhaps even Android, since GRUB apparently can drive the hard drive with SATA drivers but U-Boot cannot. However, while the newest, 2023 U-Boot versions work fairly happily out of the box on RK3588, they still lack an important feature: graphics. And what I thus took to trying to do was to port the vendor graphics driver, called "drm", into an up-to-date U-Boot release. The porting was somewhat fraught, but I almost have it now ... just not quite, and that's where I'm wanting to see if anyone could help in understanding what is up because I am now really not sure how to debug this. I have a repository on Github at:

GitHub - shimmyshai00/u-boot-neo: An attempt at a U-Boot version for Rockchip RK3588 in particular that can load an OS like a desktop PC

An attempt at a U-Boot version for Rockchip RK3588 in particular that can load an OS like a desktop PC - shimmyshai00/u-boot-neo

github.com

and when I suitably configure and load what I've got so far to the device with an attached monitor on the HDMI 8K (HDMI0) port, it actually does get so far as to flip it on (i.e. the power light of the monitor goes from amber to blue) and it reports it is receiving a display signal with the proper resolution (1024x768, that the debug dump code also reports it to be supposedly successfully outputting). However, the monitor screen is blank. And I am at this point - so close to getting it to go - stumped. If you look at rockchip_display.c in drivers/video/rockchip/drm, particularly the display_logo method called from rockchip_show_fbbase (iirc), I have some debug code in there to try and force a test pattern into the frame buffer, but it produces no joy.

Does anyone here know of anybody who might be familiar with this kind of driver development and/or have pointers to who else might be?

Thanks! (and hoping to get a neat little box running soon :) )