diff options
-rw-r--r-- | zephyr/subsys/ap_pwrseq/include/power_signals.h | 3 | ||||
-rw-r--r-- | zephyr/subsys/ap_pwrseq/include/x86_non_dsx_common_pwrseq_sm_handler.h | 2 | ||||
-rw-r--r-- | zephyr/subsys/ap_pwrseq/signal_adc.c | 58 | ||||
-rw-r--r-- | zephyr/subsys/ap_pwrseq/signal_gpio.c | 24 | ||||
-rw-r--r-- | zephyr/subsys/ap_pwrseq/signal_vw.c | 16 |
5 files changed, 54 insertions, 49 deletions
diff --git a/zephyr/subsys/ap_pwrseq/include/power_signals.h b/zephyr/subsys/ap_pwrseq/include/power_signals.h index bbff230e5a..c5fdbf819b 100644 --- a/zephyr/subsys/ap_pwrseq/include/power_signals.h +++ b/zephyr/subsys/ap_pwrseq/include/power_signals.h @@ -52,6 +52,9 @@ */ #define PWR_SIGNAL_ENUM(id) DT_STRING_UPPER_TOKEN(id, enum_name) +#define PWR_DT_INST_SIGNAL_ENUM(inst) \ + DT_INST_STRING_UPPER_TOKEN(inst, enum_name) + #define PWR_SIGNAL_ENUM_COMMA(id) PWR_SIGNAL_ENUM(id), /** * @brief Enum of all power signals. diff --git a/zephyr/subsys/ap_pwrseq/include/x86_non_dsx_common_pwrseq_sm_handler.h b/zephyr/subsys/ap_pwrseq/include/x86_non_dsx_common_pwrseq_sm_handler.h index 2320e61965..9656d8982d 100644 --- a/zephyr/subsys/ap_pwrseq/include/x86_non_dsx_common_pwrseq_sm_handler.h +++ b/zephyr/subsys/ap_pwrseq/include/x86_non_dsx_common_pwrseq_sm_handler.h @@ -15,8 +15,6 @@ #include <ap_power_host_sleep.h> #include <x86_common_pwrseq.h> -#define DT_DRV_COMPAT intel_ap_pwrseq - /* The wait time is ~150 msec, allow for safety margin. */ #define IN_PCH_SLP_SUS_WAIT_TIME_MS 250 diff --git a/zephyr/subsys/ap_pwrseq/signal_adc.c b/zephyr/subsys/ap_pwrseq/signal_adc.c index 86ebaf02c1..693ac91dba 100644 --- a/zephyr/subsys/ap_pwrseq/signal_adc.c +++ b/zephyr/subsys/ap_pwrseq/signal_adc.c @@ -12,7 +12,7 @@ #include <power_signals.h> -#define MY_COMPAT intel_ap_pwrseq_adc +#define DT_DRV_COMPAT intel_ap_pwrseq_adc LOG_MODULE_DECLARE(ap_pwrseq, CONFIG_AP_PWRSEQ_LOG_LEVEL); @@ -25,24 +25,26 @@ struct adc_config { enum power_signal signal; }; -#define ADC_HIGH_DEV(id) DEVICE_DT_GET(DT_IO_CHANNELS_CTLR(id)) +#define ADC_HIGH_DEV(node_id) DEVICE_DT_GET(DT_IO_CHANNELS_CTLR(node_id)) -#define ADC_HIGH_CHAN(id) DT_IO_CHANNELS_INPUT(id) +#define ADC_HIGH_CHAN(node_id) DT_IO_CHANNELS_INPUT(node_id) -#define ADC_THRESH(id) DT_PROP(id, threshold_mv) +#define ADC_THRESH(node_id) DT_PROP(node_id, threshold_mv) -#define INIT_ADC_CONFIG(id) \ +#define INIT_ADC_CONFIG(inst) \ { \ - .dev_trig_high = DEVICE_DT_GET(DT_PHANDLE(id, trigger_high)), \ - .dev_trig_low = DEVICE_DT_GET(DT_PHANDLE(id, trigger_low)), \ - .adc_dev = ADC_HIGH_DEV(DT_PHANDLE(id, trigger_high)), \ - .adc_ch = ADC_HIGH_CHAN(DT_PHANDLE(id, trigger_high)), \ - .threshold = ADC_THRESH(DT_PHANDLE(id, trigger_high)), \ - .signal = PWR_SIGNAL_ENUM(id), \ + .dev_trig_high = \ + DEVICE_DT_GET(DT_INST_PHANDLE(inst, trigger_high)), \ + .dev_trig_low = \ + DEVICE_DT_GET(DT_INST_PHANDLE(inst, trigger_low)), \ + .adc_dev = ADC_HIGH_DEV(DT_INST_PHANDLE(inst, trigger_high)), \ + .adc_ch = ADC_HIGH_CHAN(DT_INST_PHANDLE(inst, trigger_high)), \ + .threshold = ADC_THRESH(DT_INST_PHANDLE(inst, trigger_high)), \ + .signal = PWR_DT_INST_SIGNAL_ENUM(inst), \ }, -static const struct adc_config config[] = { DT_FOREACH_STATUS_OKAY( - MY_COMPAT, INIT_ADC_CONFIG) }; +static const struct adc_config config[] = { DT_INST_FOREACH_STATUS_OKAY( + INIT_ADC_CONFIG) }; /* * Bit allocations for atomic state @@ -138,30 +140,32 @@ int power_signal_adc_disable(enum pwr_sig_adc adc) #define TAG_ADC(tag, name) DT_CAT(tag, name) -#define PWR_ADC_ENUM(id) TAG_ADC(PWR_SIG_TAG_ADC, PWR_SIGNAL_ENUM(id)) +#define PWR_ADC_ENUM(inst) \ + TAG_ADC(PWR_SIG_TAG_ADC, PWR_DT_INST_SIGNAL_ENUM(inst)) -#define ADC_CB(id, lev) cb_##lev##_##id +#define ADC_CB(inst, lev) cb_##lev##_##inst -#define ADC_CB_DEFINE(id, lev) \ - static void ADC_CB(id, lev)(const struct device *dev, \ - const struct sensor_trigger *trigger) \ - { \ - trigger_##lev(PWR_ADC_ENUM(id)); \ +#define ADC_CB_DEFINE(inst, lev) \ + static void ADC_CB(inst, lev)(const struct device *dev, \ + const struct sensor_trigger *trigger) \ + { \ + trigger_##lev(PWR_ADC_ENUM(inst)); \ } -DT_FOREACH_STATUS_OKAY_VARGS(MY_COMPAT, ADC_CB_DEFINE, high) -DT_FOREACH_STATUS_OKAY_VARGS(MY_COMPAT, ADC_CB_DEFINE, low) +DT_INST_FOREACH_STATUS_OKAY_VARGS(ADC_CB_DEFINE, high) +DT_INST_FOREACH_STATUS_OKAY_VARGS(ADC_CB_DEFINE, low) -#define ADC_CB_COMMA(id, lev) ADC_CB(id, lev), +#define ADC_CB_COMMA(inst, lev) ADC_CB(inst, lev), void power_signal_adc_init(void) { struct sensor_trigger trig = { .type = SENSOR_TRIG_THRESHOLD, .chan = SENSOR_CHAN_VOLTAGE }; - sensor_trigger_handler_t low_cb[] = { DT_FOREACH_STATUS_OKAY_VARGS( - MY_COMPAT, ADC_CB_COMMA, low) }; - sensor_trigger_handler_t high_cb[] = { DT_FOREACH_STATUS_OKAY_VARGS( - MY_COMPAT, ADC_CB_COMMA, high) }; + sensor_trigger_handler_t low_cb[] = { DT_INST_FOREACH_STATUS_OKAY_VARGS( + ADC_CB_COMMA, low) }; + sensor_trigger_handler_t high_cb[] = { + DT_INST_FOREACH_STATUS_OKAY_VARGS(ADC_CB_COMMA, high) + }; int i, rv; int32_t val = 0; diff --git a/zephyr/subsys/ap_pwrseq/signal_gpio.c b/zephyr/subsys/ap_pwrseq/signal_gpio.c index 8fc8ac7a78..b3965fcc42 100644 --- a/zephyr/subsys/ap_pwrseq/signal_gpio.c +++ b/zephyr/subsys/ap_pwrseq/signal_gpio.c @@ -10,12 +10,12 @@ #include <power_signals.h> -#define MY_COMPAT intel_ap_pwrseq_gpio +#define DT_DRV_COMPAT intel_ap_pwrseq_gpio -#define INIT_GPIO_SPEC(id) GPIO_DT_SPEC_GET(id, gpios), +#define INIT_GPIO_SPEC(inst) GPIO_DT_SPEC_INST_GET(inst, gpios), -const static struct gpio_dt_spec spec[] = { DT_FOREACH_STATUS_OKAY( - MY_COMPAT, INIT_GPIO_SPEC) }; +const static struct gpio_dt_spec spec[] = { DT_INST_FOREACH_STATUS_OKAY( + INIT_GPIO_SPEC) }; /* * Configuration for GPIO inputs. @@ -27,16 +27,16 @@ struct ps_gpio_int { unsigned no_enable : 1; }; -#define INIT_GPIO_CONFIG(id) \ - { \ - .flags = DT_PROP_OR(id, interrupt_flags, 0), \ - .signal = PWR_SIGNAL_ENUM(id), \ - .no_enable = DT_PROP(id, no_enable), \ - .output = DT_PROP(id, output), \ +#define INIT_GPIO_CONFIG(inst) \ + { \ + .flags = DT_INST_PROP_OR(inst, interrupt_flags, 0), \ + .signal = PWR_DT_INST_SIGNAL_ENUM(inst), \ + .no_enable = DT_INST_PROP(inst, no_enable), \ + .output = DT_INST_PROP(inst, output), \ }, -const static struct ps_gpio_int gpio_config[] = { DT_FOREACH_STATUS_OKAY( - MY_COMPAT, INIT_GPIO_CONFIG) }; +const static struct ps_gpio_int gpio_config[] = { DT_INST_FOREACH_STATUS_OKAY( + INIT_GPIO_CONFIG) }; static struct gpio_callback int_cb[ARRAY_SIZE(gpio_config)]; diff --git a/zephyr/subsys/ap_pwrseq/signal_vw.c b/zephyr/subsys/ap_pwrseq/signal_vw.c index dc5e544f9c..200e17af24 100644 --- a/zephyr/subsys/ap_pwrseq/signal_vw.c +++ b/zephyr/subsys/ap_pwrseq/signal_vw.c @@ -10,7 +10,7 @@ #include <atomic.h> #include <x86_non_dsx_common_pwrseq_sm_handler.h> -#define MY_COMPAT intel_ap_pwrseq_vw +#define DT_DRV_COMPAT intel_ap_pwrseq_vw /* * A callback must be registered on the ESPI device (for the @@ -23,11 +23,11 @@ LOG_MODULE_DECLARE(ap_pwrseq, CONFIG_AP_PWRSEQ_LOG_LEVEL); -#define INIT_ESPI_SIGNAL(id) \ - { \ - .espi_signal = DT_STRING_UPPER_TOKEN(id, virtual_wire), \ - .signal = PWR_SIGNAL_ENUM(id), \ - .invert = DT_PROP(id, vw_invert), \ +#define INIT_ESPI_SIGNAL(inst) \ + { \ + .espi_signal = DT_INST_STRING_UPPER_TOKEN(inst, virtual_wire), \ + .signal = PWR_DT_INST_SIGNAL_ENUM(inst), \ + .invert = DT_INST_PROP(inst, vw_invert), \ }, /* @@ -39,8 +39,8 @@ struct vw_config { bool invert; /* Invert the signal value */ }; -const static struct vw_config vw_config[] = { DT_FOREACH_STATUS_OKAY( - MY_COMPAT, INIT_ESPI_SIGNAL) }; +const static struct vw_config vw_config[] = { DT_INST_FOREACH_STATUS_OKAY( + INIT_ESPI_SIGNAL) }; /* * Current signal value. |