Xiaohu.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 1 | /* |
| 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 |
| 15 | extern "C" { |
| 16 | #endif |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 17 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 20 | |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 21 | #define GPIO_INVALID 0xffff |
Xiaohu.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 22 | |
| 23 | /*0-31*/ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 24 | #define GPIOE_0 0 |
| 25 | #define GPIOE_1 1 |
Xiaohu.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 26 | |
| 27 | /*32-63*/ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 28 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 33 | |
| 34 | /*64-95*/ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 35 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 51 | |
| 52 | /*96-127 */ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 53 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 67 | |
| 68 | /*128-159 */ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 69 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 89 | |
| 90 | /* 160-191 */ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 91 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 102 | |
| 103 | /* 192- 223 */ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 104 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 118 | |
| 119 | /* 224- 255*/ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 120 | #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.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 136 | |
| 137 | /* 256- 287*/ |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 138 | #define GPIO_TEST_N 256 |
Xiaohu.Huang | a2c5a04 | 2022-03-12 22:41:09 +0800 | [diff] [blame] | 139 | |
| 140 | #ifdef __cplusplus |
| 141 | } |
| 142 | #endif |
xiaohu.huang | 3826210 | 2022-05-06 22:21:48 +0800 | [diff] [blame] | 143 | #endif /* _MESON_A5_GPIO_H_ */ |