Jump to content

Dell Precision T7910 (X99, C612) hardware issues on Sonoma (Ventura)


shamman
 Share

28 posts in this topic

Recommended Posts

Hi, friends!

 

I got a new workstation Dell T7910 and try to setup a dual-OS space on it.
This hardware completely new for me, I never faced with Dell products before.
So after few weeks of tryings and fails I finally install a Ventura and after update it to Sonoma (many thanks and respect to BillDH2k who helped me with consultations and hints).

 

Hardware is following:

  • 2 × Xeons 2697 v4
  • RAM 16 × 32 GB (Samsung)
  • Sapphire Vega 64
  • 2 × NVMe WD Blue SN570 (for dual boot, Win + Mac)
  • Data HDDs (WD, Toshiba)
  • USB & RAID PCI-e cards

 

But I faced with 2 problems with hardware on the installed working system.

 

Problem #1.

T7910 motherboard have 4 PCI-E slots linked to CPU-1. No problems with them. Plugged USB and RAID cards are recognized and working.
Also motherboard have 2 PCI-E slots linked to CPU-2. They are missing:

 

T7910_MB_PCIE.thumb.png.e6b5776763df414b8c184bc2fc300f40.png

 

And question #1: how I can fix this trouble and force 2 missing slots to work?
I can suggest that DSDT or SSDT should be patched for this purpose.
But I know to little about this point to solve it myself only.

 

 

Problem #2.

SAS ports (LSI SAS 3008 controller) on the motherboard not working too:

 

T7910_MB_SAS.thumb.png.9e6aacdc507653a0f75cec998ddfdfdf.png

 

System see a controller, but without a driver:

 

SysProfiler.png.e380b2580990b9e7c275d4b2836c72fb.png

 

I have tried to enable SASMegaRAID.kext and AstekFusion2 kexts.

They not solved a problem – seems like they not compatible with Sonoma / Ventura (or just rejected by OpenCore):

 

LoadedKexts.thumb.png.b792854577d8354ae607701949547137.png

 

Question #2: similar to previous.
Is it possible to solve this problem? What driver required for this controller?
Maybe some hint or workaround present for this issue?

 

My EFI and IOReg attached.

 

Will be grateful for any help.

EFI.zip IOReg_Dump.zip

Edited by shamman
Link to comment
Share on other sites

You buy incompatible hardware, and then burden yourself and other users with questions. Unproductive, wrong approach. Be sure to check the buyer's guide before purchasing any hardware.

Link to comment
Share on other sites

Have you tried to enable "Legacy BIOS Support" under BIOS? Do the add-on cards work under windows when plugged in the PCI-E slots attached to 2nd CPU?  It seemed that the cards must be enabled or initialized by BIOS first before the macOS can see them. I knew that DELL BIOS (at least true to T7910 from other feedback) can't boot devices attached the PCI-E slots attached to 2nd CPU.

 

BTW - the images from your messages are not shown. You should try to attached them directly within the message.

Edited by BillDH2k
Link to comment
Share on other sites

Quote

Have you tried to enable "Legacy BIOS Support" under BIOS?

Yes. To be completely sure I have repeated it once again just now.
Negative result :(

 

Quote

Do the add-on cards work under windows when plugged in the PCI-E slots attached to 2nd CPU?

Of course. Detected automatically, works normally.

 

Devices.thumb.png.8ca7de8b02142535bac86ae2fa67b3a0.png

 

Quote

can't boot devices attached the PCI-E slots attached to 2nd CPU

No-no-no :) These devices for data only, not for boot or OS features.

 

Quote

the images from your messages are not shown

Thanks. Seems like I saw them from browser cache.
On the another computer they really were looks broken.

 

Also past time I forgot to attach my DSDT.
It dumped by SSDTTime under Windows. Direct boot (not via OC), complete set of drivers (no missing devices or warnings), untouched file (no any manipulations inside it).

DSDT.zip

Edited by shamman
Link to comment
Share on other sites

I am not aware of any macOS driver for SAS3008. It also appears that the system BIOS failed to probe and activate the devices connected to PCI-E bus attached to to the 2nd CPU. As a result, the logical VD defined in the add-on raid card is not seen and registered by BIOS (thus not exposed to macOS, and there is no Mac driver to perform the follow up job, like their windows counter part). So, I guess your only solution now is to plug-in your raid card into slots attached to CPU 1.

Edited by BillDH2k
Link to comment
Share on other sites

Nice hardware, but macOS has a hard-coded limit of 64 threads, so your dual E5-2697 v4 does not fit. Have you disabled some cores in BIOS?

The CPU situation in IOReg is strange, and the obvious reason for the PCI slots of CPU-2 not working would be that CPU-2 is disabled or missing.

 

If you want help with DSDT/SSDT (how have you made yours?), please post the complete set of ACPI tables.

Edited by etorix
  • Like 3
Link to comment
Share on other sites

Hi, friend!

Thanks for response and intents to help.

 

Quote

Have you disabled some cores in BIOS?

Yes. I have faced with this issue during install. BillDH2k reminded me about this point.
Now cores in BIOS limited to 16 (16*2*2=64 threads).

 

Quote

The CPU situation in IOReg is strange

I'm not an expert in such questions. But after your post I have compared IOReg's from my HP Z820 and T7910.
Completely agree, CPU section of T7910 is strange.

 

Quote

obvious reason for the PCI slots of CPU-2 not working would be that CPU-2 is disabled or missing

Looks like it. OS see both CPUs, and I thought that both are working. Now I can assume that "visible CPU" is not equal to "correctly working CPU".

 

Quote

how have you made yours?

I took as base BillDH2k's EFI from this repo:

DELL-T5810-OpenCore (Sonoma Support)

 

Booted to Windows directly (not via OC or Clover) and make 4 own SSDTs (EC, HPET, PLUG, RTC0-RANGE) with SSDT-Time. The rest (SBUS-MCHC, UNC & X99-USB) leaved as is.

I wanted to create also a CPU SSDT by ssdtPRGen script (like it done for Z820), but no SSDT-1 table in dumped set.

 

Quote

please post the complete set of ACPI tables

Attached to post. Dumped with latest Clover (5157).

 

Thank you once again for responce.
And thanks in advance for help.

T7910_ACPI_via_Clover.zip

Link to comment
Share on other sites

The DSDT has code for four sockets, each for its own set of processors starting with CP00. MacOS does not see the sockets. I think this is merely a cosmetic issue. (System Information does report 64 threads, right?)

 

Your system bus appears to be \_SB.SMBS. SSDT-X99-USBX calls the (unnecessary) full DTGP method… which is to be found in SSDT-SBUS-MCHC: This is neither simple nor maintainable. Please replace SSDT-SBUS-MCHC and SSDT-X99-USBX by the attached SSDT-SBUS-MCHC and SSDT-USBX, and check that it works.

 

Then, as an experiment, try adding SSDT-PCI1 and see whether the system boots, and whether you get extra PCI slots.

SSDT-PCI1.aml SSDT-USBX.aml SSDT-SBUS-MCHC.aml

  • Like 2
Link to comment
Share on other sites

Thanks.

I'm disappointed, but not fully surprised, that SSDT-PCI1 did not work… but I'm surprised it actually caused PCI1 to disappear entirely from IOReg.

 

If you have the opportunity to try a PCIe device in some of these slots from CPU2 in another OS, I'm curious to see what ACPI name and/or PCI address they get.

Edited by etorix
Link to comment
Share on other sites

Thanks for response.

Data from Windows (after direct boot). This is my USB-card:

 

Quote

BIOS device name
\_SB.PCI1.QR3A.H000

 

Location Paths
PCIROOT(A0)#PCI(0300)#PCI(0000)
ACPI(_SB_)#ACPI(PCI1)#ACPI(QR3A)#ACPI(H000)

 

PCI1_Card_Screen1.png.36dc1d0d562622a67ac0cd0df54d75f2.png   PCI1_Card_Screen2.png.cbc6ca9c668b6c8b1f1d2cb640bd8cbe.png   PCI1_Card_Screen3.png.0a35570ca03ca58379c6d7f9bf8115fd.png   PCI1_Card_Screen4.png.51b2712dab5f74b80066c513e39f4e4d.png

 

Hope this data is that you asked.

Thanks once again.

Edited by shamman
  • Like 1
Link to comment
Share on other sites

Rocky12

Thanks :)
I have started from this repo. Current EFI is changed version from Bill’s source (not finally yet, still in process).
Also I have grabbed EFI from this source:

[SUCCESS] Dell Precision Tower 7910 * E5-2699V4 * RX5700XT * Opencore 0.8

I know that it is for older macOS, but maybe I will find some hint there.

 

pitrysha

Thanks too :)
Stupid question: what I should to do to try this solution?

Link to comment
Share on other sites

20 hours ago, shamman said:

Hope this data is that you asked.

Thanks. It is indeed PCI1, but the PCI address is 0x03, while the DSDT declares 0xFFFF:

        Device (PCI1)
        {
            Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */)  // _HID: Hardware ID
            Name (_CID, EisaId ("PNP0A03") /* PCI Bus */)  // _CID: Compatible ID
            Name (_ADR, 0xFFFF)  // _ADR: Address

I'm way above my pay grade here, and I have no clue how and where it is changed.

My first thought was that macOS did not properly read the register value (IIOH) which is used to activate PCI1 (_STA: 0x0F); but manually setting a proper value did not work.

The next idea is then to create a copy of the PCI1 bus for use by macOS.

 

8 hours ago, pitrysha said:

I think for PCI1 to turn on, you need to change the values "fff" to "0"

2024-02-21.png

No! Address 0 is used by bus PCI0. All objects must have unique addresses.

 

 

Link to comment
Share on other sites

2 hours ago, etorix said:

The next idea is then to create a copy of the PCI1 bus for use by macOS.

This was harder than expected, and I may have found why PCI1 is not enabled by macOS: The original DSDT does not recompile, MaciASL reports errors in the P1RS ResourceTemplate() for PCI1 (and similar issues for PCI2 and PCI3). Somehow, Windows appears to work around these but macOS may be more strict.

@shamman Please try the attached SSDT-PCIA instead of SSDT-PCI1. It aims to create a PCI bus device at the address reported by Windows.

SSDT-PCIA.aml

Link to comment
Share on other sites

33 minutes ago, etorix said:

This was harder than expected, and I may have found why PCI1 is not enabled by macOS: The original DSDT does not recompile, MaciASL reports errors in the P1RS ResourceTemplate() for PCI1 (and similar issues for PCI2 and PCI3). Somehow, Windows appears to work around these but macOS may be more strict.

@shamman Please try the attached SSDT-PCIA instead of SSDT-PCI1. It aims to create a PCI bus device at the address reported by Windows.

SSDT-PCIA.aml 24.97 kB · 2 downloads

Where did you get ADR=0x03 for PCI1 ?
03 is in "ADR Device (QR3A)".

Link to comment
Share on other sites

 Share

×
×
  • Create New...