diff options
Diffstat (limited to 'zephyr/shim/src/tcpc.c')
-rw-r--r-- | zephyr/shim/src/tcpc.c | 33 |
1 files changed, 13 insertions, 20 deletions
diff --git a/zephyr/shim/src/tcpc.c b/zephyr/shim/src/tcpc.c index aef3a05b3c..a3598cafc4 100644 --- a/zephyr/shim/src/tcpc.c +++ b/zephyr/shim/src/tcpc.c @@ -27,25 +27,18 @@ #define MAYBE_CONST \ COND_CODE_1(CONFIG_PLATFORM_EC_USB_PD_TCPC_RUNTIME_CONFIG, (), (const)) -MAYBE_CONST struct tcpc_config_t tcpc_config[] = { - DT_FOREACH_STATUS_OKAY_VARGS(CCGXXF_TCPC_COMPAT, TCPC_CONFIG, - TCPC_CONFIG_CCGXXF) - DT_FOREACH_STATUS_OKAY_VARGS(FUSB302_TCPC_COMPAT, TCPC_CONFIG, - TCPC_CONFIG_FUSB302) - DT_FOREACH_STATUS_OKAY_VARGS(IT8XXX2_TCPC_COMPAT, - TCPC_CONFIG, - TCPC_CONFIG_IT8XXX2) - DT_FOREACH_STATUS_OKAY_VARGS(PS8XXX_COMPAT, - TCPC_CONFIG, - TCPC_CONFIG_PS8XXX) - DT_FOREACH_STATUS_OKAY_VARGS( - NCT38XX_TCPC_COMPAT, - TCPC_CONFIG, - TCPC_CONFIG_NCT38XX) - DT_FOREACH_STATUS_OKAY_VARGS( - TCPCI_COMPAT, - TCPC_CONFIG, - TCPC_CONFIG_TCPCI) -}; +#define MAYBE_EMPTY(compat, config) \ + COND_CODE_1( \ + DT_HAS_STATUS_OKAY(compat), \ + (DT_FOREACH_STATUS_OKAY_VARGS(compat, TCPC_CONFIG, config)), \ + (EMPTY)) + +MAYBE_CONST struct tcpc_config_t tcpc_config[] = { LIST_DROP_EMPTY( + MAYBE_EMPTY(CCGXXF_TCPC_COMPAT, TCPC_CONFIG_CCGXXF), + MAYBE_EMPTY(FUSB302_TCPC_COMPAT, TCPC_CONFIG_FUSB302), + MAYBE_EMPTY(IT8XXX2_TCPC_COMPAT, TCPC_CONFIG_IT8XXX2), + MAYBE_EMPTY(PS8XXX_COMPAT, TCPC_CONFIG_PS8XXX), + MAYBE_EMPTY(NCT38XX_TCPC_COMPAT, TCPC_CONFIG_NCT38XX), + MAYBE_EMPTY(TCPCI_COMPAT, TCPC_CONFIG_TCPCI)) }; #endif /* DT_HAS_COMPAT_STATUS_OKAY */ |