Jump to content

AMD Chipset Identification Problems inside Physical Devices and PCI Devices Pages


Crashtest

Recommended Posts

AIDA should identify the PCI-Devices of the current AMD Chipsets (3xx/4xx/5xx for Zen/Zen2/Zen3) inside the PCI-Device-Page but it doesnt!

 

Problem:

On a system with AMD B450 or X470 Chipset, AIDA shows the parts of the Chipset as "AMD Low-Power Promontory Chipset" instead of B450.... or X470

On a system with AMD A520 or B550 as "AMD 500-Series Chipset".

 

Its "very" easy to display the right things - the first device of the chipset (USB XHCI) helps to identify the chipset:

 

A320/B350/X370/X399:

43B9 - X370 USB XHCI

43BA - X399 USB XHCI

43BB - B350 USB XHCI

43BC - A320 USB XHCI

This could/should be used for the other parts of the chipset

43B5/43B5/43B7/43B8 - SATA

43BD - SATA RAID

43B0/43B1/43B2/43B3 - SUP

43B4 - SDP

 

B450/X470:

43D0 - X470 USB XHCI

43D5 - B450 USB XHCI

This could/should be used for the other parts of the chipset

43C8 - SATA

43C6 - SUP

43C7 - SDP

 

A520/B550:

43EC - A520 USB XHCI

43EE - B550 USB XHCI

This could/should be used for the other parts of the chipset

43EB - SATA

43E9 - SUP

43EA - SDP

 

SUP = Switch Upstream Port

SDP = Switch Downstream Port

 

So instead of 

Bus 2, Device 8, Function 0    AMD 500-Series Chipset - GPP-Switch Downstream Port
Bus 1, Device 0, Function 1    AMD 500-Series Chipset - SATA AHCI Controller
Bus 1, Device 0, Function 2    AMD 500-Series Chipset - Switch Upstream Port
Bus 1, Device 0, Function 0    AMD 500-Series Chipset - USB 3.1 xHCI Controller
 

AIDA should show:

Bus 2, Device 8, Function 0    AMD B550 - GPP-Switch Downstream Port
Bus 1, Device 0, Function 1    AMD B550 - SATA AHCI Controller
Bus 1, Device 0, Function 2    AMD B550 - Switch Upstream Port
Bus 1, Device 0, Function 0    AMD B550 - USB 3.1 xHCI Controller
 

For the "missing" chipset 43ED AIDA should continue to use "AMD 500-Series Chipset"

 

In Delphi this could look like:

// AMD Promontory 3xx Chipsatz
        $43B0 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch USP)','AMD PCIe USP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWU, _SBAMD + 'USP', iH_BUS_PCIE);
                end;
        $43B1 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch USP)','AMD PCIe USP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWU, _SBAMD + 'USP', iH_BUS_PCIE);
                end;
        $43B2 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch USP)','AMD PCIe USP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWU, _SBAMD + 'USP', iH_BUS_PCIE);
                end;
        $43B3 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch USP)','AMD PCIe USP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWU, _SBAMD + 'USP', iH_BUS_PCIE);
                end;
        $43B4 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch DSP)','AMD PCIe DSP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWD, _SBAMD + 'DSP', iH_BUS_PCIE);
                end;
        $43B5 : begin
                Result:=SubPCIName1('SB SATA Controller','SATA');
                if _SBAMD<>'' then Result:=SubPCIName1(_SBAMD + PCICL_STOR_SATA, _SBAMD + 'SATA');
                end;
        $43B6 : begin
                Result:=SubPCIName1('SB SATA Controller','SATA');
                if _SBAMD<>'' then Result:=SubPCIName1(_SBAMD + PCICL_STOR_SATA, _SBAMD + 'SATA');
                end;
        $43B7 : begin
                Result:=SubPCIName1('SB SATA Controller','SATA');
                if _SBAMD<>'' then Result:=SubPCIName1(_SBAMD + PCICL_STOR_SATA, _SBAMD + 'SATA');
                end;
        $43B8 : begin
                Result:=SubPCIName1('SB SATA Controller','SATA');
                if _SBAMD<>'' then Result:=SubPCIName1(_SBAMD + PCICL_STOR_SATA, _SBAMD + 'SATA');
                end;

        $43B9 : begin _SBAMD:='X370 '; Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end; //ASM2016A
        $43BA : begin _SBAMD:='X399 '; Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end; //ASM2016B
        $43BB : begin _SBAMD:='B350 '; Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end; //ASM2016C
        $43BC : begin _SBAMD:='A320 '; Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end; //ASM2016D

        $43BD : begin
                Result:=SubPCIName2('Promontory SATA RAID Controller','Promontory', iH_DISK_RAID);
                if _SBAMD<>'' then SubPCIName2(_SBAMD + PCICL_STOR_SATA_R,'Promontory', iH_DISK_RAID);
                end;

// Low Power Promontory 4xx Chipsatz
        $43C6 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch USP)','AMD PCIe USP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWU, _SBAMD + 'USP', iH_BUS_PCIE);
                end;
        $43C7 : begin
                Result:=SubPCIName2('SB PCIe Port (Switch DSP)','AMD PCIe DSP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWD, _SBAMD + 'DSP', iH_BUS_PCIE);
                end;
        $43C8 : begin
                Result:=SubPCIName1('Promontory SATA Controller','Promontory');
                if _SBAMD<>'' then Result:=SubPCIName1(_SBAMD + 'SATA Controller','Promontory');
                end;

        $43D0 : begin _SBAMD:='X470 ';   Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D1 : begin _SBAMD:='B550A ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D2 : begin _SBAMD:='Pro560 '; Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D5 : begin _SBAMD:='B450 ';   Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;

        $43D3 : begin _SBAMD:='?43D3 ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D4 : begin _SBAMD:='?43D4 ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D6 : begin _SBAMD:='?43D6 ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D7 : begin _SBAMD:='?43D7 ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D8 : begin _SBAMD:='?43D8 ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43D9 : begin _SBAMD:='?43D9 ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43DA : begin _SBAMD:='?43DA ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43DB : begin _SBAMD:='?43DB ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43DC : begin _SBAMD:='?43DC ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43DD : begin _SBAMD:='?43DD ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43DE : begin _SBAMD:='?43DE ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43DF : begin _SBAMD:='?43DF ';  Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
// AMD 5xx Chipsatz
        $43E9 : begin
                Result:=SubPCIName2('SB ' + PCICL_BUS_PCISWU,'AMD PCIe USP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWU, _SBAMD + 'USP', iH_BUS_PCIE);
                end;
        $43EA : begin
                Result:=SubPCIName2('SB ' + PCICL_BUS_PCISWD,'AMD PCIe DSP', iH_BUS_PCIE);
                if _SBAMD<>'' then Result:=SubPCIName2(_SBAMD + PCICL_BUS_PCISWD, _SBAMD + 'DSP', iH_BUS_PCIE);
                end;
        $43EB : begin
                Result:=SubPCIName1('SB SATA Controller','SATA');
                if _SBAMD<>'' then Result:=SubPCIName1(_SBAMD + PCICL_STOR_SATA, _SBAMD + 'SATA');
                end;
        $43EC : begin _SBAMD:='A520 ';   Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43ED : begin _SBAMD:='???? ';   Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;
        $43EE : begin _SBAMD:='B550 ';   Result:=SubPCIName1(_SBAMD + PCICL_USB_XHCI31, _SBAMD + 'XHCI'); end;

 

Report_B550.txt Report_A520.txt Report_B450.txt Report_X470.txt

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...