Zephyr API Documentation 4.4.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
pinctrl_esp32_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_DRIVERS_PINCTRL_PINCTRL_ESP32_COMMON_H_
8#define ZEPHYR_INCLUDE_DRIVERS_PINCTRL_PINCTRL_ESP32_COMMON_H_
9
11
13#define ESP32_PORT_IDX(_pin) (((_pin) < 32) ? 0 : 1)
14
16#define ESP32_PIN_NUM(_mux) (((_mux) >> ESP32_PIN_NUM_SHIFT) & ESP32_PIN_NUM_MASK)
17
19#define ESP32_PIN_SIGI(_mux) (((_mux) >> ESP32_PIN_SIGI_SHIFT) & ESP32_PIN_SIGI_MASK)
20
22#define ESP32_PIN_SIGO(_mux) (((_mux) >> ESP32_PIN_SIGO_SHIFT) & ESP32_PIN_SIGO_MASK)
23
25#define ESP32_PIN_BIAS(_cfg) (((_cfg) >> ESP32_PIN_BIAS_SHIFT) & ESP32_PIN_BIAS_MASK)
26
28#define ESP32_PIN_DRV(_cfg) (((_cfg) >> ESP32_PIN_DRV_SHIFT) & ESP32_PIN_DRV_MASK)
29
31#define ESP32_PIN_MODE_OUT(_cfg) (((_cfg) >> ESP32_PIN_OUT_SHIFT) & ESP32_PIN_OUT_MASK)
32
34#define ESP32_PIN_EN_DIR(_cfg) (((_cfg) >> ESP32_PIN_EN_DIR_SHIFT) & ESP32_PIN_EN_DIR_MASK)
35
37#define ESP32_PIN_SLEEP_HOLD(_cfg) \
38 (((_cfg) >> ESP32_PIN_SLEEP_HOLD_SHIFT) & ESP32_PIN_SLEEP_HOLD_MASK)
39
41
42#endif /* ZEPHYR_INCLUDE_DRIVERS_PINCTRL_PINCTRL_ESP32_COMMON_H_ */