1 /* 2 * This header provides constants for Keystone pinctrl bindings. 3 * 4 * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. 9 * 10 * This program is distributed "as is" WITHOUT ANY WARRANTY of any 11 * kind, whether express or implied; without even the implied warranty 12 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 */ 15 16 #ifndef _DT_BINDINGS_PINCTRL_KEYSTONE_H 17 #define _DT_BINDINGS_PINCTRL_KEYSTONE_H 18 19 #define MUX_MODE0 0 20 #define MUX_MODE1 1 21 #define MUX_MODE2 2 22 #define MUX_MODE3 3 23 #define MUX_MODE4 4 24 #define MUX_MODE5 5 25 26 #define BUFFER_CLASS_B (0 << 19) 27 #define BUFFER_CLASS_C (1 << 19) 28 #define BUFFER_CLASS_D (2 << 19) 29 #define BUFFER_CLASS_E (3 << 19) 30 31 #define PULL_DISABLE (1 << 16) 32 #define PIN_PULLUP (1 << 17) 33 #define PIN_PULLDOWN (0 << 17) 34 35 #define KEYSTONE_IOPAD_OFFSET(pa, offset) (((pa) & 0xffff) - (offset)) 36 37 #define K2G_CORE_IOPAD(pa) KEYSTONE_IOPAD_OFFSET((pa), 0x1000) 38 39 #endif 40