google/auron: add board-specific USB port info

Add capability and location data for USB ports/devices via
_PLD and _UPC ACPI methods, which is utilized by Windows and
required by macOS.

Each auron variant has a different USB port config.

Change-Id: Id17f21c23540d2e3d5a902a2174b66c7a5a5f3e0
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/19970
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
Matt DeVillier 2017-04-17 18:38:31 -05:00 committed by Martin Roth
parent b79d058767
commit 3c3c7a1dcb
6 changed files with 632 additions and 0 deletions

View File

@ -44,3 +44,6 @@ Scope (\_SB.PCI0.RP01)
} }
#include <variant/acpi/mainboard.asl> #include <variant/acpi/mainboard.asl>
/* USB port entries */
#include <variant/acpi/usb.asl>

View File

@ -0,0 +1,126 @@
/*
* This file is part of the coreboot project.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
Scope (\_SB.PCI0.XHCI.HUB7.PRT1)
{
// WWAN M.2 Slot
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT2)
{
// Left USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT3)
{
// Webcam
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT4)
{
// Bluetooth
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT5)
{
// Right USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT7)
{
// SD Card
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP1)
{
// Left USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}

View File

@ -0,0 +1,109 @@
/*
* This file is part of the coreboot project.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
Scope (\_SB.PCI0.XHCI.HUB7.PRT2)
{
// Left USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT3)
{
// Webcam
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT4)
{
// Bluetooth
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT5)
{
// Right USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT7)
{
// SD Card
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP1)
{
// Left USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}

View File

@ -0,0 +1,109 @@
/*
* This file is part of the coreboot project.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
Scope (\_SB.PCI0.XHCI.HUB7.PRT2)
{
// Left USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT3)
{
// Webcam
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT4)
{
// Bluetooth
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT5)
{
// Right USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT7)
{
// SD Card
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP1)
{
// Left USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}

View File

@ -0,0 +1,109 @@
/*
* This file is part of the coreboot project.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
Scope (\_SB.PCI0.XHCI.HUB7.PRT1)
{
// Right USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT2)
{
// Left USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT3)
{
// Webcam
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT4)
{
// Bluetooth
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT7)
{
// SD Card
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP4)
{
// Left USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}

View File

@ -0,0 +1,176 @@
/*
* This file is part of the coreboot project.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
Scope (\_SB.PCI0.XHCI.HUB7.PRT1)
{
// USB-A Port 1 USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT2)
{
// USB-A Port 2 USB 2.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT3)
{
// USB-C USB 2.0 Port Left
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT4)
{
// SD Card
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT5)
{
// USB-C USB 2.0 Port Right
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (One))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT7)
{
// Webcam
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.PRT8)
{
// Bluetooth
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized)
{
Return (GPLD (Zero))
}
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP3)
{
// USB-C USB 3.0 Port Left
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP4)
{
// USB-C USB 3.0 Port Right
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP5)
{
// USB-A Port 1 USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP6)
{
// USB-A Port 2 USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}