bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 1 | /* |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 2 | * Copyright (c) 2021-2023 Amlogic, Inc. All rights reserved. |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 3 | * |
| 4 | * SPDX-License-Identifier: MIT |
| 5 | */ |
| 6 | |
| 7 | /* |
| 8 | * platform related header file |
| 9 | */ |
| 10 | |
| 11 | #ifndef _MESON_S7D_GPIO_H_ |
| 12 | #define _MESON_S7D_GPIO_H_ |
| 13 | |
| 14 | #ifdef __cplusplus |
| 15 | extern "C" { |
| 16 | #endif |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 17 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 18 | #define GPIO_NUM_MAX 82 /* actual numbers of pins */ |
| 19 | #define BANK_NUM_MAX 9 /* numbers of gpio bank */ |
| 20 | #define IRQ_REG_NUM 8 /* numbers of irq relative reg */ |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 21 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 22 | #define GPIO_INVALID 0xffff |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 23 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 24 | /* 0:31 */ |
| 25 | #define GPIOE_0 0 |
| 26 | #define GPIOE_1 1 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 27 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 28 | /* 32:63 */ |
| 29 | #define GPIOB_0 32 |
| 30 | #define GPIOB_1 33 |
| 31 | #define GPIOB_2 34 |
| 32 | #define GPIOB_3 35 |
| 33 | #define GPIOB_4 36 |
| 34 | #define GPIOB_5 37 |
| 35 | #define GPIOB_6 38 |
| 36 | #define GPIOB_7 39 |
| 37 | #define GPIOB_8 40 |
| 38 | #define GPIOB_9 41 |
| 39 | #define GPIOB_10 42 |
| 40 | #define GPIOB_11 43 |
| 41 | #define GPIOB_12 44 |
| 42 | #define GPIOB_13 45 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 43 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 44 | /* 64:95 */ |
| 45 | #define GPIOC_0 64 |
| 46 | #define GPIOC_1 65 |
| 47 | #define GPIOC_2 66 |
| 48 | #define GPIOC_3 67 |
| 49 | #define GPIOC_4 68 |
| 50 | #define GPIOC_5 69 |
| 51 | #define GPIOC_6 70 |
| 52 | #define GPIOC_7 71 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 53 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 54 | /* 96:127 */ |
| 55 | #define GPIOD_0 96 |
| 56 | #define GPIOD_1 97 |
| 57 | #define GPIOD_2 98 |
| 58 | #define GPIOD_3 99 |
| 59 | #define GPIOD_4 100 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 60 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 61 | /* 128:159 */ |
| 62 | #define GPIODV_0 128 |
| 63 | #define GPIODV_1 129 |
| 64 | #define GPIODV_2 130 |
| 65 | #define GPIODV_3 131 |
| 66 | #define GPIODV_4 132 |
| 67 | #define GPIODV_5 133 |
| 68 | #define GPIODV_6 134 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 69 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 70 | /* 160:191 */ |
| 71 | #define GPIOH_0 160 |
| 72 | #define GPIOH_1 161 |
| 73 | #define GPIOH_2 162 |
| 74 | #define GPIOH_3 163 |
| 75 | #define GPIOH_4 164 |
| 76 | #define GPIOH_5 165 |
| 77 | #define GPIOH_6 166 |
| 78 | #define GPIOH_7 167 |
| 79 | #define GPIOH_8 168 |
| 80 | #define GPIOH_9 169 |
| 81 | #define GPIOH_10 170 |
| 82 | #define GPIOH_11 171 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 83 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 84 | /* 192:223 */ |
| 85 | #define GPIOX_0 192 |
| 86 | #define GPIOX_1 193 |
| 87 | #define GPIOX_2 194 |
| 88 | #define GPIOX_3 195 |
| 89 | #define GPIOX_4 196 |
| 90 | #define GPIOX_5 197 |
| 91 | #define GPIOX_6 198 |
| 92 | #define GPIOX_7 199 |
| 93 | #define GPIOX_8 200 |
| 94 | #define GPIOX_9 201 |
| 95 | #define GPIOX_10 202 |
| 96 | #define GPIOX_11 203 |
| 97 | #define GPIOX_12 204 |
| 98 | #define GPIOX_13 205 |
| 99 | #define GPIOX_14 206 |
| 100 | #define GPIOX_15 207 |
| 101 | #define GPIOX_16 208 |
| 102 | #define GPIOX_17 209 |
| 103 | #define GPIOX_18 210 |
| 104 | #define GPIOX_19 211 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 105 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 106 | /* 224:255 */ |
| 107 | #define GPIOZ_0 224 |
| 108 | #define GPIOZ_1 225 |
| 109 | #define GPIOZ_2 226 |
| 110 | #define GPIOZ_3 227 |
| 111 | #define GPIOZ_4 228 |
| 112 | #define GPIOZ_5 229 |
| 113 | #define GPIOZ_6 230 |
| 114 | #define GPIOZ_7 231 |
| 115 | #define GPIOZ_8 232 |
| 116 | #define GPIOZ_9 233 |
| 117 | #define GPIOZ_10 234 |
| 118 | #define GPIOZ_11 235 |
| 119 | #define GPIOZ_12 236 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 120 | |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 121 | /* 256:256 */ |
| 122 | #define GPIO_TEST_N 256 |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 123 | |
| 124 | #ifdef __cplusplus |
| 125 | } |
| 126 | #endif |
Zelong Dong | 733fc3b | 2023-12-28 08:55:18 +0000 | [diff] [blame] | 127 | |
bangzheng.liu | fe648a9 | 2023-10-27 13:18:41 +0800 | [diff] [blame] | 128 | #endif /* _MESON_S7D_GPIO_H_ */ |