coreboot/src/drivers
Duncan Laurie e530d816cc drivers/uart/acpi: Add new device driver for UART attached devices
This driver generates an ACPI device object for a UART attached device
with all of the expected device support handlers like different interrupt
sources and power control GPIOs.

Example use:
chip drivers/uart/acpi
    register "name" = ""UDEV""
    register "desc" = ""UART Attached Device""
    register "hid" = "ACPI_DT_NAMESPACE_HID"
    register "compat_string" = ""google,cros-ec-uart""
    register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPP_C20)"
    register "uart" = "ACPI_UART_RAW_DEVICE(115200, 64)"
    device generic 0 on end
end

Resulting in this ACPI device:

Device (UDEV)
{
    Name (_HID, "PRP0001")
    Name (_UID, Zero)
    Name (_DDN, "UART Attached Device")
    Method (_STA, 0, NotSerialized)
    {
        Return (0x0F)
    }
    Name (_CRS, ResourceTemplate ()
    {
        UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
                         0x00, LittleEndian, ParityTypeNone, FlowControlNone,
                         0x0040, 0x0040, "\\_SB.PCI0.UAR2",
                         0x00, ResourceConsumer, , Exclusive)
        GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
                 "\\_SB.PCI0.GPIO", 0x00, ResourceConsumer)
        {
            0x0114
        }
    })
    Name (_DSD, Package (0x02)
    {
        ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
        Package (0x01)
        {
            Package (0x02)
            {
                "compatible",
                "google,cros-ec-uart"
            }
        }
    })
}

Change-Id: Idfd2d9d2ab6990a82ddd401734c0d9b1b0b8f82d
Signed-off-by: Duncan Laurie <dlaurie@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/41793
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-06-04 20:08:32 +00:00
..
amd/agesa arch/x86/postcar_loader: utilize var_mtrr_context API 2020-06-02 16:10:05 +00:00
ams treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
analogix/anx7625 src: Remove unused '#include <timer.h>' 2020-06-02 07:39:05 +00:00
asmedia src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
aspeed aspeed/ast2050: Fix when resources are added 2020-05-14 21:25:59 +00:00
broadcom src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
crb treewide: Convert more license headers to SPDX style 2020-05-11 19:37:19 +00:00
dec/21143 treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
elog src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
emulation/qemu drivers/emulation/qemu/bochs: Rewrite driver 2020-05-20 09:50:29 +00:00
generic drivers/generic/max98357a: Don't write device if HID is missing 2020-06-03 19:17:36 +00:00
gfx/generic src: Remove unused '#include <stdint.h>' 2020-05-13 08:48:17 +00:00
gic treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
i2c src: Remove redundant includes 2020-06-02 07:42:32 +00:00
intel src: Remove redundant includes 2020-06-02 07:42:32 +00:00
ipmi treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
lenovo src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
maxim src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
mrc_cache treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
net drivers: Use SPDX identifiers 2020-05-25 22:19:21 +00:00
parade src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
pc80 src: Remove unused '#include <cbfs.h>' 2020-06-02 07:42:56 +00:00
ricoh/rce822 treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
secunet/dmi treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
siemens/nc_fpga src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
sil/3114 treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
smmstore drivers/smmstore/Kconfig: Add a proper dependency 2020-05-28 09:35:20 +00:00
soundwire drivers/soundwire/alc5682: Support Realtek ALC5682 SoundWire device 2020-05-22 01:48:59 +00:00
spi src: Remove unused 'include <string.h>' 2020-05-18 07:41:24 +00:00
ti src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
tpm src: Remove redundant includes 2020-06-02 07:42:32 +00:00
uart drivers/uart/acpi: Add new device driver for UART attached devices 2020-06-04 20:08:32 +00:00
usb src: Remove unused '#include <stddef.h>' 2020-05-13 08:48:50 +00:00
vpd drivers/vpd: add VPD region VPD_RW_THEN_RO 2020-06-02 07:18:40 +00:00
wifi treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00