From 13da730b9c06f158b5eaea4e9453f93221e6e353 Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Sun, 9 Jul 2017 15:21:55 -0500 Subject: 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 Reviewed-on: https://review.coreboot.org/20515 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/mainboard/samsung/lumpy/acpi/mainboard.asl | 3 + src/mainboard/samsung/lumpy/acpi/usb.asl | 130 +++++++++++++++++++++++++ src/mainboard/samsung/lumpy/dsdt.asl | 6 +- 3 files changed, 136 insertions(+), 3 deletions(-) create mode 100644 src/mainboard/samsung/lumpy/acpi/usb.asl (limited to 'src/mainboard/samsung') diff --git a/src/mainboard/samsung/lumpy/acpi/mainboard.asl b/src/mainboard/samsung/lumpy/acpi/mainboard.asl index 8fa50677f0..0fceabf4a9 100644 --- a/src/mainboard/samsung/lumpy/acpi/mainboard.asl +++ b/src/mainboard/samsung/lumpy/acpi/mainboard.asl @@ -80,3 +80,6 @@ Scope (\_SB) { Name (BATV, "SAMSUNG") Name (BATM, "LUMPY") Name (BATS, "BATTERY") + +/* USB port entries */ +#include "acpi/usb.asl" diff --git a/src/mainboard/samsung/lumpy/acpi/usb.asl b/src/mainboard/samsung/lumpy/acpi/usb.asl new file mode 100644 index 0000000000..0dce39eafa --- /dev/null +++ b/src/mainboard/samsung/lumpy/acpi/usb.asl @@ -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)) + } + } +} diff --git a/src/mainboard/samsung/lumpy/dsdt.asl b/src/mainboard/samsung/lumpy/dsdt.asl index 28b0c1b77d..135919e67f 100644 --- a/src/mainboard/samsung/lumpy/dsdt.asl +++ b/src/mainboard/samsung/lumpy/dsdt.asl @@ -34,9 +34,6 @@ DefinitionBlock( // General Purpose Events //#include "acpi/gpe.asl" - // mainboard specific devices - #include "acpi/mainboard.asl" - #include #include "acpi/thermal.asl" @@ -52,6 +49,9 @@ DefinitionBlock( } } + // mainboard specific devices + #include "acpi/mainboard.asl" + #include /* Chipset specific sleep states */ -- cgit v1.2.3