| /* |
| * Copyright (c) 2021 Nuvoton Technology Corporation. |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| #ifndef ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_NPCX_PINCTRL_H_ |
| #define ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_NPCX_PINCTRL_H_ |
| |
| /** |
| * @brief NPCX specific PIN configuration flag |
| * |
| * Pin configuration is coded with the following fields |
| * Power Switch Logic (PSL) [ 0 : 3 ] |
| * Reserved [ 4 : 31] |
| * |
| * Applicable to NPCX7 series. |
| */ |
| |
| /* |
| * Power Switch Logic (PSL) input wake-up mode is sensitive to edge signals. |
| * |
| * This is a component flag that should be combined with other |
| * `NPCX_PSL_ACTIVE_*` flags to produce a meaningful configuration. |
| */ |
| #define NPCX_PSL_MODE_EDGE (1 << 0) |
| |
| /* |
| * Power Switch Logic (PSL) input wake-up mode is sensitive to logical levels. |
| * |
| * This is a component flag that should be combined with other |
| * `NPCX_PSL_ACTIVE_*` flags to produce a meaningful configuration. |
| */ |
| #define NPCX_PSL_MODE_LEVEL (1 << 1) |
| |
| /* |
| * The active polarity of Power Switch Logic (PSL) input is high level or |
| * low-to-high transition. |
| * |
| * This is a component flag that should be combined with other |
| * `NPCX_PSL_MODE_*` flags to produce a meaningful configuration. |
| */ |
| #define NPCX_PSL_ACTIVE_HIGH (1 << 2) |
| |
| /* |
| * The active polarity of Power Switch Logic (PSL) input is low level or |
| * high-to-low transition. |
| * |
| * This is a component flag that should be combined with other |
| * `NPCX_PSL_MODE_*` flags to produce a meaningful configuration. |
| */ |
| #define NPCX_PSL_ACTIVE_LOW (1 << 3) |
| |
| /* |
| * Configures Power Switch Logic (PSL) input in detecting rising edge. |
| * |
| * This is used for describing the 'flag' property from PSL input device with |
| * 'nuvoton,npcx-pslctrl-conf' compatible. |
| */ |
| #define NPCX_PSL_RISING_EDGE (NPCX_PSL_MODE_EDGE | NPCX_PSL_ACTIVE_HIGH) |
| |
| /* |
| * Configures Power Switch Logic (PSL) input in detecting falling edge. |
| * |
| * This is used for describing the 'flag' property from PSL input device with |
| * 'nuvoton,npcx-pslctrl-conf' compatible. |
| */ |
| #define NPCX_PSL_FALLING_EDGE (NPCX_PSL_MODE_EDGE | NPCX_PSL_ACTIVE_LOW) |
| |
| /* |
| * Configures Power Switch Logic (PSL) input in detecting level high state (has |
| * logical value '1'). |
| * |
| * This is used for describing the 'flag' property from PSL input device with |
| * 'nuvoton,npcx-pslctrl-conf' compatible. |
| */ |
| #define NPCX_PSL_LEVEL_HIGH (NPCX_PSL_MODE_LEVEL | NPCX_PSL_ACTIVE_HIGH) |
| |
| /* |
| * Configures Power Switch Logic (PSL) input in detecting level low state (has |
| * logical value '0'). |
| * |
| * This is used for describing the 'flag' property from PSL input device with |
| * 'nuvoton,npcx-pslctrl-conf' compatible. |
| */ |
| #define NPCX_PSL_LEVEL_LOW (NPCX_PSL_MODE_LEVEL | NPCX_PSL_ACTIVE_LOW) |
| |
| #endif /* ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_NPCX_PINCTRL_H_ */ |