Attention is currently required from: Tarun Tuli, Subrata Banik.
Kapil Porwal has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/74190 )
Change subject: mb/google/rex: Enable ACPI power resource for Fibocom modem ......................................................................
mb/google/rex: Enable ACPI power resource for Fibocom modem
Enable ACPI power resource for Fibocom modem.
BUG=b:253467124 TEST=Verify ACPI code for Fibocom moden in the OS.
SSDT snippet: Scope (_SB.PCI0.XHCI.RHUB.HS05) { Method (FHRF, 1, Serialized) { 0x22 = _SB.PCI0.GTXS /* External reference */ Local0 Local0 ^= One If ((Local0 == Zero)) { _SB.PCI0.CTXS (0x22) }
Sleep (0x0A) _SB.PCI0.CTXS (0x44) If ((Arg0 == Zero)) { Sleep (0x0A) } ElseIf ((Arg0 == One)) { Sleep (0x0A) _SB.PCI0.CTXS (0x55) Sleep (0x01F4) } }
Method (SHRF, 0, Serialized) { _SB.PCI0.STXS (0x55) Sleep (0x14) _SB.PCI0.STXS (0x44) Sleep (0x50) _SB.PCI0.STXS (0x22) Sleep (0x64) }
Method (_RST, 0, Serialized) // _RST: Device Reset { FHRF (Zero) SHRF () }
Method (DPTS, 1, Serialized) { FHRF (One) }
Device (MRST) { Name (_ADR, 0x0000000000000000) // _ADR: Address Method (_RST, 0, Serialized) // _RST: Device Reset { FHRF (One) SHRF () } }
Name (_PR0, Package (0x01) // _PR0: Power Resources for D0 { PR00 }) Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot { PR00 }) PowerResource (PR00, 0x00, 0x0000) { Method (_STA, 0, Serialized) // _STA: Status { 0x22 = _SB.PCI0.GTXS /* External reference */ Local0 Local0 ^= One If (Local0) { Return (Zero) }
Return (One) }
Method (_ON, 0, Serialized) // _ON_: Power On { Local0 = _STA () If ((Local0 == One)) { Return (Zero) }
SHRF () }
Method (_OFF, 0, Serialized) // _OFF: Power Off { FHRF (One) } } }
Signed-off-by: Kapil Porwal kapilporwal@google.com Change-Id: Iaaa1a0c65c6bab205213c108f84fd53328ac777b --- M src/mainboard/google/rex/variants/rex0/overridetree.cb 1 file changed, 135 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/90/74190/1
diff --git a/src/mainboard/google/rex/variants/rex0/overridetree.cb b/src/mainboard/google/rex/variants/rex0/overridetree.cb index 44d20cb..226d806 100644 --- a/src/mainboard/google/rex/variants/rex0/overridetree.cb +++ b/src/mainboard/google/rex/variants/rex0/overridetree.cb @@ -202,6 +202,16 @@ register "type" = "UPC_TYPE_INTERNAL" device ref usb2_port5 on probe CELLULAR CELLULAR_USB + chip drivers/wwan/fm + register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E07)" + register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A15)" + register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C05)" + register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F10)" + register "has_power_resource" = "1" + device generic 0 alias usb2_wwan on + probe CELLULAR CELLULAR_USB + end + end end end chip drivers/usb/acpi @@ -238,6 +248,16 @@ register "type" = "UPC_TYPE_INTERNAL" device ref usb3_port2 on probe CELLULAR CELLULAR_USB + chip drivers/wwan/fm + register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E07)" + register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A15)" + register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C05)" + register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F10)" + register "has_power_resource" = "1" + device generic 0 alias usb3_wwan on + probe CELLULAR CELLULAR_USB + end + end end end end @@ -541,6 +561,7 @@ register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A15)" register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C05)" register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F10)" + register "has_power_resource" = "1" register "add_acpi_dma_property" = "true" use rp6_rtd3 as rtd3dev device generic 0 alias rp6_wwan on