Skip to content

mainboard/dell: clarify OptiPlex 7010/9010 SFF naming - #872

Open
WuXieSec wants to merge 1129 commits into
Dasharo:dasharofrom
WuXieSec:docs/name-optiplex-7010-9010-sff
Open

mainboard/dell: clarify OptiPlex 7010/9010 SFF naming#872
WuXieSec wants to merge 1129 commits into
Dasharo:dasharofrom
WuXieSec:docs/name-optiplex-7010-9010-sff

Conversation

@WuXieSec

Copy link
Copy Markdown

Summary

Low-risk first step for #1182: clarify naming of the currently supported SFF variant to reflect shared 7010/9010 scope.

Change

  • src/mainboard/dell/snb_ivb_workstations/Kconfig.name
    • OptiPlex 9010 SFF -> OptiPlex 7010/9010 SFF

Why

Discussion in #1182 indicates current support scope and naming can be confusing. This update improves clarity without changing board logic or runtime behavior.

Related issue: Dasharo/dasharo-issues#1182

SergiiDmytruk and others added 30 commits August 20, 2025 16:33
Differences from the previous way of measurements:
 - must log CRTM version to PCR-0
 - must log IBB hash (as is, provided in BPM)to PCR-0
 - need to extend PCR-0 with POLICY_DATA which is a subset of PCR0_DATA
   from the original ("conventional") way

Half of the changes is just moving things into if-statement.

Upstream-Status: Pending
Change-Id: Icc101aa03db99a741c3b7142aa00d42ec6569ae9
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Iec8f5390cce146015cf50bb452673921d3e30232
Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Add blank default logo to payload to allow client customization without
showing Protectli branding. The logo is to be set afterwards, resulting
in the custom logo displaying on normal boot and the black one on
recovery.

This is adapted commit from dasharo-24.02.01 branch:
91140dd

Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I01b4c28a4f03b58c0bc856b03b645c45fa67c6af
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Add the custom Protectli logo to built binaries, replacing the black
screen in the normal boot path and preserving it in recovery.

Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I3ddbb41233403b89d2c8d823f0ae36abfaef8f0a
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Ia5bc9fbf711c02e1e038a7be5d646dc1e5f3e66e
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
ESXi’s bootloader doesn’t properly parse 1GB page entries when it
tries to replicate or interpret UEFI’s memory map/page tables during boot.
This fixes the issue of the ESXi installer crashing on startup.

Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Icb8865da7b658d55e80190fa041abcf7876f24c5
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I695d20de7a6215e31c2e13cc6cc54305d9d0e9c8
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Protectli don't want to include this feature in this release yet.

Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Disables some devices and functionalities via devicetree and FSP params,
since they're unused and may impact boot time and performance.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
S3 sleep doesn't currently work on VP2440. Disable it on the platform,
so that the faulty state is never attempted.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
ESXi’s bootloader doesn’t properly parse 1GB page entries when it
tries to replicate or interpret UEFI’s memory map/page tables during boot.
This fixes the issue of the ESXi installer crashing on startup.

Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
…anges

Some of the changes to FSP params were introduced when attempting to
resolve the MultiPhaseSiInit stage hang. Remove them, as they don't add
any value after all.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
build.sh uses _ instead of - to separate components.

Change-Id: I06d11509c130eb1556b907e0d8393cd995d118c1
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Wiktor Mowinski <wiktor.mowinski@3mdeb.com>
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
- Set TBT_FORCE_PWR to low
- Remove vGPIO configs
- Use target pad macros in the iGPU variant

Upstream-Status: Pending
Change-Id: I84a1bfd0a9af146986338ee2616f9fa028f3476a
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Iff59a7ae51e511e2fa61ebe5f2356022bd59d3f3
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
That is 0xFED40000-0xFED44FFF range which is first used by coreboot then
by EDK and OSes to communicate with TPMs via CRB interface.

Following an example from drivers/pc80/tpm/tis.c but using
TPM_CRB_BASE_ADDRESS constant to match crb_tpm_fill_ssdt().

Change-Id: Id0cad2d95097653d6ab09731b2892e82122f3eac
Upstream-Status: Pending
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Change-Id: I4b447b0d618a47bb9b2cb7e06c2715cc02d0a099
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I63393559d75b19078a18a99c51560f527cc3e328
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
A commit adding an ID for the i219 in iPXE breaks the interface. It was
reapplied during iPXE rebase, and needs to be reverted again.

Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Reapply the commit, guarding against NUC BOX which doesn't work well
with it.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Reapply the commit, guarding against NUC BOX which doesn't work well
with it.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Reapply the commit, guarding against NUC BOX which doesn't work well
with it.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
… probing

Set ROM_I2C_EN to expose the I2C USB-PD configuration EEPROM for probing
within OS. This will allow later deployment of a patched binary to it,
resolving USB-C power supply overdraw issues.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
…resume

Some FSPs do not program CPU features on S3 resume. Most likely they were
built with gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesInitOnS3Resume set
to FALSE by default. It was later fixed to be TRUE by default, but the
FSPs did not pull this change. However, IoT FSPs provide an UPD to
override this PCD. Use it to ensure the CPU features are programmed on
S3 resume if FSP MP init is used and S3 resume is supported.

TEST=Perform suspend/resume test with FWTS on ODROID-H4.

Upstream-Status: Pending
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
mkopec and others added 29 commits February 20, 2026 10:59
…tection"

This reverts commit c7bf17c.

Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I6cf60a15cc7d7d6a2e452b033f46d06a530f2a9a
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I2672cd90ad23f7f9f6b516b113c5ca4957485b9a
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Id2571e08c2ddb59d73d0808229ed3460d996b211
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I0941aa969c356df939b9eb2ccbaef9f1ca772b6b
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Iae8490b5e5a75f5428f3a490e5415b0d3e5b98f0
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Id809b8e4e644fe023270e23b8c219284072fd2bb
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
After switching to IoT FSP, TPM 2.0 would no longer initialize. To fix
this, GPIO configuration had to be moved earlier, before ramstage
enumeration, mimicking Protectli VP66XX.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
After updating the FSP to a newer version, there was no room to add
required IBG ACMs into cbfs, with proper alignment. Since the ACMs
cannot be redistributed, and keeping placeholders in the final
binaries didn't work, the problem was addressed by introducing a Kconfig
option to add placeholders during build and remove them from the final
image.

This ensures there's room for inserting ACMs, and there are no
potentially faulty placeholders in the final ROM.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
When the per-bank hash loop was introduced, the hash length
was accidentally left pointing at the pre-loop write position, so BPM
signature and IBB digest were never included in the computed hash. Fix
by using the correct post-write length.

Makes PCR-0 reconstruction valid on ADL-P.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Prior to this, with redundancy and Boot Guard enabled, FIT in TOPSWAP
lacked the BIOS ACM.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Inappropriate (Dasharo automation)
Change-Id: Ib073a38d1ca458d681ab58a68e9de3037424107b
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I2b3c8ebc558fe4a00e5b74d78a887c7e66d30916
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I77883e9f48da6e9941373bef3b4f2387b0d47102
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
… cache to PCR

EV_NO_ACTION must not be measured.

Fixes reconstruction of PCR-0 if redundancy and boot guard are enabled
at the same time.

Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I4792ebfe37cdfd532e868cfffd0f628de2bb053f
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Sort the Kconfig options while we're at it.

Upstream-Status: Pending
Change-Id: I4c600e5df33c768bd04676150a387e8890226e86
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]

Change-Id: I8d20a6c33feaab656f3e8927f97dec8801049314
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
CBFS_ALLOW_UNVERIFIED_DECOMPRESSION is required, or the platform falls
back to the EDK2 bootsplash logo.

Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Extend to include most used components, e.g. FSP, ME, IFD, microcode,
edk2, AGESA, EC.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Change-Id: Ie13b9226dd174e151605e283093a0e84aa18eada
Upstream-Status: Pending
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
1. Kconfig SBOM_INTEL_FSP_PATH default: Changed
"build/sbom/intel-fsp.json" → "src/sbom/intel-fsp.json" (static path for
user-supplied files belongs in src/, not build/).
2. cp $< $@: Replaced cp $(src-dir)/intel-fsp.json $@ with cp $< $@
(line 263), consistent with other rules.
3. strip_quotes for CONFIG_FSP_FD_PATH: Added it to the top strip
section (line 20) and replaced the inline patsubst "%",%,... shell
assignment with direct use of $(CONFIG_FSP_FD_PATH).
4. Redundant | head -1: Removed from the AGESA version extraction
pipeline (line 299) — grep -m1 already limits to one match.
5. vboot-gitdir simplification: Replaced the 7-line manual .git file
--detection with git -C 3rdparty/vboot rev-parse absolute-git-dir
--2>/dev/null (one line, handles both regular checkouts and submodules).
6. sbom in help target: Added make sbom entry to the Makefile help
output.

Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Upstream-Status: Pending
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Change-Id: Ic7cf27b77cf400470e986959fcca3de076817207
Upstream-Status: Inappropriate [Dasharo downstream]
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: I95a14e91685df2afbcdd8cdb9fc6343613efd0e3
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Upstream-Status: Inappropriate [Dasharo downstream]
Change-Id: Id9dc5ebadde78ba424c8fea7f5d61cc641c33909
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Tested with an ARC A310 GPU:

	Memory at 500000000 (64-bit, prefetchable) [size=4G]

Upstream-Status: Pending
Change-Id: Ie4d02ed15f1561ad05405b5167796483fd70c1a4
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.