Zephyr API Documentation
4.4.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
esp-pinctrl-common.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2022-2026 Espressif Systems (Shanghai) Co., Ltd.
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_ESP_PINCTRL_COMMON_H_
8
#define ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_ESP_PINCTRL_COMMON_H_
9
10
#include <
zephyr/dt-bindings/dt-util.h
>
11
13
#define ESP32_PIN_NUM_SHIFT 0U
14
#define ESP32_PIN_NUM_MASK 0x3FU
15
22
#define ESP32_PIN_SIGI_MASK 0x1FFU
23
#define ESP32_PIN_SIGI_SHIFT 6U
24
#define ESP32_PIN_SIGO_MASK 0x1FFU
25
#define ESP32_PIN_SIGO_SHIFT 15U
26
#define ESP_SIG_INVAL ESP32_PIN_SIGI_MASK
27
35
#define ESP32_PINMUX(pin, sig_i, sig_o) \
36
(((pin & ESP32_PIN_NUM_MASK) << ESP32_PIN_NUM_SHIFT) | \
37
((sig_i & ESP32_PIN_SIGI_MASK) << ESP32_PIN_SIGI_SHIFT) | \
38
((sig_o & ESP32_PIN_SIGO_MASK) << ESP32_PIN_SIGO_SHIFT))
39
57
62
#define ESP32_PIN_BIAS_SHIFT 0U
63
#define ESP32_PIN_BIAS_MASK 0x3U
64
#define ESP32_PIN_DRV_SHIFT 2U
65
#define ESP32_PIN_DRV_MASK 0x3U
66
#define ESP32_PIN_OUT_SHIFT 4U
67
#define ESP32_PIN_OUT_MASK 0x3U
68
#define ESP32_PIN_EN_DIR_SHIFT 6U
69
#define ESP32_PIN_EN_DIR_MASK 0x3U
70
#define ESP32_PIN_SLEEP_HOLD_SHIFT 8U
71
#define ESP32_PIN_SLEEP_HOLD_MASK 0x1U
73
78
#define ESP32_NO_PULL 0x1
79
#define ESP32_PULL_UP 0x2
80
#define ESP32_PULL_DOWN 0x3
82
87
#define ESP32_PUSH_PULL 0x1
88
#define ESP32_OPEN_DRAIN 0x2
90
95
#define ESP32_PIN_OUT_HIGH 0x1
96
#define ESP32_PIN_OUT_LOW 0x2
98
103
#define ESP32_PIN_OUT_EN 0x1
104
#define ESP32_PIN_IN_EN 0x2
106
111
#define ESP32_PIN_SLEEP_HOLD_EN 0x1
113
123
#define ESP32_NO_PULL_FLAG BIT(0)
124
#define ESP32_PULL_UP_FLAG BIT(1)
125
#define ESP32_PULL_DOWN_FLAG BIT(2)
126
#define ESP32_PUSH_PULL_FLAG BIT(3)
127
#define ESP32_OPEN_DRAIN_FLAG BIT(4)
128
#define ESP32_DIR_INP_FLAG BIT(5)
129
#define ESP32_DIR_OUT_FLAG BIT(6)
130
#define ESP32_PIN_OUT_HIGH_FLAG BIT(7)
131
#define ESP32_PIN_OUT_LOW_FLAG BIT(8)
132
#define ESP32_PIN_OUT_EN_FLAG BIT(9)
133
#define ESP32_PIN_IN_EN_FLAG BIT(10)
134
#define ESP32_SLEEP_HOLD_FLAG BIT(11)
136
137
#endif
/* ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_ESP_PINCTRL_COMMON_H_ */
dt-util.h
zephyr
dt-bindings
pinctrl
esp-pinctrl-common.h
Generated on
for Zephyr API Documentation by
1.16.1