summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew McRae <amcrae@google.com>2022-04-12 10:54:41 +1000
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-04-13 00:59:09 +0000
commita22fc92aedc9acc2c531eb0b6ee929e66391d755 (patch)
tree0d9b30bcd2a02a594e8f3522bdbf6c258fb9cf2d
parent097012ce2e8ff93db3fc38783b65ec498156d2ee (diff)
downloadchrome-ec-a22fc92aedc9acc2c531eb0b6ee929e66391d755.tar.gz
zephyr: ap_pwrseq: Rename enable/disable interrupt
Rename enable/disable interrupt to just enable/disable for power signals API. This better reflects the function of this call. BUG=none TEST=zmake testall BRANCH=none Signed-off-by: Andrew McRae <amcrae@google.com> Change-Id: Ia78ba01067d3b66c7579749f124399e8b1fd6fca Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3583099 Reviewed-by: Kangheui Won <khwon@chromium.org> Reviewed-by: Li1 Feng <li1.feng@intel.com>
-rw-r--r--zephyr/subsys/ap_pwrseq/include/power_signals.h35
-rw-r--r--zephyr/subsys/ap_pwrseq/include/signal_adc.h8
-rw-r--r--zephyr/subsys/ap_pwrseq/include/signal_gpio.h4
-rw-r--r--zephyr/subsys/ap_pwrseq/power_signals.c12
-rw-r--r--zephyr/subsys/ap_pwrseq/signal_adc.c6
-rw-r--r--zephyr/subsys/ap_pwrseq/signal_gpio.c6
-rw-r--r--zephyr/test/ap_power/prj.conf1
-rw-r--r--zephyr/test/ap_power/src/signals.c16
8 files changed, 49 insertions, 39 deletions
diff --git a/zephyr/subsys/ap_pwrseq/include/power_signals.h b/zephyr/subsys/ap_pwrseq/include/power_signals.h
index cdeb9ec783..bc2d79bd1e 100644
--- a/zephyr/subsys/ap_pwrseq/include/power_signals.h
+++ b/zephyr/subsys/ap_pwrseq/include/power_signals.h
@@ -160,28 +160,36 @@ int power_signal_get(enum power_signal signal);
int power_signal_set(enum power_signal signal, int value);
/**
- * @brief Enable interrupts for this power signal
+ * @brief Enable this power signal
*
- * For signals that allow an interrupt to be used,
- * enable the interrupt.
+ * Enable this signal to be used as a power_signal.
+ * Typically this means the interrupt associated with this
+ * signal is enabled.
*
- * @param signal The power_signal to enable interrupts for.
+ * Power signals are enabled by default at startup, and if
+ * a power signal is disabled via power_signal_disable(), it will
+ * need to be re-enabled before the signal is included in the
+ * input handling again.
+ *
+ * @param signal The power_signal to enable.
* @return 0 is successful
- * @return negative If interrupt cannot be enabled.
+ * @return negative If unsuccessful
*/
-int power_signal_enable_interrupt(enum power_signal signal);
+int power_signal_enable(enum power_signal signal);
/**
- * @brief Disable interrupts for this power signal
+ * @brief Disable this power signal
*
- * For signals that allow an interrupt to be used,
- * disable the interrupt.
+ * Disable the signal so that it does not update the
+ * input handling (i.e does not call power_signal_interrupt() etc.)
+ * Once disabled, a signal must be re-enabled using
+ * power_signal_enable() to allow the signal to be used again.
*
- * @param signal The power_signal to disable interrupts for.
+ * @param signal The power_signal to disable.
* @return 0 is successful
- * @return negative If interrupt are not available on this signal.
+ * @return negative If unsuccessful
*/
-int power_signal_disable_interrupt(enum power_signal signal);
+int power_signal_disable(enum power_signal signal);
/**
* @brief Get the debug name associated with this signal.
@@ -202,7 +210,8 @@ void power_signal_init(void);
/**
* @brief Power signal interrupt handler
*
- * Called when an input signal causes an interrupt.
+ * Called when an input signal has changed.
+ * May be called from interrupt context.
*
* @param signal The power_signal that has changed.
* @param value The new value of the signal
diff --git a/zephyr/subsys/ap_pwrseq/include/signal_adc.h b/zephyr/subsys/ap_pwrseq/include/signal_adc.h
index 294a3455a3..e43e73e1a7 100644
--- a/zephyr/subsys/ap_pwrseq/include/signal_adc.h
+++ b/zephyr/subsys/ap_pwrseq/include/signal_adc.h
@@ -41,7 +41,7 @@ DT_FOREACH_STATUS_OKAY(intel_ap_pwrseq_adc, PWR_ADC_ENUM)
int power_signal_adc_get(enum pwr_sig_adc adc);
/**
- * @brief Enable the ADC interrupt
+ * @brief Enable the ADC signal.
*
* This will not only enable the interrupt driven update
* of this signal, but will also enable the ADC itself.
@@ -50,10 +50,10 @@ int power_signal_adc_get(enum pwr_sig_adc adc);
* @return 0 if successful
* @return -error if failed
*/
-int power_signal_adc_enable_int(enum pwr_sig_adc adc);
+int power_signal_adc_enable(enum pwr_sig_adc adc);
/**
- * @brief Disable the ADC interrupt
+ * @brief Disable the ADC signal.
*
* This will disable the interrupt updating of this signal, and will
* also disable the ADC from running.
@@ -62,7 +62,7 @@ int power_signal_adc_enable_int(enum pwr_sig_adc adc);
* @return 0 if successful
* @return -error if failed
*/
-int power_signal_adc_disable_int(enum pwr_sig_adc adc);
+int power_signal_adc_disable(enum pwr_sig_adc adc);
/**
* @brief Initialize the ADCs for the power signals.
diff --git a/zephyr/subsys/ap_pwrseq/include/signal_gpio.h b/zephyr/subsys/ap_pwrseq/include/signal_gpio.h
index 04d45b8b1d..e797f0c21f 100644
--- a/zephyr/subsys/ap_pwrseq/include/signal_gpio.h
+++ b/zephyr/subsys/ap_pwrseq/include/signal_gpio.h
@@ -54,7 +54,7 @@ int power_signal_gpio_set(enum pwr_sig_gpio gpio, int value);
* @return 0 if successful
* @return -error if failed
*/
-int power_signal_gpio_enable_int(enum pwr_sig_gpio gpio);
+int power_signal_gpio_enable(enum pwr_sig_gpio gpio);
/**
* @brief Disable the GPIO interrupt
@@ -63,7 +63,7 @@ int power_signal_gpio_enable_int(enum pwr_sig_gpio gpio);
* @return 0 if successful
* @return -error if failed
*/
-int power_signal_gpio_disable_int(enum pwr_sig_gpio gpio);
+int power_signal_gpio_disable(enum pwr_sig_gpio gpio);
/**
* @brief Initialize the GPIOs for the power signals.
diff --git a/zephyr/subsys/ap_pwrseq/power_signals.c b/zephyr/subsys/ap_pwrseq/power_signals.c
index d103c4c56b..c463e8e82e 100644
--- a/zephyr/subsys/ap_pwrseq/power_signals.c
+++ b/zephyr/subsys/ap_pwrseq/power_signals.c
@@ -226,7 +226,7 @@ int power_signal_set(enum power_signal signal, int value)
return ret;
}
-int power_signal_enable_interrupt(enum power_signal signal)
+int power_signal_enable(enum power_signal signal)
{
const struct ps_config *cp;
@@ -244,16 +244,16 @@ int power_signal_enable_interrupt(enum power_signal signal)
#if HAS_GPIO_SIGNALS
case PWR_SIG_SRC_GPIO:
- return power_signal_gpio_enable_int(cp->src_enum);
+ return power_signal_gpio_enable(cp->src_enum);
#endif
#if HAS_ADC_SIGNALS
case PWR_SIG_SRC_ADC:
- return power_signal_adc_enable_int(cp->src_enum);
+ return power_signal_adc_enable(cp->src_enum);
#endif
}
}
-int power_signal_disable_interrupt(enum power_signal signal)
+int power_signal_disable(enum power_signal signal)
{
const struct ps_config *cp;
@@ -267,11 +267,11 @@ int power_signal_disable_interrupt(enum power_signal signal)
#if HAS_GPIO_SIGNALS
case PWR_SIG_SRC_GPIO:
- return power_signal_gpio_disable_int(cp->src_enum);
+ return power_signal_gpio_disable(cp->src_enum);
#endif
#if HAS_ADC_SIGNALS
case PWR_SIG_SRC_ADC:
- return power_signal_adc_disable_int(cp->src_enum);
+ return power_signal_adc_disable(cp->src_enum);
#endif
}
}
diff --git a/zephyr/subsys/ap_pwrseq/signal_adc.c b/zephyr/subsys/ap_pwrseq/signal_adc.c
index 7ee394a623..9898c8e4bd 100644
--- a/zephyr/subsys/ap_pwrseq/signal_adc.c
+++ b/zephyr/subsys/ap_pwrseq/signal_adc.c
@@ -109,7 +109,7 @@ int power_signal_adc_get(enum pwr_sig_adc adc)
return atomic_test_bit(&adc_state[adc], ADC_BIT_VALUE);
}
-int power_signal_adc_enable_int(enum pwr_sig_adc adc)
+int power_signal_adc_enable(enum pwr_sig_adc adc)
{
if (adc < 0 || adc >= ARRAY_SIZE(config)) {
return -EINVAL;
@@ -124,7 +124,7 @@ int power_signal_adc_enable_int(enum pwr_sig_adc adc)
return 0;
}
-int power_signal_adc_disable_int(enum pwr_sig_adc adc)
+int power_signal_adc_disable(enum pwr_sig_adc adc)
{
if (adc < 0 || adc >= ARRAY_SIZE(config)) {
return -EINVAL;
@@ -175,7 +175,7 @@ void power_signal_adc_init(void)
/* Set high and low trigger callbacks */
sensor_trigger_set(config[i].dev_trig_high, &trig, high_cb[i]);
sensor_trigger_set(config[i].dev_trig_low, &trig, low_cb[i]);
- power_signal_adc_enable_int(i);
+ power_signal_adc_enable(i);
}
}
diff --git a/zephyr/subsys/ap_pwrseq/signal_gpio.c b/zephyr/subsys/ap_pwrseq/signal_gpio.c
index 3e940bacfd..b4888f8cff 100644
--- a/zephyr/subsys/ap_pwrseq/signal_gpio.c
+++ b/zephyr/subsys/ap_pwrseq/signal_gpio.c
@@ -43,7 +43,7 @@ DT_FOREACH_STATUS_OKAY(MY_COMPAT, INIT_GPIO_CONFIG)
static struct gpio_callback int_cb[ARRAY_SIZE(gpio_config)];
-int power_signal_gpio_enable_int(enum pwr_sig_gpio index)
+int power_signal_gpio_enable(enum pwr_sig_gpio index)
{
gpio_flags_t flags;
@@ -65,7 +65,7 @@ int power_signal_gpio_enable_int(enum pwr_sig_gpio index)
return -EINVAL;
}
-int power_signal_gpio_disable_int(enum pwr_sig_gpio index)
+int power_signal_gpio_disable(enum pwr_sig_gpio index)
{
gpio_flags_t flags;
@@ -141,7 +141,7 @@ void power_signal_gpio_init(void)
* startup, enable the interrupt.
*/
if (!gpio_config[i].no_enable) {
- power_signal_gpio_enable_int(i);
+ power_signal_gpio_enable(i);
}
}
}
diff --git a/zephyr/test/ap_power/prj.conf b/zephyr/test/ap_power/prj.conf
index 0cc677e3e7..86c3f5082d 100644
--- a/zephyr/test/ap_power/prj.conf
+++ b/zephyr/test/ap_power/prj.conf
@@ -45,6 +45,7 @@ CONFIG_X86_NON_DSX_PWRSEQ_ADL=y
CONFIG_AP_X86_INTEL_ADL=y
CONFIG_PLATFORM_EC_ESPI_VW_SLP_S4=y
CONFIG_PLATFORM_EC_ESPI_VW_SLP_S5=y
+CONFIG_AP_PWRSEQ_STACK_SIZE=1024
CONFIG_ESPI=y
CONFIG_ESPI_EMUL=y
diff --git a/zephyr/test/ap_power/src/signals.c b/zephyr/test/ap_power/src/signals.c
index 432b28042b..debd459807 100644
--- a/zephyr/test/ap_power/src/signals.c
+++ b/zephyr/test/ap_power/src/signals.c
@@ -97,26 +97,26 @@ ZTEST(signals, test_validate_request)
zassert_equal(-EINVAL, power_signal_set(PWR_SLP_S0, 1),
"power_signal_set on input pin should not succeed");
/* Can't enable interrupt on output */
- zassert_equal(-EINVAL, power_signal_enable_interrupt(PWR_VCCST_PWRGD),
+ zassert_equal(-EINVAL, power_signal_enable(PWR_VCCST_PWRGD),
"enable interrupt on output pin should not succeed");
/* Can't disable interrupt on output */
- zassert_equal(-EINVAL, power_signal_disable_interrupt(PWR_VCCST_PWRGD),
+ zassert_equal(-EINVAL, power_signal_disable(PWR_VCCST_PWRGD),
"disable interrupt on output pin should not succeed");
/* Can't enable interrupt on input with no interrupt flags */
- zassert_equal(-EINVAL, power_signal_enable_interrupt(PWR_IMVP9_VRRDY),
+ zassert_equal(-EINVAL, power_signal_enable(PWR_IMVP9_VRRDY),
"enable interrupt on input pin without interrupt config");
/* Can't disable interrupt on input with no interrupt flags */
zassert_equal(-EINVAL,
- power_signal_disable_interrupt(PWR_IMVP9_VRRDY),
+ power_signal_disable(PWR_IMVP9_VRRDY),
"disable interrupt on input pin without interrupt config");
/* Invalid signal - should be rejectde */
zassert_equal(-EINVAL, power_signal_get(-1),
"power_signal_get with -1 signal should fail");
zassert_equal(-EINVAL, power_signal_set(-1, 1),
"power_signal_set with -1 signal should fail");
- zassert_equal(-EINVAL, power_signal_enable_interrupt(-1),
+ zassert_equal(-EINVAL, power_signal_enable(-1),
"enable interrupt with -1 signal should fail");
- zassert_equal(-EINVAL, power_signal_disable_interrupt(-1),
+ zassert_equal(-EINVAL, power_signal_disable(-1),
"disable interrupt with -1 signal should fail");
}
@@ -359,7 +359,7 @@ ZTEST(signals, test_gpio_interrupts)
zassert_equal(false, power_signals_on(s0),
"SLP_S0 should not have updated");
- power_signal_enable_interrupt(PWR_SLP_S0);
+ power_signal_enable(PWR_SLP_S0);
emul_set(PWR_SLP_S0, 0);
zassert_equal(true, power_signals_on(s0),
"SLP_S0 should have updated the mask");
@@ -370,7 +370,7 @@ ZTEST(signals, test_gpio_interrupts)
/*
* Disable the GPIO interrupt again.
*/
- power_signal_disable_interrupt(PWR_SLP_S0);
+ power_signal_disable(PWR_SLP_S0);
emul_set(PWR_SLP_S0, 0);
zassert_equal(false, power_signals_on(s0),
"SLP_S0 should not have updated the mask");