summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Zieba <robertzieba@google.com>2023-02-02 17:31:20 +0000
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2023-02-16 18:47:45 +0000
commit214569d3c739492e3bd2783088fed25b8cdb9e59 (patch)
treea308783922b276b3766c4cc36d67194bcf32871e
parent2b46c0135d4e7c51bf648da476c442d8e6398b8b (diff)
downloadchrome-ec-214569d3c739492e3bd2783088fed25b8cdb9e59.tar.gz
skyrim: Enable STB dumping functionality
Enable `PLATFORM_EC_AMD_STB_DUMP` config. BRANCH=none BUG=b:246770811 TEST=Ran on skyrim DUT Change-Id: Ie59d7ad77cdfdfdef9f4956cb361c0ea77b390fa Signed-off-by: Robert Zieba <robertzieba@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4220249 Reviewed-by: Diana Z <dzigterman@chromium.org>
-rw-r--r--zephyr/program/skyrim/gpio.dtsi8
-rw-r--r--zephyr/program/skyrim/interrupts.dtsi5
-rw-r--r--zephyr/program/skyrim/program.conf1
-rw-r--r--zephyr/program/skyrim/src/power_signals.c9
4 files changed, 23 insertions, 0 deletions
diff --git a/zephyr/program/skyrim/gpio.dtsi b/zephyr/program/skyrim/gpio.dtsi
index 7dc814d83b..1a8d77bca4 100644
--- a/zephyr/program/skyrim/gpio.dtsi
+++ b/zephyr/program/skyrim/gpio.dtsi
@@ -327,6 +327,14 @@
gpios = <&ioex_c1_port1 7 GPIO_OUTPUT_LOW>;
enum-name = "IOEX_USB_C1_SBU_FLIP";
};
+
+ /* STB dumping GPIOs */
+ gpio_ec_sfh_int_h: ec_sfh_int_h {
+ gpios = <&gpio9 3 GPIO_OUTPUT_LOW>;
+ };
+ gpio_sfh_ec_int_h: sfh_ec_int_h {
+ gpios = <&gpio5 6 GPIO_INPUT>;
+ };
};
usba-port-enable-list {
diff --git a/zephyr/program/skyrim/interrupts.dtsi b/zephyr/program/skyrim/interrupts.dtsi
index 0e25a147f7..b329ad7124 100644
--- a/zephyr/program/skyrim/interrupts.dtsi
+++ b/zephyr/program/skyrim/interrupts.dtsi
@@ -137,5 +137,10 @@
flags = <GPIO_INT_EDGE_BOTH>;
handler = "throttle_ap_prochot_input_interrupt";
};
+ int_stb_dump: stb_dump {
+ irq-pin = <&gpio_sfh_ec_int_h>;
+ flags = <GPIO_INT_EDGE_RISING>;
+ handler = "amd_stb_dump_interrupt";
+ };
};
};
diff --git a/zephyr/program/skyrim/program.conf b/zephyr/program/skyrim/program.conf
index 7c3c107afd..1023b67ade 100644
--- a/zephyr/program/skyrim/program.conf
+++ b/zephyr/program/skyrim/program.conf
@@ -120,6 +120,7 @@ CONFIG_PLATFORM_EC_ACCELGYRO_BMI3XX=y
CONFIG_PLATFORM_EC_ACCELGYRO_BMI_COMM_I2C=y
# Misc.
+CONFIG_PLATFORM_EC_AMD_STB_DUMP=y
CONFIG_PLATFORM_EC_I2C_DEBUG=y
CONFIG_PLATFORM_EC_PORT80_4_BYTE=y
diff --git a/zephyr/program/skyrim/src/power_signals.c b/zephyr/program/skyrim/src/power_signals.c
index 88a962c340..b0919ae5f4 100644
--- a/zephyr/program/skyrim/src/power_signals.c
+++ b/zephyr/program/skyrim/src/power_signals.c
@@ -7,6 +7,7 @@
#include "charger.h"
#include "chipset.h"
#include "config.h"
+#include "driver/amd_stb.h"
#include "gpio/gpio_int.h"
#include "gpio_signal.h"
#include "hooks.h"
@@ -93,6 +94,10 @@ static void handle_prochot(bool asserted, void *data)
static void baseboard_init(void)
{
static struct ap_power_ev_callback cb;
+ const struct gpio_dt_spec *gpio_ec_sfh_int_h =
+ GPIO_DT_FROM_NODELABEL(gpio_ec_sfh_int_h);
+ const struct gpio_dt_spec *gpio_sfh_ec_int_h =
+ GPIO_DT_FROM_NODELABEL(gpio_sfh_ec_int_h);
/* Setup a suspend/resume callback */
ap_power_ev_init_callback(&cb, baseboard_suspend_change,
@@ -109,6 +114,10 @@ static void baseboard_init(void)
/* Enable prochot interrupt */
gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_prochot));
throttle_ap_config_prochot(&prochot_cfg);
+
+ /* Enable STB dumping interrupt */
+ gpio_enable_dt_interrupt(GPIO_INT_FROM_NODELABEL(int_stb_dump));
+ amd_stb_dump_init(gpio_ec_sfh_int_h, gpio_sfh_ec_int_h);
}
DECLARE_HOOK(HOOK_INIT, baseboard_init, HOOK_PRIO_POST_I2C);