On 03.02.22 10:21, Krishnakar, Srikanth wrote: > Hi, > > We are using EFIBootguard bootloader on our SIMATIC IPC 127E/227E machines > and found that the Plymouth Splash screen does not work when the system is > booting. The required Plymouth packages and themes are installed and > configured. This has been validated with the Grub2 bootloader. When we switch > to EFIBootguard then we see that instead of graphical Plymouth the text-based > grey screen with the text message "System is booting" is displayed. The > essential boot arguments are already configured for the current kernel that > is booted. Below are some details from the kernel boot log. > > Environment: > Hardware: SIMATIC IPC-127E > BIOS: 27.01.04 > Bootloader: EFIBootguard v0.9 > Debian version: 11.1 (Bullseye) > Kernel: Linux-5.10-cip (RT) > > EFI log from kernel: > [ 0.000000] efi: EFI v2.50 by INSYDE Corp. > [ 0.000000] efi: ACPI 2.0=0x7affe014 SMBIOS=0x78757000 SMBIOS > 3.0=0x78755000 ESRT=0x78753158 MEMATTR=0x74b07018 RNG=0x7874c018 > TPMEventLog=0x6b823018 > [ 0.000000] efi: seeding entropy pool > [ 0.010328] ACPI: UEFI 0x000000007AFFD000 000236 (v01 SIEMEN SIMATIC > 00000001 WAS_ 00040000) > [ 0.010344] ACPI: UEFI 0x000000007AFFA000 000042 (v01 SIEMEN SIMATIC > 00000002 WAS_ 00040000) > [ 0.010509] ACPI: Reserving UEFI table memory at [mem > 0x7affd000-0x7affd235] > [ 0.010514] ACPI: Reserving UEFI table memory at [mem > 0x7affa000-0x7affa041] > [ 0.021264] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: > 0xffffffff, max_idle_ns: 7645519600211568 ns > [ 0.595269] pci 0000:00:02.0: BAR 2: assigned to efifb > [ 0.608320] Registered efivars operations > [ 1.949876] efifb: probing for efifb > [ 1.949949] efifb: framebuffer at 0x80000000, using 3072k, total 3072k > [ 1.949952] efifb: mode is 1024x768x32, linelength=4096, pages=1 > [ 1.949954] efifb: scrolling: redraw > [ 1.949957] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0 > [ 1.955401] fb0: EFI VGA frame buffer device > [ 2.521326] fb0: switching to inteldrmfb from EFI VGA > [ 5.724750] pstore: Registered efi as persistent store backend > > > Framebuffer and i915 details: > [ 2.521326] fb0: switching to inteldrmfb from EFI VGA > [ 2.521596] i915 0000:00:02.0: vgaarb: deactivate vga console > [ 2.522471] i915 0000:00:02.0: vgaarb: changed VGA decodes: > olddecodes=io+mem,decodes=io+mem:owns=io+mem > root@debian:~# > root@indos:~# dmesg | grep -i i915 > [ 2.521596] i915 0000:00:02.0: vgaarb: deactivate vga console > [ 2.522471] i915 0000:00:02.0: vgaarb: changed VGA decodes: > olddecodes=io+mem,decodes=io+mem:owns=io+mem > [ 2.524685] i915 0000:00:02.0: Direct firmware load for > i915/bxt_dmc_ver1_07.bin failed with error -2 > [ 2.524694] i915 0000:00:02.0: [drm] Failed to load DMC firmware > i915/bxt_dmc_ver1_07.bin. Disabling runtime power management. > [ 2.524696] i915 0000:00:02.0: [drm] DMC firmware homepage: > https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915 > [ 2.550802] [drm] Initialized i915 1.6.0 20200917 for 0000:00:02.0 on > minor 0 > [ 2.566294] fbcon: i915drmfb (fb0) is primary device > [ 2.615313] i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device > > Kernel boot parameters: > root@debian:~# uname -a > Linux debian 5.10.83-cip1 #1 SMP Thu Jan 27 01:06:58 UTC 2022 x86_64 GNU/Linux > root@debian:~# cat /proc/cmdline > root=LABEL=rootfs-part-p1 splash quiet rootwait console=tty1 nohz=off splash > plymouth.ignore-serial-consoles quiet > > Plymouth packages and loaded modules: > root@debian:~# dpkg -l | grep -i plymouth > ii libplymouth5:amd64 0.9.5-3 > amd64 graphical boot animation and logger - shared libraries > ii plymouth 0.9.5-3 > amd64 boot animation, logger and I/O multiplexer > ii plymouth-label 0.9.5-3 > amd64 boot animation, logger and I/O multiplexer - label control > ii plymouth-themes 0.9.5-3 > amd64 boot animation, logger and I/O multiplexer - themes > > root@debian# > i915 2318336 2 > drm_kms_helper 278528 1 i915 > cec 49152 2 drm_kms_helper,i915 > i2c_algo_bit 16384 2 igb,i915 > drm 614400 3 drm_kms_helper,i915 > video 53248 1 i915 > root@debian:~# lsmod | grep -i fb > fb_sys_fops 16384 1 drm_kms_helper > > > The same setup works fine when we switch to grub2 bootloader without any > changes in system configuration or command-line arguments, we can see > graphical Plymouth is shown on the monitor when the target is booting. > > Observation: With EFIBootguard during the reboot process the graphical > Plymouth is seen on the monitor. But not coming up when the target is > booting. > > The splash was tested and found to be working in v0.7, with v0.9 we see this > behavior. Any pointers or suggestions to fix the issue would be appreciated. > Kindly let us know If we are missing some setup or configuration. >
Graphic splash screens haven't been an explicitly expressed requirement so far, thus this "broken" unnoticed. But the use case is generally valid. Now, looking at what is in conflict here: I recommend to read the code - it's not very complex in this regard - or support this with a quick git bisect to find the change(s) that cause the conflict. I do have a bet, but I think you should be able to spot it quickly as well. After that, we will have to decide how to deal with it. Is there a way to detect the situation (preserve splash screen vs. write debug logs), or do we need a configuration switch to change modes. If we need a switch, that should be runtime so that we can continue to build distro packages and do not need to flip a built-time option. Challenge then: First outputs are made already before any configuration file is read. Maybe use a UEFI env var instead? As that switch is not critical for the safety of the boot, that should be OK. Next question afterwards: When we are in splash screen mode, what should we do if we hit an error that really needs to be shown? Open for suggestions or prototypes here. Jan -- Siemens AG, Technology Competence Center Embedded Linux -- You received this message because you are subscribed to the Google Groups "EFI Boot Guard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/efibootguard-dev/5de681e7-9e0a-ef1f-e771-b2a860264a03%40siemens.com.
