mb/google/zork: Add support for fingerprint device

This change adds support for fingerprint device in overridetree for
the following variants:
1. berknip
2. morphius
3. trembyle

Generates the following node in SSDT1:
    Scope (\_SB.FUR1)
    {
        Device (CRFP)
        {
            Name (_HID, "PRP0001")  // _HID: Hardware ID
            Name (_UID, Zero)  // _UID: Unique ID
            Name (_DDN, "Fingerprint Reader")  // _DDN: DOS Device Name
            Method (_STA, 0, NotSerialized)  // _STA: Status
            {
                Return (0x0F)
            }

            Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
            {
                UartSerialBusV2 (0x002DC6C0, DataBitsEight, StopBitsOne,
                    0x00, LittleEndian, ParityTypeNone, FlowControlNone,
                    0x0040, 0x0040, "\\_SB.FUR1",
                    0x00, ResourceConsumer, , Exclusive,
                    )
                GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
                    "\\_SB.GPIO", 0x00, ResourceConsumer, ,
                    )
                    {   // Pin list
                        0x0006
                    }
            })
            Name (_S0W, 0x04)  // _S0W: S0 Device Wake State
            Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
            {
                0x0A,
                0x03
            })
            Name (_DSD, Package (0x02)  // _DSD: Device-Specific Data
            {
                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */,
                Package (0x01)
                {
                    Package (0x02)
                    {
                        "compatible",
                        "google,cros-ec-uart"
                    }
                }
            })
        }
    }

BUG=b:147853944

Signed-off-by: Furquan Shaikh <furquan@google.com>
Change-Id: I7ccb3633332ce3e388293872af7b22f1867c8465
Reviewed-on: https://review.coreboot.org/c/coreboot/+/42082
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
This commit is contained in:
Furquan Shaikh 2020-06-03 19:41:23 -07:00
parent 5d33d03d3f
commit baf1364f79
4 changed files with 42 additions and 0 deletions

View File

@ -41,6 +41,7 @@ config BOARD_SPECIFIC_OPTIONS
select DRIVERS_GENERIC_MAX98357A select DRIVERS_GENERIC_MAX98357A
select HAVE_ACPI_RESUME select HAVE_ACPI_RESUME
select DRIVERS_USB_ACPI select DRIVERS_USB_ACPI
select DRIVERS_UART_ACPI
config ELOG_BOOT_COUNT_CMOS_OFFSET config ELOG_BOOT_COUNT_CMOS_OFFSET
int int

View File

@ -88,4 +88,18 @@ chip soc/amd/picasso
device i2c 10 on end device i2c 10 on end
end end
end end
device mmio 0xfedca000 on
chip drivers/uart/acpi
register "name" = ""CRFP""
register "desc" = ""Fingerprint Reader""
register "hid" = "ACPI_DT_NAMESPACE_HID"
register "compat_string" = ""google,cros-ec-uart""
register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPIO_6)"
register "wake" = "GEVENT_10"
register "uart" = "ACPI_UART_RAW_DEVICE(3000000, 64)"
device generic 0 on end
end
end
end # chip soc/amd/picasso end # chip soc/amd/picasso

View File

@ -80,4 +80,18 @@ chip soc/amd/picasso
device i2c 5d on end device i2c 5d on end
end end
end end
device mmio 0xfedca000 on
chip drivers/uart/acpi
register "name" = ""CRFP""
register "desc" = ""Fingerprint Reader""
register "hid" = "ACPI_DT_NAMESPACE_HID"
register "compat_string" = ""google,cros-ec-uart""
register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPIO_6)"
register "wake" = "GEVENT_10"
register "uart" = "ACPI_UART_RAW_DEVICE(3000000, 64)"
device generic 0 on end
end
end
end # chip soc/amd/picasso end # chip soc/amd/picasso

View File

@ -159,4 +159,17 @@ chip soc/amd/picasso
end end
end end
device mmio 0xfedca000 on
chip drivers/uart/acpi
register "name" = ""CRFP""
register "desc" = ""Fingerprint Reader""
register "hid" = "ACPI_DT_NAMESPACE_HID"
register "compat_string" = ""google,cros-ec-uart""
register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPIO_6)"
register "wake" = "GEVENT_10"
register "uart" = "ACPI_UART_RAW_DEVICE(3000000, 64)"
device generic 0 on end
end
end
end # chip soc/amd/picasso end # chip soc/amd/picasso