From 3b186d8baf006953599075c4e95fb48953c5a7e2 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Tue, 8 Dec 2020 09:03:52 -0700 Subject: [PATCH] Add debugging and _PR3 linkage for RTD3 driver Change-Id: I243e0d8a65f682b1a68af68fa911c8fb8e000cb0 --- src/soc/intel/common/block/pcie/rtd3/rtd3.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/soc/intel/common/block/pcie/rtd3/rtd3.c b/src/soc/intel/common/block/pcie/rtd3/rtd3.c index be412e7967..c8b63bc751 100644 --- a/src/soc/intel/common/block/pcie/rtd3/rtd3.c +++ b/src/soc/intel/common/block/pcie/rtd3/rtd3.c @@ -80,6 +80,8 @@ pcie_rtd3_acpi_method_on(unsigned int pcie_rp, { acpigen_write_method_serialized("_ON", 0); + acpigen_write_debug_string("PCIe RTD3 _ON"); + /* Assert enable GPIO to turn on device power. */ if (config->enable_gpio.pin_count) { acpigen_enable_tx_gpio(&config->enable_gpio); @@ -111,6 +113,8 @@ pcie_rtd3_acpi_method_off(int pcie_rp, { acpigen_write_method_serialized("_OFF", 0); + acpigen_write_debug_string("PCIe RTD3 _OFF"); + /* Trigger L23 ready entry flow unless disabled by config. */ if (!config->disable_l23) pcie_rtd3_acpi_l23_entry(); @@ -169,7 +173,7 @@ pcie_rtd3_acpi_method_status(int pcie_rp, static void pcie_rtd3_acpi_fill_ssdt(const struct device *dev) { const struct soc_intel_common_block_pcie_rtd3_config *config = config_of(dev); - static const char *const power_res_states[] = {"_PR0"}; + static const char *const power_res_states[] = {"_PR0", "_PR3"}; const struct device *parent = dev->bus->dev; const char *scope = acpi_device_path(parent); const struct opregion opregion = OPREGION("PXCS", PCI_CONFIG, 0, 0xff); @@ -216,8 +220,8 @@ static void pcie_rtd3_acpi_fill_ssdt(const struct device *dev) /* Port number is 1-based, PMC IPC method expects 0-based. */ pcie_rp--; - printk(BIOS_INFO, "%s: Enable RTD3 for %s (%s)\n", scope, dev_path(parent), - config->desc ?: dev->chip_ops->name); + printk(BIOS_INFO, "%s: Enable RTD3 for %s (%s) on RP #%d\n", scope, dev_path(parent), + config->desc ?: dev->chip_ops->name, pcie_rp + 1); /* The RTD3 power resource is added to the root port, not the device. */ acpigen_write_scope(scope);