| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* |
| * Samsung Exynos DTS pinctrl constants |
| * |
| * Copyright (c) 2016 Samsung Electronics Co., Ltd. |
| * http://www.samsung.com |
| * Copyright (c) 2022 Linaro Ltd |
| * Author: Krzysztof Kozlowski <krzk@kernel.org> |
| */ |
| |
| #ifndef __DTS_ARM64_SAMSUNG_EXYNOS_PINCTRL_H__ |
| #define __DTS_ARM64_SAMSUNG_EXYNOS_PINCTRL_H__ |
| |
| #define EXYNOS_PIN_PULL_NONE 0 |
| #define EXYNOS_PIN_PULL_DOWN 1 |
| #define EXYNOS_PIN_PULL_UP 3 |
| |
| /* Pin function in power down mode */ |
| #define EXYNOS_PIN_PDN_OUT0 0 |
| #define EXYNOS_PIN_PDN_OUT1 1 |
| #define EXYNOS_PIN_PDN_INPUT 2 |
| #define EXYNOS_PIN_PDN_PREV 3 |
| |
| /* |
| * Drive strengths for Exynos5410, Exynos542x, Exynos5800, Exynos7885, Exynos850 |
| * (except GPIO_HSI block), ExynosAutov9 (FSI0, PERIC1) |
| */ |
| #define EXYNOS5420_PIN_DRV_LV1 0 |
| #define EXYNOS5420_PIN_DRV_LV2 1 |
| #define EXYNOS5420_PIN_DRV_LV3 2 |
| #define EXYNOS5420_PIN_DRV_LV4 3 |
| |
| /* Drive strengths for Exynos5433 */ |
| #define EXYNOS5433_PIN_DRV_FAST_SR1 0 |
| #define EXYNOS5433_PIN_DRV_FAST_SR2 1 |
| #define EXYNOS5433_PIN_DRV_FAST_SR3 2 |
| #define EXYNOS5433_PIN_DRV_FAST_SR4 3 |
| #define EXYNOS5433_PIN_DRV_FAST_SR5 4 |
| #define EXYNOS5433_PIN_DRV_FAST_SR6 5 |
| #define EXYNOS5433_PIN_DRV_SLOW_SR1 8 |
| #define EXYNOS5433_PIN_DRV_SLOW_SR2 9 |
| #define EXYNOS5433_PIN_DRV_SLOW_SR3 0xa |
| #define EXYNOS5433_PIN_DRV_SLOW_SR4 0xb |
| #define EXYNOS5433_PIN_DRV_SLOW_SR5 0xc |
| #define EXYNOS5433_PIN_DRV_SLOW_SR6 0xf |
| |
| /* Drive strengths for Exynos7 (except FSYS1) */ |
| #define EXYNOS7_PIN_DRV_LV1 0 |
| #define EXYNOS7_PIN_DRV_LV2 2 |
| #define EXYNOS7_PIN_DRV_LV3 1 |
| #define EXYNOS7_PIN_DRV_LV4 3 |
| |
| /* Drive strengths for Exynos7 FSYS1 block */ |
| #define EXYNOS7_FSYS1_PIN_DRV_LV1 0 |
| #define EXYNOS7_FSYS1_PIN_DRV_LV2 4 |
| #define EXYNOS7_FSYS1_PIN_DRV_LV3 2 |
| #define EXYNOS7_FSYS1_PIN_DRV_LV4 6 |
| #define EXYNOS7_FSYS1_PIN_DRV_LV5 1 |
| #define EXYNOS7_FSYS1_PIN_DRV_LV6 5 |
| |
| /* Drive strengths for Exynos850 GPIO_HSI block */ |
| #define EXYNOS850_HSI_PIN_DRV_LV1 0 /* 1x */ |
| #define EXYNOS850_HSI_PIN_DRV_LV1_5 1 /* 1.5x */ |
| #define EXYNOS850_HSI_PIN_DRV_LV2 2 /* 2x */ |
| #define EXYNOS850_HSI_PIN_DRV_LV2_5 3 /* 2.5x */ |
| #define EXYNOS850_HSI_PIN_DRV_LV3 4 /* 3x */ |
| #define EXYNOS850_HSI_PIN_DRV_LV4 5 /* 4x */ |
| |
| #define EXYNOS_PIN_FUNC_INPUT 0 |
| #define EXYNOS_PIN_FUNC_OUTPUT 1 |
| #define EXYNOS_PIN_FUNC_2 2 |
| #define EXYNOS_PIN_FUNC_3 3 |
| #define EXYNOS_PIN_FUNC_4 4 |
| #define EXYNOS_PIN_FUNC_5 5 |
| #define EXYNOS_PIN_FUNC_6 6 |
| #define EXYNOS_PIN_FUNC_EINT 0xf |
| #define EXYNOS_PIN_FUNC_F EXYNOS_PIN_FUNC_EINT |
| |
| #endif /* __DTS_ARM64_SAMSUNG_EXYNOS_PINCTRL_H__ */ |