Skip to content

Protectli VP4651 with more than 48 GB of RAM boots 2-3 seconds longer #1654

@matmacieje

Description

@matmacieje

Component

Dasharo firmware

Device

Protectli VP4651

Dasharo version

1.2.0

Dasharo Tools Suite version

2.7.1

Test case ID

No response

Brief summary

Due to not enough MTRRs (10 available, 11 expected), firmware boot time on Protectli VP4651 is 2-3 seconds longer when more than 48 GB of RAM is installed.

How reproducible

10/10

How to reproduce

  1. Install 48 GB (32 + 16) of RAM on Protectli VP4651.
  2. Boot Dasharo at least 2 times, verify RAM amount in Dahsaro menu.
  3. Boot DTS shell, use cbmem -t to get coreboot boot time.
  4. Install 64 GB (32 + 32) of RAM,
  5. Boot Dasharo at least 2 times, verify RAM amount in Dahsaro menu.
  6. Boot DTS shell, use cbmem -t to get coreboot boot time.
  7. Notice higher firmware boot time (17xx ms vs at least 42xx ms).

Use Dasharo image with coreboot serial logging enabled, with 64 GB check for MTRR-related errors.

Expected behavior

Boot time difference lower than 1s.


No MTRR-related errors in coreboot serial log.

Actual behavior

Boot time difference is 2-3s.


MTRR-related errors in coreboot serial log exist.

Screenshots

No response

Additional context

vp4651_cbmem.zip
coreboot_1.2.0_microcode-20250812_48G_test.log
coreboot_1.2.0_microcode-20250812_64G_test.log

Solutions you've tried

Lack of 11th MTRR makes flash caching impossible, this may result in longer loading times of FW components from flash (i.e. payload). I've tried to set MMIO area size to 2 GB by putting memupd->FspmConfig.MmioSize = 0x800; in romstage.c, mainboard_memory_init_params(). This supposed to save one MTRR and making flash caching possible, but it didn't worked for me.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions