Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Board Vendor not recognized (NovaCustom NV41MZ) #1244

Closed
Master0ne opened this issue Feb 18, 2025 · 9 comments
Closed

Board Vendor not recognized (NovaCustom NV41MZ) #1244

Master0ne opened this issue Feb 18, 2025 · 9 comments
Labels
bug Something isn't working DasharoToolsSuite needs review novacustom_nv4x_tgl NovaCustom NV4xMx (11th Gen)

Comments

@Master0ne
Copy link

Component

Dasharo Tools Suite

Device

NovaCustom NV4x 11th Gen

Dasharo version

No response

Dasharo Tools Suite version

v2.2.1

Test case ID

No response

Brief summary

I'm unable to use the "Dasharo zero-touch initial deployment" because the "Board Vendor" of my NovaCustom NV41MZ is not recognized. Please see the attached photos.

How reproducible

Always

How to reproduce

Boot DTS, select option 2, results in "Board vendor: Notebook is currently not supported".

Expected behavior

Successful Dasharo Firmware deployment, because it is a supported laptop.

Actual behavior

Dasharo Firmware deployment not possible, because the board vendor is not recognized as supported.

Screenshots

Image

Image

Image

Additional context

No response

Solutions you've tried

No response

@Master0ne Master0ne added bug Something isn't working needs review labels Feb 18, 2025
@github-actions github-actions bot added DasharoToolsSuite novacustom_nv4x_tgl NovaCustom NV4xMx (11th Gen) labels Feb 18, 2025
@miczyg1
Copy link
Contributor

miczyg1 commented Feb 18, 2025

@Master0ne yes, the laptop is supported, but the DTS didn't recognize the laptop model because your SMBIOS/DMI looks malformed (there is a lot of whitespace in the vendor and model). It should not look like that. I suspect something could be tampered with your current firmware. I have tracked down the logs you have uploaded and the dmidecode output on your platform looks like this:

Handle 0x0001, DMI type 1, 27 bytes
System Information
	Manufacturer: Notebook                        
	Product Name: NV4XMB,ME,MZ                    
	Version: Not Applicable                  
	Serial Number: Not Applicable                  
	UUID: a4a73682-a964-48bc-bd9b-85ab0ca2edbc
	Wake-up Type: Power Switch
	SKU Number: Not Applicable                  
	Family: Not Applicable                  

Looks plausible right? But if I open it in the editor, lots of spaces appear:

Image

Even the filename with the logs looks weird:

Notebook_________________________NV4XMB,ME,MZ_____________________1.07.03N_3f539be9-3ece-5a17-bc9a-8a33319fb7dc_2025_02_17_17_43_25_707805809

@Master0ne
Copy link
Author

Not sure how it could have been tampered with, I don't recall having upgraded the firmware since I got that laptop directly from NovaCustom.

Already got feedback from Wessel/NovaCustom, who suggested to open this ticket. He also explained how to install Dasharo manually, though it would have been great to be able to use DTS because I have a second NV41MZ to be converted as well.

@miczyg1
Copy link
Contributor

miczyg1 commented Feb 18, 2025

Not sure how you got that laptop and what it was done to it before (maybe some DMI editing tools were used). If so, you would have to use the same tools again to fix this.

Alternatively:

  1. Try updating Insyde firmware and see if the problem still persists.
  2. Do manual update... Unfortunately we don't have the manual process documented anywhere. The documentation only says to use initial deployment (@macpijan @mkopec cc)

@Master0ne
Copy link
Author

The laptop came directly from NovaCustom back then and I didn't do any DMI editing, so I'll try with the manual update using the DTS shell option as detailed by Wessel as follows:

First flash v1.4.0:

wget https://3mdeb.com/open-source-firmware/Dasharo/novacustom_nv4x_tgl/v1.4.0/novacustom_nv4x_tgl_v1.4.0.rom
flashrom -p internal --ifd -i bios -w novacustom_nv4x_tgl_v1.4.0.rom && systemctl poweroff

Then flash EC:

wget https://stock.novacustom.com/vendorfirmware/ectrans.sh
chmod +x ectrans.sh
./ectrans.sh

Then upgrade to v1.5.2 using DTS.

@Master0ne
Copy link
Author

Manual deployment followed by upgrade using DTS successfully completed.

@Master0ne
Copy link
Author

Unfortunately rejoiced too soon.

So the manual deployment of v1.4.0 + EC firmware followed by the upgrade to v1.5.2 using the latest DTS seemed to have worked, but after turning off/on or rebooting the laptop, it took a long time for something to happen and then an error message was shown that something is wrong with "firmware TPM" and that another update should be attempted (unfortunately I didn't make a photo of the exact message), which didn't work because DTS only said that the latest firmware is already installed.

I was able to boot into the installed Ubuntu LTS 22.04 successfully, but it also showed a "firmware TPS" error during boot.

I have now tried to flash v1.4.0 again and also the backup of the original firmware using the DTS console, but in both cases the following error message is shown as per flashrom output:

# flashrom -p internal --ifd -i bios -w novacustom_nv4x_tgl_v1.4.0.rom
flashrom v1.2-1039-ga961af7a on Linux 6.6.21-yocto-standard (x86_64)
flashrom is free software, get the source code at https://flashrom.org/

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
coreboot table found at 0x7697c000.
Found chipset "Intel Tiger Lake U Premium".
Enabling flash write... Warning: Setting BIOS Control at 0xdc from 0x8b
to 0x89 failed.
New value is 0x8b.
SPI Configuration is locked down.
FREG0: Flash Descriptor region (0x00000000-0x00000fff) is read-write.
FREG1: BIOS region (0x00500000-0x00ffffff) is read-write.
FREG2: Management Engine region (0x00001000-0x004fffff) is read-write.
PR0: Warning: 0x00c00000-0x00ffffff is read-only.
At least some flash regions are write protected. For write operations,
you should use a flash layout and include only writable regions. See
manpage for more details.
OK.
Warning: unexpected second chipset match: "Intel Tiger Lake LP"
ignoring, please report lspci and board URL to [[email protected]](mailto:[email protected])
with 'CHIPSET: your board name' in the subject line.
Found Programmer flash chip "Opaque flash chip" (16384 kB, Programmer-
specific) on internal.
Reading ich descriptor... done.
Using region: "bios".
Reading old flash chip contents... done.
Erasing and writing flash chip... Transaction error between offset
0x00c04000 and 0x00c03fff (= 0x00c04000 + -1)!
Reading current flash chip contents... done. Looking for another erase
function.
Looking for another erase function.
Looking for another erase function.
Looking for another erase function.
Looking for another erase function.
Looking for another erase function.
Looking for another erase function.
No usable erase functions left.
FAILED!
Uh oh. Erase/write failed. Checking if anything has changed.
Reading current flash chip contents... done.
Apparently at least some data has changed.
Your flash chip is in an unknown state.
Get help on IRC (see https://www.flashrom.org/Contact) or mail
[[email protected]](mailto:[email protected]) with the subject "FAILED: <your board name>"!----
-----------------------------------------------------------------------
----
DO NOT REBOOT OR POWEROFF!

I have tried several times, but always the same error. I have not changed or locked anything in the firmware settings.

Now I'm afraid to turn off the laptop and have no clue what to do. I've posted to the #flashrom IRC chat on Libera.Chat but didn't get any reply. I've also sent an email to [email protected] but also no reply (yet).

Any idea that the issue may be?

@Master0ne Master0ne reopened this Feb 19, 2025
@pietrushnic
Copy link

It is the result of note disabling Dasharo Security Features before attempting to flash.

The only reasonable recovery you can do is to bring the flash state from before trying to flash it with v1.4.0. It has to be returned to the state.

PR0: Warning: 0x00c00000-0x00ffffff is read-only.

So, nothing was flashed to that region, but the content of the BIOS region in the range 0x00500000-0x00c00000 is likely broken.
You have to revert to a bootable state; otherwise, it would be brick with the requirement of external flash recovery.

If you can write the backup to the BIOS region and confirm by reading that it is there, then you have some chance the platform will be recovered.

I would wait for @miczyg1 and/or @mkopec to confirm my hypothesis, but OTOH, we should realize what led to that weird state and that we never faced this weird SMBIOS/DMI state. Otherwise, someone else will hit the same.

@Master0ne
Copy link
Author

@pietrushnic Thanks for your thoughts on this, I didn't realize that any security options were enabled because I didn't change any settings.

So the locked region is unchanged, and since v1.5.2 was installed, I assume re-flashing v1.5.2 to fix the likely broken region should solve the issue. It would be great if someone with more insight could share the exact command. But of course I'll wait for @miczyg1 and/or @mkopec first.

@Master0ne
Copy link
Author

OK, re-flashing v1.5.2 succeeded without error and I was able to reboot the laptop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working DasharoToolsSuite needs review novacustom_nv4x_tgl NovaCustom NV4xMx (11th Gen)
Projects
None yet
Development

No branches or pull requests

3 participants