[Request] NVMe Support for a Dell Precision T7600

Hello,

Please forgive me if I’m not doing this request correctly, I was unsure from the rules if I should add this request to an existing thread with the same title or if I should create a new thread.

I have a few goals here.

In the short term I would like to enable NVME booting in UEFI mode on my old Dell T7600 system. I have capture the BIOS (from the U_SPI1 / U_BIOS1 IC) with a SPI flash programmer and attached it here

bios-dell-t7600.zip (460 KB)

. If someone was able to modify this BIOS to add the NVME support, that would be helpful.

Longer term, I would like to understand more about how people do UEFI and BIOS moding, so I plan to read a lot more of this forum. I’m a pretty okay coder with a lot of embedded experience and I understand SPI flash protocol pretty well through my work with FPGAs. I even have a few friends who work on things like coreboot and I do have plenty of tools for flashing and reading SPI modules. However I have never ventured into the BIOS / UEFI world myself.

My longer term goal would be to be able to understand the following;
* If PCIe bifurcation support could be added to something as old as this motherboard.
* What is going on with TPM support on this board (as the T7600 does seems to have a TPM but the option doesn’t appear in the BIOS).
* Why the BIOS seems extremely unreliable with various USB keyboards.
* Why the BIOS doesn’t work with one of my NVIDIA graphics cards.
* If I could end up using something like whatever LinuxBIOS is called these days.

This machine is not my primary system, so I’m okay with it being out of operation for periods of time while I fiddle with the BIOS.

Looking forward to learning a lot!

Tim ‘mithro’ Ansell

A quick look on the dump… doesn’t seem to be a full dump of the system (Done on macOS BigSur), latest bios A17 extracted files have a Bios image of 6Mb, ME image of 4Mb, and EC 224Kb

NVMe: [HowTo] Get full NVMe support for all Systems with an AMI UEFI BIOS

BI (if possible on the motherboard design/chipset/bios structure):
[GUIDE] Adding Bifurcation Support to ASUS X79 UEFI BIOS
[Guide] - How to Bifurcate a PCI-E slot
[Guide] PCIe Bifurcation - mapping IIO/IOU to PCIe slot

TPM: On-board IC already or maybe just a header and need to add the module, have to check yourself with techspecs, maintenance manuals etc…
Keyboards??? Give a me a break… (Ask Dell)

NVidia/GPU’s> This is OEM machines with custom HW, Bios structures etc… the OEM controls tiny specifics items according to their "Alow this or Not allow this…)

Good luck

@mithro
EDIT: Some Dell system boards have a so called SPI/ME jumper to enable updates/write protection, thats your issue reported on accessing ME region.
More info here: Intel Management Engine

EDIT: DO NOT SHARE any public dump here, if you’re not willing to, as it contain private system hw data.

Instead of capturing the BIOS directly from the SPI flash IC, I have now attempted to use the "FPTw.exe -bios -d biosreg.bin" method described in t7596f54-Request-NVMe-Support-for-a-Dell-Precision-T thread.

I got the following output, which seems consistent with the fact that I have two SPI flash (see photo below) and this seems to have resulted in the file also below;

biosreg.rar (2.05 MB)



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 

Intel (R) Flash Programming Tool. Version: 7.1.50.1166
Copyright (c) 2007-2011, Intel Corporation. All rights reserved.
 
Platform: Intel(R) Patsburg Chipset - Reserved DID 0x1D41 Revision: Unknown
Reading HSFSTS register... Flash Descriptor: Valid
 
--- Flash Devices Found ---
W25Q64FV ID:0xEF4017 Size: 8192KB (65536Kb)
W25Q32FV ID:0xEF4016 Size: 4096KB (32768Kb)
 

- Reading Flash [0xC00000] 6144KB of 6144KB - 100% complete.
Writing flash contents to file "biosreg.bin"...
 
Memory Dump Complete
FPT Operation Passed
 
 


bios-spi.png




Running "fptw.exe -I" gave the following results;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 

Copyright (c) 2007-2011, Intel Corporation. All rights reserved.
 
Platform: Intel(R) Patsburg Chipset - Reserved DID 0x1D41 Revision: Unknown
Reading HSFSTS register... Flash Descriptor: Valid
 
--- Flash Devices Found ---
W25Q64FV ID:0xEF4017 Size: 8192KB (65536Kb)
W25Q32FV ID:0xEF4016 Size: 4096KB (32768Kb)
 
--- Flash Image Information --
Signature: VALID
Number of Flash Components: 2
Component 1 - 8192KB (65536Kb)
Component 2 - 4096KB (32768Kb)
Regions:
Descriptor - Base: 0x000000, Limit: 0x000FFF
BIOS - Base: 0x600000, Limit: 0xBFFFFF
ME - Base: 0x006000, Limit: 0x5FFFFF
GbE - Base: 0x002000, Limit: 0x005FFF
PDR - Base: 0x001000, Limit: 0x001FFF
Master Region Access:
CPU/BIOS - ID: 0x0000, Read: 0x1B, Write: 0x1A
ME - ID: 0x0000, Read: 0x0D, Write: 0x0C
GbE - ID: 0x0118, Read: 0x08, Write: 0x08
 
Total Accessable SPI Memory: 12288KB, Total Installed SPI Memory : 12288KB
 
FPT Operation Passed
 
 


I captured all the other regions but the ME gave the following error;
1
2
3
 

Error 26: The host CPU does not have read access to the target flash area. To enable read access for this operation you must modify the descriptor settings to give host access to this region.
 
 


I now also have a SOIC16 clip incase I screw up that flash IC.

@mithro Could you try to short the jumper on service mode and try to dump the full bios?