88 lines
2.8 KiB
C
88 lines
2.8 KiB
C
/*
|
|
* 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_ */
|