From f7268d4d9923b4117ba9132f6cfe06ca49c49cd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Kope=C4=87?= Date: Thu, 29 Jan 2026 15:04:39 +0100 Subject: [PATCH] docs/variants/novacustom_v5*: Add January 2026 releases MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Kopeć --- ...gpu_v1.0.0_btg_prod.rom_openness_chart.png | Bin 0 -> 27678 bytes ...btg_prod.rom_openness_chart_full_image.png | Bin 0 -> 33509 bytes .../novacustom_v540tnx/openness-score.md | 129 +++++++++++++++++ docs/variants/novacustom_v540tnx/releases.md | 131 +++++++++++++++-- ...gpu_v1.0.1_btg_prod.rom_openness_chart.png | Bin 0 -> 27364 bytes ...btg_prod.rom_openness_chart_full_image.png | Bin 0 -> 33183 bytes .../novacustom_v540tu/openness-score.md | 129 +++++++++++++++++ docs/variants/novacustom_v540tu/releases.md | 88 ++++++++++++ ...gpu_v1.0.0_btg_prod.rom_openness_chart.png | Bin 0 -> 27733 bytes ...btg_prod.rom_openness_chart_full_image.png | Bin 0 -> 33566 bytes .../novacustom_v560tnx/openness-score.md | 129 +++++++++++++++++ docs/variants/novacustom_v560tnx/releases.md | 135 ++++++++++++++++-- ...gpu_v1.0.1_btg_prod.rom_openness_chart.png | Bin 0 -> 27435 bytes ...btg_prod.rom_openness_chart_full_image.png | Bin 0 -> 33244 bytes .../novacustom_v560tu/openness-score.md | 129 +++++++++++++++++ docs/variants/novacustom_v560tu/releases.md | 88 ++++++++++++ 16 files changed, 940 insertions(+), 18 deletions(-) create mode 100644 docs/variants/novacustom_v540tnx/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png create mode 100644 docs/variants/novacustom_v540tnx/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart_full_image.png create mode 100644 docs/variants/novacustom_v540tu/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart.png create mode 100644 docs/variants/novacustom_v540tu/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart_full_image.png create mode 100644 docs/variants/novacustom_v560tnx/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png create mode 100644 docs/variants/novacustom_v560tnx/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart_full_image.png create mode 100644 docs/variants/novacustom_v560tu/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart.png create mode 100644 docs/variants/novacustom_v560tu/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart_full_image.png diff --git a/docs/variants/novacustom_v540tnx/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png b/docs/variants/novacustom_v540tnx/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png new file mode 100644 index 0000000000000000000000000000000000000000..433cbca08bf255537ad91cfd6147fe43c12db558 GIT binary patch literal 27678 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 literal 0 HcmV?d00001 diff --git a/docs/variants/novacustom_v540tnx/openness-score.md b/docs/variants/novacustom_v540tnx/openness-score.md index c78fae6aaa1..b15a996eb57 100644 --- a/docs/variants/novacustom_v540tnx/openness-score.md +++ b/docs/variants/novacustom_v540tnx/openness-score.md @@ -5,6 +5,135 @@ Score](../../glossary.md#dasharo-openness-score) for NovaCustom V54xTNx Dasharo releases. The content of the page is generated with [Dasharo Openness Score utility](https://github.com/Dasharo/Openness-Score). +## v1.0.0 + +Openness Score for novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom + +Open-source code percentage: **22.4%** +Closed-source code percentage: **77.6%** + +* Image size: 33554432 (0x2000000) +* Number of regions: 28 +* Number of CBFSes: 3 +* Total open-source code size: 3884496 (0x3b45d0) +* Total closed-source code size: 13427181 (0xcce1ed) +* Total data size: 794415 (0xc1f2f) +* Total empty size: 15448340 (0xebb914) + +![](novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png) + +![](novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart_full_image.png) + +> Numbers given above already include the calculations from CBFS regions +> presented below + +### FMAP regions + +| FMAP region | Offset | Size | Category | +| ----------- | ------ | ---- | -------- | +| SI_ME | 0x4000 | 0x9fc000 | closed-source | +| SI_DESC | 0x0 | 0x4000 | data | +| RECOVERY_MRC_CACHE | 0x1000000 | 0x10000 | data | +| RW_MRC_CACHE | 0x1010000 | 0x10000 | data | +| SMMSTORE | 0x1020000 | 0x80000 | data | +| RW_ELOG | 0x10a0000 | 0x4000 | data | +| SHARED_DATA | 0x10a4000 | 0x2000 | data | +| VBLOCK_DEV | 0x10a6000 | 0x2000 | data | +| RW_NVRAM | 0x10a8000 | 0x6000 | data | +| VBLOCK_A | 0x1200000 | 0x2000 | data | +| RW_FWID_A | 0x18fffc0 | 0x40 | data | +| RO_VPD | 0x1900000 | 0x4000 | data | +| FMAP | 0x1906000 | 0x800 | data | +| RO_FRID | 0x1906800 | 0x40 | data | +| GBB | 0x1907000 | 0x3000 | data | +| RW_UNUSED | 0xa00000 | 0x600000 | empty | + +### CBFS BOOTSPLASH + +* CBFS size: 1048576 +* Number of files: 1 +* Open-source files size: 0 (0x0) +* Closed-source files size: 0 (0x0) +* Data size: 28 (0x1c) +* Empty size: 1048548 (0xfffe4) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| (empty) | null | 1048548 | none | empty | + +### CBFS FW_MAIN_A + +* CBFS size: 7331776 +* Number of files: 15 +* Open-source files size: 1893096 (0x1ce2e8) +* Closed-source files size: 1205607 (0x126567) +* Data size: 10861 (0x2a6d) +* Empty size: 4222212 (0x406d04) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1515710 | none | open-source | +| fallback/romstage | stage | 106872 | none | open-source | +| fallback/ramstage | stage | 166040 | LZMA | open-source | +| fallback/dsdt.aml | raw | 26182 | none | open-source | +| fallback/postcar | stage | 78292 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| config | raw | 6399 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1761 | LZ4 | data | +| (empty) | null | 548 | none | empty | +| (empty) | null | 4221664 | none | empty | + +### CBFS COREBOOT + +* CBFS size: 7299072 +* Number of files: 24 +* Open-source files size: 1991400 (0x1e62e8) +* Closed-source files size: 1406150 (0x1574c6) +* Data size: 15398 (0x3c26) +* Empty size: 3886124 (0x3b4c2c) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1515710 | none | open-source | +| fallback/romstage | stage | 106872 | none | open-source | +| fallback/ramstage | stage | 166040 | LZMA | open-source | +| fallback/dsdt.aml | raw | 26182 | none | open-source | +| fallback/postcar | stage | 78292 | none | open-source | +| bootblock | bootblock | 98304 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| txt_sinit_acm.bin | raw | 68447 | LZMA | closed-source | +| txt_bios_acm.bin | raw | 132096 | none | closed-source | +| cbfs_master_header | cbfs header | 32 | none | data | +| intel_fit | intel_fit | 272 | none | data | +| boot_policy_manifest.bin | raw | 1536 | none | data | +| key_manifest.bin | raw | 1024 | none | data | +| config | raw | 6399 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1761 | LZ4 | data | +| cmos_layout.bin | cmos_layout | 800 | none | data | +| (empty) | null | 484 | none | empty | +| (empty) | null | 183972 | none | empty | +| (empty) | null | 3701668 | none | empty | + ## v0.9.1 Report has been generated with Openness Score utility version v0.2 diff --git a/docs/variants/novacustom_v540tnx/releases.md b/docs/variants/novacustom_v540tnx/releases.md index 5cd56547245..3c949aaa1c0 100644 --- a/docs/variants/novacustom_v540tnx/releases.md +++ b/docs/variants/novacustom_v540tnx/releases.md @@ -9,6 +9,119 @@ For details about our release process please read {{ subscribe_form("1a00f9c2-a8cc-48b6-8913-3b84036d33e6", "Subscribe to NovaCustom V54xTNx 14th Gen Dasharo Release Newsletter") }} +## v1.0.0 - 2026-01-29 + +Test results for this release can be found +[here](https://github.com/Dasharo/osfv-results/blob/main/boards/NovaCustom/MTL_14th_Gen/V540TNX/). + +### Added + +- [Quiet boot/Fast boot](https://docs.dasharo.com/dasharo-menu-docs/boot-maintenance-mgr/) +- [FTDI controller support](https://github.com/Dasharo/open-source-firmware-validation/blob/develop/docs/novacustom.md) +- [Dasharo TrustRoot (Intel Boot Guard) support](https://docs.dasharo.com/glossary/#dasharo-trustroot) +- [Sleep-and-charge ports](https://github.com/Dasharo/ec/pull/66) +- [Sleep type option](https://github.com/Dasharo/coreboot/pull/738/files) +- [PCR-0 reconstruction](https://github.com/Dasharo/coreboot/pull/740) +- [ACPI driver](https://docs.dasharo.com/unified/novacustom/features/#acpi-driver) +- [UEFI Capsule Update support](https://docs.dasharo.com/kb/capsule-updates-overview/) +- Fedora support +- [Intel Boot Guard OEM Signing Key check in capsule update](https://docs.dasharo.com/guides/capsule-update/#troubleshooting) + +### Changed + +- [coreboot rebased on 24.12](https://doc.coreboot.org/releases/coreboot-24.12-relnotes.html) +- EDK II rebased on edk2-stable202502 +- UEFI DBX updated to 2025-10-16 +- Intel Microcode updated to microcode-20251111 +- Owner GUID of Secure Boot DB and KEK to Microsoft recommended values + +### Fixed + +- [No HDMI output in FW on V540TU and V560TU](https://github.com/Dasharo/dasharo-issues/issues/930) +- [Laggy behaviour on Manjaro (KDE) with open drivers](https://github.com/Dasharo/dasharo-issues/issues/911) +- [Battery draining in sleep mode on Windows 11](https://github.com/Dasharo/dasharo-issues/issues/1375) +- [Small text in setup menu](https://github.com/Dasharo/dasharo-issues/issues/1237) +- [External boot file to USB flash drive not found after rebooting](https://github.com/dasharo/dasharo-issues/issues/990) +- [XFCE battery indicator keeps switching charge state when fully charged](https://github.com/dasharo/dasharo-issues/issues/1217) +- [Laptop starts after shutting down if WiFi is firmware-disabled](https://github.com/dasharo/dasharo-issues/issues/1157) +- [No HDMI output in firmware](https://github.com/dasharo/dasharo-issues/issues/533) +- [Integrated graphics driver does not load (Windows 11)](https://github.com/dasharo/dasharo-issues/issues/1236) +- [BIOS settings are randomly reset](https://github.com/dasharo/dasharo-issues/issues/1293) +- [Booting DTS v2.0.0 through iPXE has no internet](https://github.com/dasharo/dasharo-issues/issues/1142) +- [Wrong serial number printed in console](https://github.com/dasharo/dasharo-issues/issues/1255) +- [No external HDMI display (Firmware)](https://github.com/dasharo/dasharo-issues/issues/1098) +- [Logo out of proportion](https://github.com/Dasharo/dasharo-issues/issues/1238) +- [External audio devices don't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1583) +- [When battery is low, USB-PD is constantly charging then discharging](https://github.com/Dasharo/dasharo-issues/issues/1660) +- [Touchpad not working in Windows installer](https://github.com/Dasharo/dasharo-issues/issues/1657) +- [Low graphics performance](https://github.com/Dasharo/dasharo-issues/issues/1243) +- [Fusing process fails](https://github.com/Dasharo/dasharo-issues/issues/1622) +- [USB-PD charger overdraw](https://github.com/Dasharo/dasharo-issues/issues/1599) +- [SMMSTORE writes are unreliable if SMM_BWP is enabled](https://github.com/Dasharo/dasharo-issues/issues/1664) +- [DBX update via fwupd fails](https://github.com/Dasharo/dasharo-issues/issues/1641) +- [USB keyboard through docking station not working before OS boots](https://github.com/Dasharo/dasharo-issues/issues/1662) +- [Windows installer claims it doesn't meet the requirements](https://github.com/Dasharo/dasharo-issues/issues/1658) +- [Cannot enable memory integrity kern isolation in Windows Security](https://github.com/Dasharo/dasharo-issues/issues/1674) + +### Known issues + +- [Previous power state restoration doesn't work](https://github.com/Dasharo/dasharo-issues/issues/931) +- [Artifacts in video playback in some players using HW acceleration](https://github.com/Dasharo/dasharo-issues/issues/948) +- [Only native resolution listed for internal panel](https://github.com/Dasharo/dasharo-issues/issues/949) +- [Early DMA protection cannot be applied to NovaCustom MTL](https://github.com/Dasharo/dasharo-issues/issues/985) +- [Spurious USB 3 disconnects with Sonnet Echo 11 Thunderbolt 4 dock](https://github.com/Dasharo/dasharo-issues/issues/1081) +- [GRUB installation fails sometimes](https://github.com/Dasharo/dasharo-issues/issues/1594) +- [Capsule Updates require ME to be manually disabled](https://github.com/Dasharo/dasharo-issues/issues/1302) +- [Capsule update signing is not enforced](https://github.com/Dasharo/dasharo-issues/issues/1075) +- [Microphone mute Fn key doesn't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1006) +- [48GB SODIMMs get hot during MemTest86+](https://github.com/Dasharo/dasharo-issues/issues/1125) +- [Windows 11 fails to resume from hibernation](https://github.com/dasharo/dasharo-issues/issues/529) + +### Binaries + +[novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom][novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom_file]{.md-button} +[sha256][novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom_hash]{.md-button} +[sha256.sig][novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom_sig]{.md-button} + +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap][novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap_file]{.md-button} +[sha256][novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap_hash]{.md-button} +[sha256.sig][novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap_sig]{.md-button} + +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom][novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_file]{.md-button} +[sha256][novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_hash]{.md-button} +[sha256.sig][novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_sig]{.md-button} + +To verify binary integrity with hash and signature please follow the +instructions in [Dasharo release signature verification](/guides/signature-verification) +using [this key](https://raw.githubusercontent.com/3mdeb/3mdeb-secpack/master/customer-keys/novacustom/novacustom-open-source-firmware-release-1.x-key.asc) + +### SBOM (Software Bill of Materials) + +- [Dasharo coreboot fork based on 25.03 revision 6de027d1](https://github.com/Dasharo/coreboot/tree/6de027d1) +- [Dasharo EDKII fork based on edk2-stable202502 revision 917172ee](https://github.com/Dasharo/edk2/tree/917172ee) +- [Dasharo iPXE fork based on 2025.03 revision 6c7068fc](https://github.com/Dasharo/ipxe/tree/6c7068fc) + + [License](https://github.com/Dasharo/ipxe/blob/6c7068fc/COPYING.GPLv2) +- [vboot based on 3d37d2aafe revision f1f70f46](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/) + + [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/LICENSE) +- [Intel Management Engine version v18.0.10.2285](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tnx/me.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Firmware Support Package for Meteor Lake-H version 2024/04/30 v4122_12](https://github.com/Dasharo/dasharo-blobs/tree/8dce7604/novacustom/v5x0tu/MeteorLakeFspBinPkg) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Flash Descriptor version v1.0](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tnx/descriptor.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel microcode version MTL C0 0x00000025 0x25 19/03/2025](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/tree/microcode-20251111/intel-ucode/06-aa-04) + + [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20251111/license) + +[novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom +[novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom.sha256 +[novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_ec_v1.0.0.rom.sha256.sig +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap.sha256 +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.cap.sha256.sig +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom.sha256 +[novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v540tnx_mtl/uefi/v1.0.0/novacustom_v54x_mtl_dgpu_v1.0.0_btg_prod.rom.sha256.sig + ## v0.9.1 - 2024-11-07 Test results for this release can be found @@ -74,23 +187,23 @@ using [this key](https://raw.githubusercontent.com/3mdeb/3mdeb-secpack/master/cu ### SBOM (Software Bill of Materials) - [Dasharo fork of coreboot based on 24.02 revision c44f1998](https://github.com/Dasharo/coreboot/tree/c44f1998) - * [License](https://github.com/Dasharo/coreboot/blob/c44f1998/COPYING) + + [License](https://github.com/Dasharo/coreboot/blob/c44f1998/COPYING) - [Dasharo fork of EDKII based on edk2-stable202402 revision f3e18c6c](https://github.com/Dasharo/edk2/tree/f3e18c6c) - * [License](https://github.com/Dasharo/edk2/blob/f3e18c6c/License.txt) + + [License](https://github.com/Dasharo/edk2/blob/f3e18c6c/License.txt) - [Dasharo fork of edk2-platforms based on 8ea6ec38 revision 3323ed48](https://github.com/Dasharo/edk2-platforms/tree/3323ed48) - * [License](https://github.com/Dasharo/edk2-platforms/blob/3323ed48/License.txt) + + [License](https://github.com/Dasharo/edk2-platforms/blob/3323ed48/License.txt) - [Dasharo fork of System76 EC based on 485f3900 revision 3e931cf8](https://github.com/Dasharo/ec/tree/3e931cf8/) - * [License](https://github.com/Dasharo/ec/blob/3e931cf8/LICENSE) + + [License](https://github.com/Dasharo/ec/blob/3e931cf8/LICENSE) - [Dasharo fork of iPXE based on d2d194bc revision 35d84756](https://github.com/Dasharo/ipxe/tree/35d84756) - * [License](https://github.com/Dasharo/ipxe/blob/35d84756/COPYING.GPLv2) + + [License](https://github.com/Dasharo/ipxe/blob/35d84756/COPYING.GPLv2) - [vboot based on 3d37d2aa revision 3d37d2aa](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/3d37d2aa/) - * [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/3d37d2aa/LICENSE) + + [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/3d37d2aa/LICENSE) - [Intel Management Engine based on v18.0.5.2040 revision 3541ad31](https://github.com/Dasharo/dasharo-blobs/blob/main/novacustom/v5x0tnx/me.bin) - * [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) - [Intel Flash Descriptor based on v1.0 revision 3541ad31](https://github.com/Dasharo/dasharo-blobs/blob/main/novacustom/v5x0tnx/descriptor.bin) - * [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) - [Intel processor microcode based on MTL C0 0x0000001c revision microcode-20240531](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/tree/microcode-20240531/intel-ucode/06-aa-04) - * [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20240531/license) + + [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20240531/license) [novacustom_v54x_mtl_ec_v0.9.1.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v54x_mtl/v0.9.1/novacustom_v54x_mtl_ec_v0.9.1.rom [novacustom_v54x_mtl_ec_v0.9.1.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v54x_mtl/v0.9.1/novacustom_v54x_mtl_ec_v0.9.1.rom.sha256 diff --git a/docs/variants/novacustom_v540tu/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart.png b/docs/variants/novacustom_v540tu/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart.png new file mode 100644 index 0000000000000000000000000000000000000000..e3c07cd06b4f7c9e03148bce9fbc270e926ee9ec GIT binary patch literal 27364 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 literal 0 HcmV?d00001 diff --git a/docs/variants/novacustom_v540tu/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart_full_image.png b/docs/variants/novacustom_v540tu/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart_full_image.png new file mode 100644 index 0000000000000000000000000000000000000000..18d81dd489450014082181e5384d92403ae8c053 GIT binary patch literal 33183 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 Numbers given above already include the calculations from CBFS regions +> presented below + +### FMAP regions + +| FMAP region | Offset | Size | Category | +| ----------- | ------ | ---- | -------- | +| SI_ME | 0x6000 | 0x9fa000 | closed-source | +| SI_DESC | 0x0 | 0x4000 | data | +| RECOVERY_MRC_CACHE | 0x1000000 | 0x10000 | data | +| RW_MRC_CACHE | 0x1010000 | 0x10000 | data | +| SMMSTORE | 0x1020000 | 0x80000 | data | +| RW_ELOG | 0x10a0000 | 0x4000 | data | +| SHARED_DATA | 0x10a4000 | 0x2000 | data | +| VBLOCK_DEV | 0x10a6000 | 0x2000 | data | +| RW_NVRAM | 0x10a8000 | 0x6000 | data | +| VBLOCK_A | 0x1200000 | 0x2000 | data | +| RW_FWID_A | 0x18fffc0 | 0x40 | data | +| RO_VPD | 0x1900000 | 0x4000 | data | +| FMAP | 0x1906000 | 0x800 | data | +| RO_FRID | 0x1906800 | 0x40 | data | +| GBB | 0x1907000 | 0x3000 | data | +| RW_UNUSED | 0xa00000 | 0x600000 | empty | + +### CBFS BOOTSPLASH + +* CBFS size: 1048576 +* Number of files: 1 +* Open-source files size: 0 (0x0) +* Closed-source files size: 0 (0x0) +* Data size: 28 (0x1c) +* Empty size: 1048548 (0xfffe4) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| (empty) | null | 1048548 | none | empty | + +### CBFS FW_MAIN_A + +* CBFS size: 7331776 +* Number of files: 15 +* Open-source files size: 1880594 (0x1cb212) +* Closed-source files size: 1257825 (0x133161) +* Data size: 10825 (0x2a49) +* Empty size: 4182532 (0x3fd204) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1564998 | none | open-source | +| fallback/romstage | stage | 105656 | none | open-source | +| fallback/ramstage | stage | 161603 | LZMA | open-source | +| fallback/dsdt.aml | raw | 23083 | none | open-source | +| fallback/postcar | stage | 77644 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| config | raw | 6388 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1745 | LZ4 | data | +| (empty) | null | 1124 | none | empty | +| (empty) | null | 4181408 | none | empty | + +### CBFS COREBOOT + +* CBFS size: 7299072 +* Number of files: 24 +* Open-source files size: 1978898 (0x1e3212) +* Closed-source files size: 1458368 (0x1640c0) +* Data size: 15362 (0x3c02) +* Empty size: 3846444 (0x3ab12c) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1564998 | none | open-source | +| fallback/romstage | stage | 105656 | none | open-source | +| fallback/ramstage | stage | 161603 | LZMA | open-source | +| fallback/dsdt.aml | raw | 23083 | none | open-source | +| fallback/postcar | stage | 77644 | none | open-source | +| bootblock | bootblock | 98304 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| txt_sinit_acm.bin | raw | 68447 | LZMA | closed-source | +| txt_bios_acm.bin | raw | 132096 | none | closed-source | +| cbfs_master_header | cbfs header | 32 | none | data | +| intel_fit | intel_fit | 272 | none | data | +| boot_policy_manifest.bin | raw | 1536 | none | data | +| key_manifest.bin | raw | 1024 | none | data | +| config | raw | 6388 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1745 | LZ4 | data | +| cmos_layout.bin | cmos_layout | 800 | none | data | +| (empty) | null | 1060 | none | empty | +| (empty) | null | 143716 | none | empty | +| (empty) | null | 3701668 | none | empty | + ## v1.0.0 Openness Score for novacustom_v54x_mtl_igpu_v1.0.0.rom diff --git a/docs/variants/novacustom_v540tu/releases.md b/docs/variants/novacustom_v540tu/releases.md index 0ff3ba873f7..d13c39e65b1 100644 --- a/docs/variants/novacustom_v540tu/releases.md +++ b/docs/variants/novacustom_v540tu/releases.md @@ -9,6 +9,94 @@ For details about our release process please read {{ subscribe_form("c82fe8ab-8332-460e-8251-401f0d7b89ee", "Subscribe to NovaCustom V540TU 14th Gen Dasharo Release Newsletter") }} +## v1.0.1 - 2026-01-29 + +Test results for this release can be found +[here](https://github.com/Dasharo/osfv-results/blob/main/boards/NovaCustom/MTL_14th_Gen/V540TU/). + +### Added + +- [Intel Boot Guard OEM Signing Key check in capsule update](https://docs.dasharo.com/guides/capsule-update/#troubleshooting) + +### Changed + +- UEFI DBX updated to 2025-10-16 +- Intel Microcode updated to microcode-20251111 + +### Fixed + +- [No external HDMI display (Firmware)](https://github.com/dasharo/dasharo-issues/issues/1098) +- [Logo out of proportion](https://github.com/Dasharo/dasharo-issues/issues/1238) +- [External audio devices don't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1583) +- [When battery is low, USB-PD is constantly charging then discharging](https://github.com/Dasharo/dasharo-issues/issues/1660) +- [Touchpad not working in Windows installer](https://github.com/Dasharo/dasharo-issues/issues/1657) +- [Low graphics performance](https://github.com/Dasharo/dasharo-issues/issues/1243) +- [Fusing process fails](https://github.com/Dasharo/dasharo-issues/issues/1622) +- [USB-PD charger overdraw](https://github.com/Dasharo/dasharo-issues/issues/1599) +- [SMMSTORE writes are unreliable if SMM_BWP is enabled](https://github.com/Dasharo/dasharo-issues/issues/1664) +- [DBX update via fwupd fails](https://github.com/Dasharo/dasharo-issues/issues/1641) +- [USB keyboard through docking station not working before OS boots](https://github.com/Dasharo/dasharo-issues/issues/1662) +- [Windows installer claims it doesn't meet the requirements](https://github.com/Dasharo/dasharo-issues/issues/1658) +- [Cannot enable memory integrity kern isolation in Windows Security](https://github.com/Dasharo/dasharo-issues/issues/1674) + +### Known issues + +- [Previous power state restoration doesn't work](https://github.com/Dasharo/dasharo-issues/issues/931) +- [Artifacts in video playback in some players using HW acceleration](https://github.com/Dasharo/dasharo-issues/issues/948) +- [Only native resolution listed for internal panel](https://github.com/Dasharo/dasharo-issues/issues/949) +- [Early DMA protection cannot be applied to NovaCustom MTL](https://github.com/Dasharo/dasharo-issues/issues/985) +- [Spurious USB 3 disconnects with Sonnet Echo 11 Thunderbolt 4 dock](https://github.com/Dasharo/dasharo-issues/issues/1081) +- [GRUB installation fails sometimes](https://github.com/Dasharo/dasharo-issues/issues/1594) +- [Capsule Updates require ME to be manually disabled](https://github.com/Dasharo/dasharo-issues/issues/1302) +- [Capsule update signing is not enforced](https://github.com/Dasharo/dasharo-issues/issues/1075) +- [Microphone mute Fn key doesn't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1006) +- [48GB SODIMMs get hot during MemTest86+](https://github.com/Dasharo/dasharo-issues/issues/1125) + +### Binaries + +[novacustom_v54x_mtl_igpu_ec_v1.0.1.rom][novacustom_v54x_mtl_igpu_ec_v1.0.1.rom_file]{.md-button} +[sha256][novacustom_v54x_mtl_igpu_ec_v1.0.1.rom_hash]{.md-button} +[sha256.sig][novacustom_v54x_mtl_igpu_ec_v1.0.1.rom_sig]{.md-button} + +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap][novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap_file]{.md-button} +[sha256][novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap_hash]{.md-button} +[sha256.sig][novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap_sig]{.md-button} + +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom][novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_file]{.md-button} +[sha256][novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_hash]{.md-button} +[sha256.sig][novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_sig]{.md-button} + +To verify binary integrity with hash and signature please follow the +instructions in [Dasharo release signature verification](/guides/signature-verification) +using [this key](https://raw.githubusercontent.com/3mdeb/3mdeb-secpack/master/customer-keys/novacustom/novacustom-open-source-firmware-release-1.x-key.asc) + +### SBOM (Software Bill of Materials) + +- [Dasharo coreboot fork based on 25.03 revision 6de027d1](https://github.com/Dasharo/coreboot/tree/6de027d1) +- [Dasharo EDKII fork based on edk2-stable202502 revision 917172ee](https://github.com/Dasharo/edk2/tree/917172ee) +- [Dasharo iPXE fork based on 2025.03 revision 6c7068fc](https://github.com/Dasharo/ipxe/tree/6c7068fc) + + [License](https://github.com/Dasharo/ipxe/blob/6c7068fc/COPYING.GPLv2) +- [vboot based on 3d37d2aafe revision f1f70f46](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/) + + [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/LICENSE) +- [Intel Management Engine version v18.0.10.2285](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tu/me.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Firmware Support Package for Meteor Lake-H version 2024/04/30 v4122_12](https://github.com/Dasharo/dasharo-blobs/tree/8dce7604/novacustom/v5x0tu/MeteorLakeFspBinPkg) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Flash Descriptor version v1.0](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tu/descriptor.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel microcode version MTL C0 0x00000025 0x25 19/03/2025](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/tree/microcode-20251111/intel-ucode/06-aa-04) + + [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20251111/license) + +[novacustom_v54x_mtl_igpu_ec_v1.0.1.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_ec_v1.0.1.rom +[novacustom_v54x_mtl_igpu_ec_v1.0.1.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_ec_v1.0.1.rom.sha256 +[novacustom_v54x_mtl_igpu_ec_v1.0.1.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_ec_v1.0.1.rom.sha256.sig +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap.sha256 +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.cap.sha256.sig +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom.sha256 +[novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v540tu_mtl/uefi/v1.0.1/novacustom_v54x_mtl_igpu_v1.0.1_btg_prod.rom.sha256.sig + ## v1.0.0 - 2025-09-18 Test results for this release can be found diff --git a/docs/variants/novacustom_v560tnx/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png b/docs/variants/novacustom_v560tnx/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_openness_chart.png new file mode 100644 index 0000000000000000000000000000000000000000..d7010a9659e14debb0bf9dd65ef09a3b99b20e88 GIT binary patch literal 27733 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 Numbers given above already include the calculations from CBFS regions +> presented below + +### FMAP regions + +| FMAP region | Offset | Size | Category | +| ----------- | ------ | ---- | -------- | +| SI_ME | 0x4000 | 0x9fc000 | closed-source | +| SI_DESC | 0x0 | 0x4000 | data | +| RECOVERY_MRC_CACHE | 0x1000000 | 0x10000 | data | +| RW_MRC_CACHE | 0x1010000 | 0x10000 | data | +| SMMSTORE | 0x1020000 | 0x80000 | data | +| RW_ELOG | 0x10a0000 | 0x4000 | data | +| SHARED_DATA | 0x10a4000 | 0x2000 | data | +| VBLOCK_DEV | 0x10a6000 | 0x2000 | data | +| RW_NVRAM | 0x10a8000 | 0x6000 | data | +| VBLOCK_A | 0x1200000 | 0x2000 | data | +| RW_FWID_A | 0x18fffc0 | 0x40 | data | +| RO_VPD | 0x1900000 | 0x4000 | data | +| FMAP | 0x1906000 | 0x800 | data | +| RO_FRID | 0x1906800 | 0x40 | data | +| GBB | 0x1907000 | 0x3000 | data | +| RW_UNUSED | 0xa00000 | 0x600000 | empty | + +### CBFS BOOTSPLASH + +* CBFS size: 1048576 +* Number of files: 1 +* Open-source files size: 0 (0x0) +* Closed-source files size: 0 (0x0) +* Data size: 28 (0x1c) +* Empty size: 1048548 (0xfffe4) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| (empty) | null | 1048548 | none | empty | + +### CBFS FW_MAIN_A + +* CBFS size: 7331776 +* Number of files: 15 +* Open-source files size: 1893030 (0x1ce2a6) +* Closed-source files size: 1205807 (0x12662f) +* Data size: 10855 (0x2a67) +* Empty size: 4222084 (0x406c84) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1515710 | none | open-source | +| fallback/romstage | stage | 106872 | none | open-source | +| fallback/ramstage | stage | 165974 | LZMA | open-source | +| fallback/dsdt.aml | raw | 26182 | none | open-source | +| fallback/postcar | stage | 78292 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| config | raw | 6396 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1761 | LZ4 | data | +| (empty) | null | 420 | none | empty | +| (empty) | null | 4221664 | none | empty | + +### CBFS COREBOOT + +* CBFS size: 7299072 +* Number of files: 24 +* Open-source files size: 1991334 (0x1e62a6) +* Closed-source files size: 1406350 (0x15758e) +* Data size: 15392 (0x3c20) +* Empty size: 3885996 (0x3b4bac) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1515710 | none | open-source | +| fallback/romstage | stage | 106872 | none | open-source | +| fallback/ramstage | stage | 165974 | LZMA | open-source | +| fallback/dsdt.aml | raw | 26182 | none | open-source | +| fallback/postcar | stage | 78292 | none | open-source | +| bootblock | bootblock | 98304 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| txt_sinit_acm.bin | raw | 68447 | LZMA | closed-source | +| txt_bios_acm.bin | raw | 132096 | none | closed-source | +| cbfs_master_header | cbfs header | 32 | none | data | +| intel_fit | intel_fit | 272 | none | data | +| boot_policy_manifest.bin | raw | 1536 | none | data | +| key_manifest.bin | raw | 1024 | none | data | +| config | raw | 6396 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1761 | LZ4 | data | +| cmos_layout.bin | cmos_layout | 800 | none | data | +| (empty) | null | 356 | none | empty | +| (empty) | null | 183972 | none | empty | +| (empty) | null | 3701668 | none | empty | + ## v0.9.1 Report has been generated with Openness Score utility version v0.2 diff --git a/docs/variants/novacustom_v560tnx/releases.md b/docs/variants/novacustom_v560tnx/releases.md index 773c4697118..a1e951e6ba0 100644 --- a/docs/variants/novacustom_v560tnx/releases.md +++ b/docs/variants/novacustom_v560tnx/releases.md @@ -9,6 +9,123 @@ For details about our release process please read {{ subscribe_form("afc2dba2-664f-4b85-9fea-70df53400f1f", "Subscribe to NovaCustom V56xTNx 14th Gen Dasharo Release Newsletter") }} +## v1.0.0 - 2026-01-29 + +Test results for this release can be found +[here](https://github.com/Dasharo/osfv-results/blob/main/boards/NovaCustom/MTL_14th_Gen/V560TNX/). + +### Added + +- [Quiet boot/Fast boot](https://docs.dasharo.com/dasharo-menu-docs/boot-maintenance-mgr/) +- [FTDI controller support](https://github.com/Dasharo/open-source-firmware-validation/blob/develop/docs/novacustom.md) +- [Dasharo TrustRoot (Intel Boot Guard) support](https://docs.dasharo.com/glossary/#dasharo-trustroot) +- [Sleep-and-charge ports](https://github.com/Dasharo/ec/pull/66) +- [Sleep type option](https://github.com/Dasharo/coreboot/pull/738/files) +- [PCR-0 reconstruction](https://github.com/Dasharo/coreboot/pull/740) +- [ACPI driver](https://docs.dasharo.com/unified/novacustom/features/#acpi-driver) +- [UEFI Capsule Update support](https://docs.dasharo.com/kb/capsule-updates-overview/) +- Fedora support +- [Intel Boot Guard OEM Signing Key check in capsule update](https://docs.dasharo.com/guides/capsule-update/#troubleshooting) + +### Changed + +- [coreboot rebased on 24.12](https://doc.coreboot.org/releases/coreboot-24.12-relnotes.html) +- EDK II rebased on edk2-stable202502 +- UEFI DBX updated to 2025-10-16 +- Intel Microcode updated to microcode-20251111 +- Owner GUID of Secure Boot DB and KEK to Microsoft recommended values + +### Fixed + +- [No HDMI output in FW on V540TU and V560TU](https://github.com/Dasharo/dasharo-issues/issues/930) +- [Laggy behaviour on Manjaro (KDE) with open drivers](https://github.com/Dasharo/dasharo-issues/issues/911) +- [Battery draining in sleep mode on Windows 11](https://github.com/Dasharo/dasharo-issues/issues/1375) +- [Small text in setup menu](https://github.com/Dasharo/dasharo-issues/issues/1237) +- [External boot file to USB flash drive not found after rebooting](https://github.com/dasharo/dasharo-issues/issues/990) +- [XFCE battery indicator keeps switching charge state when fully charged](https://github.com/dasharo/dasharo-issues/issues/1217) +- [Laptop starts after shutting down if WiFi is firmware-disabled](https://github.com/dasharo/dasharo-issues/issues/1157) +- [No HDMI output in firmware](https://github.com/dasharo/dasharo-issues/issues/533) +- [Integrated graphics driver does not load (Windows 11)](https://github.com/dasharo/dasharo-issues/issues/1236) +- [BIOS settings are randomly reset](https://github.com/dasharo/dasharo-issues/issues/1293) +- [Booting DTS v2.0.0 through iPXE has no internet](https://github.com/dasharo/dasharo-issues/issues/1142) +- [Wrong serial number printed in console](https://github.com/dasharo/dasharo-issues/issues/1255) +- [No external HDMI display (Firmware)](https://github.com/dasharo/dasharo-issues/issues/1098) +- [Logo out of proportion](https://github.com/Dasharo/dasharo-issues/issues/1238) +- [External audio devices don't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1583) +- [When battery is low, USB-PD is constantly charging then discharging](https://github.com/Dasharo/dasharo-issues/issues/1660) +- [Touchpad not working in Windows installer](https://github.com/Dasharo/dasharo-issues/issues/1657) +- [Low graphics performance](https://github.com/Dasharo/dasharo-issues/issues/1243) +- [Fusing process fails](https://github.com/Dasharo/dasharo-issues/issues/1622) +- [USB-PD charger overdraw](https://github.com/Dasharo/dasharo-issues/issues/1599) +- [SMMSTORE writes are unreliable if SMM_BWP is enabled](https://github.com/Dasharo/dasharo-issues/issues/1664) +- [DBX update via fwupd fails](https://github.com/Dasharo/dasharo-issues/issues/1641) +- [USB keyboard through docking station not working before OS boots](https://github.com/Dasharo/dasharo-issues/issues/1662) +- [Windows installer claims it doesn't meet the requirements](https://github.com/Dasharo/dasharo-issues/issues/1658) +- [Cannot enable memory integrity kern isolation in Windows Security](https://github.com/Dasharo/dasharo-issues/issues/1674) + +### Known issues + +- [Previous power state restoration doesn't work](https://github.com/Dasharo/dasharo-issues/issues/931) +- [Artifacts in video playback in some players using HW acceleration](https://github.com/Dasharo/dasharo-issues/issues/948) +- [Only native resolution listed for internal panel](https://github.com/Dasharo/dasharo-issues/issues/949) +- [Early DMA protection cannot be applied to NovaCustom MTL](https://github.com/Dasharo/dasharo-issues/issues/985) +- [Spurious USB 3 disconnects with Sonnet Echo 11 Thunderbolt 4 dock](https://github.com/Dasharo/dasharo-issues/issues/1081) +- [GRUB installation fails sometimes](https://github.com/Dasharo/dasharo-issues/issues/1594) +- [Capsule Updates require ME to be manually disabled](https://github.com/Dasharo/dasharo-issues/issues/1302) +- [Capsule update signing is not enforced](https://github.com/Dasharo/dasharo-issues/issues/1075) +- [Microphone mute Fn key doesn't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1006) +- [48GB SODIMMs get hot during MemTest86+](https://github.com/Dasharo/dasharo-issues/issues/1125) +- [Windows 11 fails to resume from hibernation](https://github.com/dasharo/dasharo-issues/issues/529) + +### Binaries + +[novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom][novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom_file]{.md-button} +[sha256][novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom_sig]{.md-button} + +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cab][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cab_file]{.md-button} +[sha256][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cab_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cab_sig]{.md-button} + +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap_file]{.md-button} +[sha256][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap_sig]{.md-button} + +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_file]{.md-button} +[sha256][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_sig]{.md-button} + +To verify binary integrity with hash and signature please follow the +instructions in [Dasharo release signature verification](/guides/signature-verification) +using [this key](https://raw.githubusercontent.com/3mdeb/3mdeb-secpack/master/customer-keys/novacustom/novacustom-open-source-firmware-release-1.x-key.asc) + +### SBOM (Software Bill of Materials) + +- [Dasharo coreboot fork based on 25.03 revision 6de027d1](https://github.com/Dasharo/coreboot/tree/6de027d1) +- [Dasharo EDKII fork based on edk2-stable202502 revision 917172ee](https://github.com/Dasharo/edk2/tree/917172ee) +- [Dasharo iPXE fork based on 2025.03 revision 6c7068fc](https://github.com/Dasharo/ipxe/tree/6c7068fc) + + [License](https://github.com/Dasharo/ipxe/blob/6c7068fc/COPYING.GPLv2) +- [vboot based on 3d37d2aafe revision f1f70f46](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/) + + [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/LICENSE) +- [Intel Management Engine version v18.0.10.2285](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tnx/me.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Firmware Support Package for Meteor Lake-H version 2024/04/30 v4122_12](https://github.com/Dasharo/dasharo-blobs/tree/8dce7604/novacustom/v5x0tnx/MeteorLakeFspBinPkg) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Flash Descriptor version v1.0](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tnx/descriptor.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel microcode version MTL C0 0x00000025 0x25 19/03/2025](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/tree/microcode-20251111/intel-ucode/06-aa-04) + + [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20251111/license) + +[novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom +[novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom.sha256 +[novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_ec_v1.0.0.rom.sha256.sig +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap.sha256 +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.cap.sha256.sig +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom.sha256 +[novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_dgpu/novacustom_v560tnx_mtl/uefi/v1.0.0/novacustom_v56x_mtl_dgpu_v1.0.0_btg_prod.rom.sha256.sig + ## v0.9.1 - 2024-11-07 Test results for this release can be found @@ -74,23 +191,23 @@ using [this key](https://raw.githubusercontent.com/3mdeb/3mdeb-secpack/master/cu ### SBOM (Software Bill of Materials) - [Dasharo fork of coreboot based on 24.02 revision c44f1998](https://github.com/Dasharo/coreboot/tree/c44f1998) - * [License](https://github.com/Dasharo/coreboot/blob/c44f1998/COPYING) + + [License](https://github.com/Dasharo/coreboot/blob/c44f1998/COPYING) - [Dasharo fork of EDKII based on edk2-stable202402 revision f3e18c6c](https://github.com/Dasharo/edk2/tree/f3e18c6c) - * [License](https://github.com/Dasharo/edk2/blob/f3e18c6c/License.txt) + + [License](https://github.com/Dasharo/edk2/blob/f3e18c6c/License.txt) - [Dasharo fork of edk2-platforms based on 8ea6ec38 revision 3323ed48](https://github.com/Dasharo/edk2-platforms/tree/3323ed48) - * [License](https://github.com/Dasharo/edk2-platforms/blob/3323ed48/License.txt) + + [License](https://github.com/Dasharo/edk2-platforms/blob/3323ed48/License.txt) - [Dasharo fork of System76 EC based on 485f3900 revision 3e931cf8](https://github.com/Dasharo/ec/tree/3e931cf8/) - * [License](https://github.com/Dasharo/ec/blob/3e931cf8/LICENSE) + + [License](https://github.com/Dasharo/ec/blob/3e931cf8/LICENSE) - [Dasharo fork of iPXE based on d2d194bc revision 35d84756](https://github.com/Dasharo/ipxe/tree/35d84756) - * [License](https://github.com/Dasharo/ipxe/blob/35d84756/COPYING.GPLv2) + + [License](https://github.com/Dasharo/ipxe/blob/35d84756/COPYING.GPLv2) - [vboot based on 3d37d2aa revision 3d37d2aa](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/3d37d2aa/) - * [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/3d37d2aa/LICENSE) + + [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/3d37d2aa/LICENSE) - [Intel Management Engine based on v18.0.5.2040 revision 3541ad31](https://github.com/Dasharo/dasharo-blobs/blob/main/novacustom/v5x0tnx/me.bin) - * [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) - [Intel Flash Descriptor based on v1.0 revision 3541ad31](https://github.com/Dasharo/dasharo-blobs/blob/main/novacustom/v5x0tnx/descriptor.bin) - * [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) - [Intel processor microcode based on MTL C0 0x0000001c revision microcode-20240531](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/tree/microcode-20240531/intel-ucode/06-aa-04) - * [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20240531/license) + + [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20240531/license) [novacustom_v56x_mtl_ec_v0.9.1.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v56x_mtl/v0.9.1/novacustom_v56x_mtl_ec_v0.9.1.rom [novacustom_v56x_mtl_ec_v0.9.1.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v56x_mtl/v0.9.1/novacustom_v56x_mtl_ec_v0.9.1.rom.sha256 diff --git a/docs/variants/novacustom_v560tu/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart.png b/docs/variants/novacustom_v560tu/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart.png new file mode 100644 index 0000000000000000000000000000000000000000..05bcda15fdece7df9a90f6f49173c92675e49359 GIT binary patch literal 27435 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 D$o1_> literal 0 HcmV?d00001 diff --git a/docs/variants/novacustom_v560tu/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart_full_image.png b/docs/variants/novacustom_v560tu/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_openness_chart_full_image.png new file mode 100644 index 0000000000000000000000000000000000000000..555b77ba2ba76d335ec0fef0b2f190f1b86cf5c5 GIT binary patch literal 33244 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 Numbers given above already include the calculations from CBFS regions +> presented below + +### FMAP regions + +| FMAP region | Offset | Size | Category | +| ----------- | ------ | ---- | -------- | +| SI_ME | 0x6000 | 0x9fa000 | closed-source | +| SI_DESC | 0x0 | 0x4000 | data | +| RECOVERY_MRC_CACHE | 0x1000000 | 0x10000 | data | +| RW_MRC_CACHE | 0x1010000 | 0x10000 | data | +| SMMSTORE | 0x1020000 | 0x80000 | data | +| RW_ELOG | 0x10a0000 | 0x4000 | data | +| SHARED_DATA | 0x10a4000 | 0x2000 | data | +| VBLOCK_DEV | 0x10a6000 | 0x2000 | data | +| RW_NVRAM | 0x10a8000 | 0x6000 | data | +| VBLOCK_A | 0x1200000 | 0x2000 | data | +| RW_FWID_A | 0x18fffc0 | 0x40 | data | +| RO_VPD | 0x1900000 | 0x4000 | data | +| FMAP | 0x1906000 | 0x800 | data | +| RO_FRID | 0x1906800 | 0x40 | data | +| GBB | 0x1907000 | 0x3000 | data | +| RW_UNUSED | 0xa00000 | 0x600000 | empty | + +### CBFS BOOTSPLASH + +* CBFS size: 1048576 +* Number of files: 1 +* Open-source files size: 0 (0x0) +* Closed-source files size: 0 (0x0) +* Data size: 28 (0x1c) +* Empty size: 1048548 (0xfffe4) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| (empty) | null | 1048548 | none | empty | + +### CBFS FW_MAIN_A + +* CBFS size: 7331776 +* Number of files: 15 +* Open-source files size: 1880655 (0x1cb24f) +* Closed-source files size: 1258061 (0x13324d) +* Data size: 10784 (0x2a20) +* Empty size: 4182276 (0x3fd104) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1564998 | none | open-source | +| fallback/romstage | stage | 105656 | none | open-source | +| fallback/ramstage | stage | 161664 | LZMA | open-source | +| fallback/dsdt.aml | raw | 23083 | none | open-source | +| fallback/postcar | stage | 77644 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| config | raw | 6388 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1745 | LZ4 | data | +| (empty) | null | 868 | none | empty | +| (empty) | null | 4181408 | none | empty | + +### CBFS COREBOOT + +* CBFS size: 7299072 +* Number of files: 24 +* Open-source files size: 1978959 (0x1e324f) +* Closed-source files size: 1458604 (0x1641ac) +* Data size: 15321 (0x3bd9) +* Empty size: 3846188 (0x3ab02c) + +> Numbers given above are already normalized (i.e. they already include size +> of metadata and possible closed-source LAN drivers included in the payload +> which are not visible in the table below) + +| CBFS filename | CBFS filetype | Size | Compression | Category | +| ------------- | ------------- | ---- | ----------- | -------- | +| fallback/payload | simple elf | 1564998 | none | open-source | +| fallback/romstage | stage | 105656 | none | open-source | +| fallback/ramstage | stage | 161664 | LZMA | open-source | +| fallback/dsdt.aml | raw | 23083 | none | open-source | +| fallback/postcar | stage | 77644 | none | open-source | +| bootblock | bootblock | 98304 | none | open-source | +| cpu_microcode_blob.bin | microcode | 140288 | none | closed-source | +| fspm.bin | fsp | 786432 | none | closed-source | +| fsps.bin | fsp | 262577 | LZ4 | closed-source | +| txt_sinit_acm.bin | raw | 68447 | LZMA | closed-source | +| txt_bios_acm.bin | raw | 132096 | none | closed-source | +| cbfs_master_header | cbfs header | 32 | none | data | +| intel_fit | intel_fit | 272 | none | data | +| boot_policy_manifest.bin | raw | 1536 | none | data | +| key_manifest.bin | raw | 1024 | none | data | +| config | raw | 6388 | LZMA | data | +| revision | raw | 864 | none | data | +| build_info | raw | 111 | none | data | +| vbt.bin | raw | 1745 | LZ4 | data | +| cmos_layout.bin | cmos_layout | 800 | none | data | +| (empty) | null | 804 | none | empty | +| (empty) | null | 143716 | none | empty | +| (empty) | null | 3701668 | none | empty | + ## v1.0.0 Openness Score for novacustom_v56x_mtl_igpu_v1.0.0.rom diff --git a/docs/variants/novacustom_v560tu/releases.md b/docs/variants/novacustom_v560tu/releases.md index 4881ba4d2e8..eaa30d0b134 100644 --- a/docs/variants/novacustom_v560tu/releases.md +++ b/docs/variants/novacustom_v560tu/releases.md @@ -9,6 +9,94 @@ For details about our release process please read {{ subscribe_form("d8319dd2-9108-48c5-86bf-318bb2ae94d2", "Subscribe to NovaCustom V560TU 14th Gen Dasharo Release Newsletter") }} +## v1.0.1 - 2026-01-29 + +Test results for this release can be found +[here](https://github.com/Dasharo/osfv-results/blob/main/boards/NovaCustom/MTL_14th_Gen/V540TU/). + +### Added + +- [Intel Boot Guard OEM Signing Key check in capsule update](https://docs.dasharo.com/guides/capsule-update/#troubleshooting) + +### Changed + +- UEFI DBX updated to 2025-10-16 +- Intel Microcode updated to microcode-20251111 + +### Fixed + +- [No external HDMI display (Firmware)](https://github.com/dasharo/dasharo-issues/issues/1098) +- [Logo out of proportion](https://github.com/Dasharo/dasharo-issues/issues/1238) +- [External audio devices don't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1583) +- [When battery is low, USB-PD is constantly charging then discharging](https://github.com/Dasharo/dasharo-issues/issues/1660) +- [Touchpad not working in Windows installer](https://github.com/Dasharo/dasharo-issues/issues/1657) +- [Low graphics performance](https://github.com/Dasharo/dasharo-issues/issues/1243) +- [Fusing process fails](https://github.com/Dasharo/dasharo-issues/issues/1622) +- [USB-PD charger overdraw](https://github.com/Dasharo/dasharo-issues/issues/1599) +- [SMMSTORE writes are unreliable if SMM_BWP is enabled](https://github.com/Dasharo/dasharo-issues/issues/1664) +- [DBX update via fwupd fails](https://github.com/Dasharo/dasharo-issues/issues/1641) +- [USB keyboard through docking station not working before OS boots](https://github.com/Dasharo/dasharo-issues/issues/1662) +- [Windows installer claims it doesn't meet the requirements](https://github.com/Dasharo/dasharo-issues/issues/1658) +- [Cannot enable memory integrity kern isolation in Windows Security](https://github.com/Dasharo/dasharo-issues/issues/1674) + +### Known issues + +- [Previous power state restoration doesn't work](https://github.com/Dasharo/dasharo-issues/issues/931) +- [Artifacts in video playback in some players using HW acceleration](https://github.com/Dasharo/dasharo-issues/issues/948) +- [Only native resolution listed for internal panel](https://github.com/Dasharo/dasharo-issues/issues/949) +- [Early DMA protection cannot be applied to NovaCustom MTL](https://github.com/Dasharo/dasharo-issues/issues/985) +- [Spurious USB 3 disconnects with Sonnet Echo 11 Thunderbolt 4 dock](https://github.com/Dasharo/dasharo-issues/issues/1081) +- [GRUB installation fails sometimes](https://github.com/Dasharo/dasharo-issues/issues/1594) +- [Capsule Updates require ME to be manually disabled](https://github.com/Dasharo/dasharo-issues/issues/1302) +- [Capsule update signing is not enforced](https://github.com/Dasharo/dasharo-issues/issues/1075) +- [Microphone mute Fn key doesn't work in Windows](https://github.com/Dasharo/dasharo-issues/issues/1006) +- [48GB SODIMMs get hot during MemTest86+](https://github.com/Dasharo/dasharo-issues/issues/1125) + +### Binaries + +[novacustom_v56x_mtl_igpu_ec_v1.0.1.rom][novacustom_v56x_mtl_igpu_ec_v1.0.1.rom_file]{.md-button} +[sha256][novacustom_v56x_mtl_igpu_ec_v1.0.1.rom_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_igpu_ec_v1.0.1.rom_sig]{.md-button} + +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap][novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap_file]{.md-button} +[sha256][novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap_sig]{.md-button} + +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom][novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_file]{.md-button} +[sha256][novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_hash]{.md-button} +[sha256.sig][novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_sig]{.md-button} + +To verify binary integrity with hash and signature please follow the +instructions in [Dasharo release signature verification](/guides/signature-verification) +using [this key](https://raw.githubusercontent.com/3mdeb/3mdeb-secpack/master/customer-keys/novacustom/novacustom-open-source-firmware-release-1.x-key.asc) + +### SBOM (Software Bill of Materials) + +- [Dasharo coreboot fork based on 25.03 revision 6de027d1](https://github.com/Dasharo/coreboot/tree/6de027d1) +- [Dasharo EDKII fork based on edk2-stable202502 revision 917172ee](https://github.com/Dasharo/edk2/tree/917172ee) +- [Dasharo iPXE fork based on 2025.03 revision 6c7068fc](https://github.com/Dasharo/ipxe/tree/6c7068fc) + + [License](https://github.com/Dasharo/ipxe/blob/6c7068fc/COPYING.GPLv2) +- [vboot based on 3d37d2aafe revision f1f70f46](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/) + + [License](https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/f1f70f46/LICENSE) +- [Intel Management Engine version v18.0.10.2285](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tu/me.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Firmware Support Package for Meteor Lake-H version 2024/04/30 v4122_12](https://github.com/Dasharo/dasharo-blobs/tree/8dce7604/novacustom/v5x0tu/MeteorLakeFspBinPkg) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel Flash Descriptor version v1.0](https://github.com/Dasharo/dasharo-blobs/blob/8dce7604/novacustom/v5x0tu/descriptor.bin) + + [License](https://github.com/Dasharo/dasharo-blobs/blob/main/licenses/pv%20intel%20obl%20software%20license%20agreement%2011.2.2017.pdf) +- [Intel microcode version MTL C0 0x00000025 0x25 19/03/2025](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/tree/microcode-20251111/intel-ucode/06-aa-04) + + [License](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/blob/microcode-20251111/license) + +[novacustom_v56x_mtl_igpu_ec_v1.0.1.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_ec_v1.0.1.rom +[novacustom_v56x_mtl_igpu_ec_v1.0.1.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_ec_v1.0.1.rom.sha256 +[novacustom_v56x_mtl_igpu_ec_v1.0.1.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_ec_v1.0.1.rom.sha256.sig +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap.sha256 +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.cap.sha256.sig +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_file]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_hash]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom.sha256 +[novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom_sig]: https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v5x0_mtl/novacustom_mtl_igpu/novacustom_v560tu_mtl/uefi/v1.0.1/novacustom_v56x_mtl_igpu_v1.0.1_btg_prod.rom.sha256.sig + ## v1.0.0 - 2025-09-18 Test results for this release can be found