Contribute
Register

HP Microserver Gen8 - USB (now working) & Built-in BCM Ethernet non functioning

Status
Not open for further replies.
Yes, Intel ports work under windows and Linux. I have another Microserver with Windows Server 2012 r2 Essentials installed, all six external USB ports work.

I have previously played with Ubuntu server and again all six external usb ports worked.

One thing to try. Add FixUSB to config reboot attach ioreg.
 
I have Ubuntu 16.04 LTS on a USB stick. I will see about extracting the DSDT etc from Ubuntu tomorrow, its getting late now.
 
I have Ubuntu 16.04 LTS on a USB stick. I will see about extracting the DSDT etc from Ubuntu tomorrow, its getting late now.

In my experience of Patching ACPI I've known USB 2 to under EUSB or EHC1, EHC2 nothing else there is no USB1 neither.
 
I have tried that Clover fix previously, it made no difference to how the usb ports worked or not. But I will try it again tomorrow.
 
Thanks for looking at this for me, it is appreciated. Hopefully you will be able to have a look at the files extracted from Ubuntu for me.
 
I have tried that Clover fix previously, it made no difference to how the usb ports worked or not. But I will try it again tomorrow.

Well from looking at Native ACPI Files USB 2 doesn't seem to exist.
 
I have tried that Clover fix previously, it made no difference to how the usb ports worked or not. But I will try it again tomorrow.

But then if you notice you have PRT my suspicion could be that _SB.PCI0_PRT could be related to USB.

Code:
Method (_SB.PCI0._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x0D)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x03,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0x0006FFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x03,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0x001DFFFF,
                    Zero,
                    Zero,
                    0x14
                },

                Package (0x04)
                {
                    0x001AFFFF,
                    Zero,
                    Zero,
                    0x15
                },

                Package (0x04)
                {
                    0x001FFFFF,
                    One,
                    Zero,
                    0x11
                }
            })
        }
        Else
        {
            Return (Package (0x0D)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x03,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0x0006FFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x03,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0x001DFFFF,
                    Zero,
                    LNKE,
                    Zero
                },

                Package (0x04)
                {
                    0x001AFFFF,
                    Zero,
                    LNKF,
                    Zero
                },

                Package (0x04)
                {
                    0x001FFFFF,
                    One,
                    LNKB,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT1._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT2._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x10
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKA,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT3._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x11
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKB,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT4._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x12
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKC,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT5._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT6._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x10
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKA,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT7._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x11
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKB,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT8._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x12
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKC,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.PT02._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.PT03._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.PT05._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }
 
Last edited:
I have extracted the ACPI tables from Ubuntu 16.04, see attached zip folder.

As previously stated all of the Intel USB ports, the Renesas USB 3.0 ports and both Ethernet ports work under Linux on the Microserver.
 

Attachments

  • Linux ACPI tables.zip
    8.5 KB · Views: 104
I have applied USBFix1000 via Xcode, the attached zip file contains the latest ioreg file with this fix applied. I have also attached a couple of screenshots showing the two Intel USB 2.0 controllers in the ioreg.
 

Attachments

  • Ed’s iMac-Server - USBFix.zip
    358.6 KB · Views: 124
  • pci8086-1c2d.png
    pci8086-1c2d.png
    208.7 KB · Views: 193
  • pci8086-1c26.png
    pci8086-1c26.png
    205.1 KB · Views: 213
Last edited:
But then if you notice you have PRT my suspicion could be that _SB.PCI0_PRT could be related to USB.

Code:
Method (_SB.PCI0._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x0D)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x03,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0x0006FFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x03,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0x001DFFFF,
                    Zero,
                    Zero,
                    0x14
                },

                Package (0x04)
                {
                    0x001AFFFF,
                    Zero,
                    Zero,
                    0x15
                },

                Package (0x04)
                {
                    0x001FFFFF,
                    One,
                    Zero,
                    0x11
                }
            })
        }
        Else
        {
            Return (Package (0x0D)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0x0001FFFF,
                    0x03,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0x0006FFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0x001CFFFF,
                    0x03,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0x001DFFFF,
                    Zero,
                    LNKE,
                    Zero
                },

                Package (0x04)
                {
                    0x001AFFFF,
                    Zero,
                    LNKF,
                    Zero
                },

                Package (0x04)
                {
                    0x001FFFFF,
                    One,
                    LNKB,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT1._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT2._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x10
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKA,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT3._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x11
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKB,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT4._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x12
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKC,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT5._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x13
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKD,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT6._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x10
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKA,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT7._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x12
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x11
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKC,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKB,
                    Zero
                }
            })
        }
    }

    Method (_SB.PCI0.IPT8._PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
    {
        If (LEqual (PICM, One))
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    Zero,
                    0x13
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    Zero,
                    0x10
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    Zero,
                    0x11
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    Zero,
                    0x12
                }
            })
        }
        Else
        {
            Return (Package (0x04)
            {
                Package (0x04)
                {
                    0xFFFF,
                    Zero,
                    LNKD,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    One,
                    LNKA,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x02,
                    LNKB,
                    Zero
                },

                Package (0x04)
                {
                    0xFFFF,
                    0x03,
                    LNKC,
                    Zero
                }
            })
        }
    }

In the ioreg IPT1, 1PT5, IPT7 and IPT8 appear to be related to the USB ports, see attached screenshots. These elements all have 8086:1c** listed as the device id and under the compatible heading. But they do not match completely with either of the USB 2.0 controllers 8086:1c26 or 8086:1c2d, match on first half of device id. I do not see how they call to the USB 2.0 controllers, maybe this is part of the problem?

Some of the other PRT elements appear to match with the Xeon PCI express root port (8086:0151 & 8086:015d).
 

Attachments

  • IPT1.png
    IPT1.png
    210.5 KB · Views: 165
  • IPT5.png
    IPT5.png
    218.1 KB · Views: 157
  • IPT7.png
    IPT7.png
    212.9 KB · Views: 197
  • IPT8.png
    IPT8.png
    211.1 KB · Views: 172
Status
Not open for further replies.
Back
Top