Hi, first post in here, so please bare with me.
I was playing around a bit, trying the get flicker free booting working on my F31 equipped Lenovo Thinkpad X1 Carbon Gen 7. The machine nicely dual boots with W10. I tuned GRUB to show a theme featuring a background image with what should be visible from plymouth BGRT theme (vendor logo on top and Fedora watermark on the bottom). This does work nicely, but plymouth kicks in very, very late in the boot process.
What I see after selecting the kernel in GRUB is a black screen, followed by only the vendor logo (no Fedora watermark) and then finally plymouth showing the vendor logo, the watermark and the spinner. Since the machine boots quickly, the plymouth eye candy is only visible for a short time. In total, this gives me three or four flickers (before GRUB, GRUB to black screen, black screen to only vendor logo and finally another one to plymouth).
My /etc/default/grub looks like this:
GRUB_TIMEOUT=2
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_CMDLINE_LINUX="rhgb quiet rd.md=0 rd.lvm=0 rd.dm=0 rd.luks=0 raid=noautodetect rd.systemd.show_status=auto plymouth.splash_delay=0"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
GRUB_THEME="/boot/grub/themes/Slaze/theme.txt"
GRUB_GFXMODE=auto
GRUB_GFXPAYLOAD_LINXU=keep
System is a Lenovo Thinkpad X1 Carbon with 4K screen (3840 x 2160 resolution), Intel internal graphics. Secure boot is enabled, UEFI mode without CSM. I can see the efivars and the bgrt directories in /sys/firmware/… I also tried with i915.fastboot=1 or i915.modeset=1 kernel config options, but those made no difference.
What can I do to get rid of those intermediate steps and have plymouth kick in right after GRUB?