mirror of
https://github.com/torvalds/linux.git
synced 2024-12-21 02:21:36 +00:00
e096242e1e
Add pinctrl macros for AM62x SoCs. These macro definitions are similar to that of previous platforms, but adding new definitions to avoid any naming confusions in the SoC dts files. checkpatch insists the following error exists: ERROR: Macros with complex values should be enclosed in parentheses However, we do not need parentheses enclosing the values for this macro as we do intend it to generate two separate values as has been done for other similar platforms. Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Acked-by: Rob Herring <robh@kernel.org> Reviewed-by: Bryan Brattlof <bb@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com> Link: https://lore.kernel.org/r/20220225120239.1303821-4-vigneshr@ti.com
48 lines
1.8 KiB
C
48 lines
1.8 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* This header provides constants for pinctrl bindings for TI's K3 SoC
|
|
* family.
|
|
*
|
|
* Copyright (C) 2018-2021 Texas Instruments Incorporated - https://www.ti.com/
|
|
*/
|
|
#ifndef _DT_BINDINGS_PINCTRL_TI_K3_H
|
|
#define _DT_BINDINGS_PINCTRL_TI_K3_H
|
|
|
|
#define PULLUDEN_SHIFT (16)
|
|
#define PULLTYPESEL_SHIFT (17)
|
|
#define RXACTIVE_SHIFT (18)
|
|
|
|
#define PULL_DISABLE (1 << PULLUDEN_SHIFT)
|
|
#define PULL_ENABLE (0 << PULLUDEN_SHIFT)
|
|
|
|
#define PULL_UP (1 << PULLTYPESEL_SHIFT | PULL_ENABLE)
|
|
#define PULL_DOWN (0 << PULLTYPESEL_SHIFT | PULL_ENABLE)
|
|
|
|
#define INPUT_EN (1 << RXACTIVE_SHIFT)
|
|
#define INPUT_DISABLE (0 << RXACTIVE_SHIFT)
|
|
|
|
/* Only these macros are expected be used directly in device tree files */
|
|
#define PIN_OUTPUT (INPUT_DISABLE | PULL_DISABLE)
|
|
#define PIN_OUTPUT_PULLUP (INPUT_DISABLE | PULL_UP)
|
|
#define PIN_OUTPUT_PULLDOWN (INPUT_DISABLE | PULL_DOWN)
|
|
#define PIN_INPUT (INPUT_EN | PULL_DISABLE)
|
|
#define PIN_INPUT_PULLUP (INPUT_EN | PULL_UP)
|
|
#define PIN_INPUT_PULLDOWN (INPUT_EN | PULL_DOWN)
|
|
|
|
#define AM65X_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
#define AM65X_WKUP_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
|
|
#define J721E_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
#define J721E_WKUP_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
|
|
#define AM64X_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
#define AM64X_MCU_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
|
|
#define J721S2_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
#define J721S2_WKUP_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
|
|
#define AM62X_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
#define AM62X_MCU_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
|
|
|
|
#endif
|