google/slippy: 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 slippy variant has slightly different USB port config;
data for falco and leon to be added once available

Change-Id: Icc3b5b1161f62ac0b840380679acafeff363cf45
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/19967
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:31:41 -05:00 committed by Martin Roth
parent 1186915c1f
commit 39480c7204
5 changed files with 249 additions and 0 deletions

View file

@ -23,3 +23,6 @@ Scope (\_SB)
}
#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,120 @@
/*
* 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)
{
// Left Front 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 Rear 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.SSP1)
{
// Left USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}
Scope (\_SB.PCI0.XHCI.HUB7.SSP2)
{
// Rear USB 3.0
Name (_UPC, Package (0x04)
{
0xFF, // Connectable
0x03, // USB 3.0 Port
Zero, // Reserved
Zero // Reserved
})
}