blob: d0755eca337ffe361219fee270ed225f92bce3e2 [file] [log] [blame]
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +08001/*
2 * Copyright (c) 2021-2022 Amlogic, Inc. All rights reserved.
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7/*
8 * platform related header file
9 */
10
11#ifndef _MESON_A5_GPIO_H_
12#define _MESON_A5_GPIO_H_
13
14#ifdef __cplusplus
15extern "C" {
16#endif
xiaohu.huang38262102022-05-06 22:21:48 +080017#define GPIO_NUM_MAX 99 /*actual numbers of pins*/
18#define BANK_NUM_MAX 9 /*numbers of gpio bank*/
19#define IRQ_REG_NUM 8 /* numbers of irq relative reg*/
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080020
xiaohu.huang38262102022-05-06 22:21:48 +080021#define GPIO_INVALID 0xffff
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080022
23/*0-31*/
xiaohu.huang38262102022-05-06 22:21:48 +080024#define GPIOE_0 0
25#define GPIOE_1 1
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080026
27/*32-63*/
xiaohu.huang38262102022-05-06 22:21:48 +080028#define GPIOH_0 32
29#define GPIOH_1 33
30#define GPIOH_2 34
31#define GPIOH_3 35
32#define GPIOH_4 36
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080033
34/*64-95*/
xiaohu.huang38262102022-05-06 22:21:48 +080035#define GPIOD_0 64
36#define GPIOD_1 65
37#define GPIOD_2 66
38#define GPIOD_3 67
39#define GPIOD_4 68
40#define GPIOD_5 69
41#define GPIOD_6 70
42#define GPIOD_7 71
43#define GPIOD_8 72
44#define GPIOD_9 73
45#define GPIOD_10 74
46#define GPIOD_11 75
47#define GPIOD_12 76
48#define GPIOD_13 77
49#define GPIOD_14 78
50#define GPIOD_15 79
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080051
52/*96-127 */
xiaohu.huang38262102022-05-06 22:21:48 +080053#define GPIOB_0 96
54#define GPIOB_1 97
55#define GPIOB_2 98
56#define GPIOB_3 99
57#define GPIOB_4 100
58#define GPIOB_5 101
59#define GPIOB_6 102
60#define GPIOB_7 103
61#define GPIOB_8 104
62#define GPIOB_9 105
63#define GPIOB_10 106
64#define GPIOB_11 107
65#define GPIOB_12 108
66#define GPIOB_13 109
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080067
68/*128-159 */
xiaohu.huang38262102022-05-06 22:21:48 +080069#define GPIOX_0 128
70#define GPIOX_1 129
71#define GPIOX_2 130
72#define GPIOX_3 131
73#define GPIOX_4 132
74#define GPIOX_5 133
75#define GPIOX_6 134
76#define GPIOX_7 135
77#define GPIOX_8 136
78#define GPIOX_9 137
79#define GPIOX_10 138
80#define GPIOX_11 139
81#define GPIOX_12 140
82#define GPIOX_13 141
83#define GPIOX_14 142
84#define GPIOX_15 143
85#define GPIOX_16 144
86#define GPIOX_17 145
87#define GPIOX_18 146
88#define GPIOX_19 147
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +080089
90/* 160-191 */
xiaohu.huang38262102022-05-06 22:21:48 +080091#define GPIOC_0 160
92#define GPIOC_1 161
93#define GPIOC_2 162
94#define GPIOC_3 163
95#define GPIOC_4 164
96#define GPIOC_5 165
97#define GPIOC_6 166
98#define GPIOC_7 167
99#define GPIOC_8 168
100#define GPIOC_9 169
101#define GPIOC_10 170
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +0800102
103/* 192- 223 */
xiaohu.huang38262102022-05-06 22:21:48 +0800104#define GPIOT_0 192
105#define GPIOT_1 193
106#define GPIOT_2 194
107#define GPIOT_3 195
108#define GPIOT_4 196
109#define GPIOT_5 197
110#define GPIOT_6 198
111#define GPIOT_7 199
112#define GPIOT_8 200
113#define GPIOT_9 201
114#define GPIOT_10 202
115#define GPIOT_11 203
116#define GPIOT_12 204
117#define GPIOT_13 205
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +0800118
119/* 224- 255*/
xiaohu.huang38262102022-05-06 22:21:48 +0800120#define GPIOZ_0 224
121#define GPIOZ_1 225
122#define GPIOZ_2 226
123#define GPIOZ_3 227
124#define GPIOZ_4 228
125#define GPIOZ_5 229
126#define GPIOZ_6 230
127#define GPIOZ_7 231
128#define GPIOZ_8 232
129#define GPIOZ_9 233
130#define GPIOZ_10 234
131#define GPIOZ_11 235
132#define GPIOZ_12 236
133#define GPIOZ_13 237
134#define GPIOZ_14 238
135#define GPIOZ_15 239
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +0800136
137/* 256- 287*/
xiaohu.huang38262102022-05-06 22:21:48 +0800138#define GPIO_TEST_N 256
Xiaohu.Huanga2c5a042022-03-12 22:41:09 +0800139
140#ifdef __cplusplus
141}
142#endif
xiaohu.huang38262102022-05-06 22:21:48 +0800143#endif /* _MESON_A5_GPIO_H_ */