samsung/lumpy: 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.

Move inclusion of mainboard.asl after southbridge asl files
so scopes referenced in usb.asl are valid.

Change-Id: Id98aa5f6dbdcbb8da4616d4fce6e7388f3ba4656
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/20515
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
Matt DeVillier 2017-07-09 15:21:55 -05:00 committed by Martin Roth
parent 93be41dcc1
commit 13da730b9c
3 changed files with 136 additions and 3 deletions

View File

@ -80,3 +80,6 @@ Scope (\_SB) {
Name (BATV, "SAMSUNG")
Name (BATM, "LUMPY")
Name (BATS, "BATTERY")
/* USB port entries */
#include "acpi/usb.asl"

View File

@ -0,0 +1,130 @@
/*
* 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.EHC1.HUB7.PRT1)
{
// Hub Port 1
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
{
Return (GPLD (Zero))
}
Device (USB1)
{
Name (_ADR, 1)
// Left USB Port
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
{
Return (GPLD (One))
}
}
Device (USB2)
{
Name (_ADR, 2)
// Right USB Port
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF, // Connectable
Zero, // USB Port
Zero, // Reserved
Zero // Reserved
})
// Visible
Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
{
Return (GPLD (One))
}
}
Device (USB4)
{
Name (_ADR, 4)
// SD Card Slot
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
{
Return (GPLD (Zero))
}
}
}
Scope (\_SB.PCI0.EHC2.HUB7.PRT1)
{
// Hub Port 2
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
{
Return (GPLD (Zero))
}
Device (USB4)
{
Name (_ADR, 4)
// Webcam
Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities
{
0xFF, // Connectable
0xFF, // OEM Connector
Zero, // Reserved
Zero // Reserved
})
// Not Visible
Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
{
Return (GPLD (Zero))
}
}
}

View File

@ -34,9 +34,6 @@ DefinitionBlock(
// General Purpose Events
//#include "acpi/gpe.asl"
// mainboard specific devices
#include "acpi/mainboard.asl"
#include <cpu/intel/model_206ax/acpi/cpu.asl>
#include "acpi/thermal.asl"
@ -52,6 +49,9 @@ DefinitionBlock(
}
}
// mainboard specific devices
#include "acpi/mainboard.asl"
#include <vendorcode/google/chromeos/acpi/chromeos.asl>
/* Chipset specific sleep states */