Home | History | Annotate | Line # | Download | only in gpio
      1      1.1  jmcneill /*	$NetBSD: tegra186-gpio.h,v 1.1.1.5 2021/11/07 16:49:57 jmcneill Exp $	*/
      2      1.1  jmcneill 
      3  1.1.1.2  jmcneill /* SPDX-License-Identifier: GPL-2.0 */
      4      1.1  jmcneill /*
      5      1.1  jmcneill  * This header provides constants for binding nvidia,tegra186-gpio*.
      6      1.1  jmcneill  *
      7      1.1  jmcneill  * The first cell in Tegra's GPIO specifier is the GPIO ID. The macros below
      8      1.1  jmcneill  * provide names for this.
      9      1.1  jmcneill  *
     10      1.1  jmcneill  * The second cell contains standard flag values specified in gpio.h.
     11      1.1  jmcneill  */
     12      1.1  jmcneill 
     13  1.1.1.5  jmcneill #ifndef _DT_BINDINGS_GPIO_TEGRA186_GPIO_H
     14  1.1.1.5  jmcneill #define _DT_BINDINGS_GPIO_TEGRA186_GPIO_H
     15      1.1  jmcneill 
     16      1.1  jmcneill #include <dt-bindings/gpio/gpio.h>
     17      1.1  jmcneill 
     18      1.1  jmcneill /* GPIOs implemented by main GPIO controller */
     19  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_A 0
     20  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_B 1
     21  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_C 2
     22  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_D 3
     23  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_E 4
     24  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_F 5
     25  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_G 6
     26  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_H 7
     27  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_I 8
     28  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_J 9
     29  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_K 10
     30  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_L 11
     31  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_M 12
     32  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_N 13
     33  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_O 14
     34  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_P 15
     35  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_Q 16
     36  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_R 17
     37  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_T 18
     38  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_X 19
     39  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_Y 20
     40  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_BB 21
     41  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO_PORT_CC 22
     42  1.1.1.3  jmcneill 
     43  1.1.1.3  jmcneill #define TEGRA186_MAIN_GPIO(port, offset) \
     44  1.1.1.3  jmcneill 	((TEGRA186_MAIN_GPIO_PORT_##port * 8) + offset)
     45  1.1.1.3  jmcneill 
     46      1.1  jmcneill /* GPIOs implemented by AON GPIO controller */
     47  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_S 0
     48  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_U 1
     49  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_V 2
     50  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_W 3
     51  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_Z 4
     52  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_AA 5
     53  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_EE 6
     54  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO_PORT_FF 7
     55  1.1.1.3  jmcneill 
     56  1.1.1.3  jmcneill #define TEGRA186_AON_GPIO(port, offset) \
     57  1.1.1.3  jmcneill 	((TEGRA186_AON_GPIO_PORT_##port * 8) + offset)
     58  1.1.1.3  jmcneill 
     59      1.1  jmcneill #endif
     60