liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 1 | /** |
| 2 | * \file gpio-define.h |
| 3 | * \brief A Documented file. |
| 4 | * |
| 5 | * Detailed description |
| 6 | * \Author: Sniper <js.wang@mobiletek.cn> |
| 7 | * \Version: 1.0.0 |
| 8 | * \Date: 2022-04-26 |
| 9 | */ |
| 10 | |
| 11 | #ifndef __GPIO_DEFINE_H__ |
| 12 | #define __GPIO_DEFINE_H__ |
| 13 | |
| 14 | /* |
| 15 | 4组GPIO共128个GPIO,分别从GPIO_0到GPIO_127 |
| 16 | GPIO22位于0xd4019000这一组的BIT22 |
| 17 | |
| 18 | GPIO0_BASE 0xD4019000 |
| 19 | GPIO1_BASE 0xD4019004 |
| 20 | GPIO2_BASE 0xD4019008 |
| 21 | GPIO3_BASE 0xD4019100 |
| 22 | */ |
| 23 | /* |
| 24 | MMC_CMD GPIO_41 |
| 25 | MMC_DATA0 GPIO_40 |
| 26 | MMC_DATA1 GPIO_39 |
| 27 | MMC_DATA2 GPIO_38 |
| 28 | MMC_DATA3 GPIO_37 |
| 29 | |
| 30 | SD_DET GPIO_43 |
| 31 | WLAN_DAT3 GPIO_48 |
| 32 | |
| 33 | |
| 34 | */ |
| 35 | #define GPIO_FUNC_MMC1_DAT3 0xD401E094 |
| 36 | #define GPIO_FUNC_MMC1_DAT2 0xD401E098 |
| 37 | #define GPIO_FUNC_MMC1_DAT1 0xD401E09C |
| 38 | #define GPIO_FUNC_MMC1_DAT0 0xD401E0A0 |
| 39 | #define GPIO_FUNC_MMC1_CMD 0xD401E0A4 |
| 40 | #define GPIO_FUNC_MMC1_CLK 0xD401E0A8 |
| 41 | #define GPIO_FUNC_MMC1_CD 0xD401E0AC |
| 42 | #define GPIO_FUNC_USB_ID 0xD401E0B0 |
| 43 | #define GPIO_FUNC_PRI_TDI 0xD401E0B4 |
| 44 | #define GPIO_FUNC_PRI_TMS 0xD401E0B8 |
| 45 | #define GPIO_FUNC_PRI_TCK 0xD401E0BC |
| 46 | #define GPIO_FUNC_PRI_TDO 0xD401E0C0 |
| 47 | #define GPIO_FUNC_QSPI_VMODE_GPIO 0xD401E0C4 |
| 48 | #define GPIO_FUNC_VBUS_DRV 0xD401E0C8 |
| 49 | #define GPIO_FUNC_CLK_REQ 0xD401E0CC |
| 50 | #define GPIO_FUNC_VCXO_REQ 0xD401E0D4 |
| 51 | #define GPIO_FUNC_VCXO_OUT 0xD401E0D8 |
| 52 | #define GPIO_FUNC_GPIO_00 0xD401E0DC |
| 53 | #define GPIO_FUNC_GPIO_01 0xD401E0E0 |
| 54 | #define GPIO_FUNC_GPIO_02 0xD401E0E4 |
| 55 | #define GPIO_FUNC_GPIO_03 0xD401E0E8 |
| 56 | #define GPIO_FUNC_GPIO_04 0xD401E0EC |
| 57 | #define GPIO_FUNC_GPIO_05 0xD401E0F0 |
| 58 | #define GPIO_FUNC_GPIO_06 0xD401E0F4 |
| 59 | #define GPIO_FUNC_GPIO_07 0xD401E0F8 |
| 60 | #define GPIO_FUNC_GPIO_08 0xD401E0FC |
| 61 | #define GPIO_FUNC_GPIO_09 0xD401E100 |
| 62 | #define GPIO_FUNC_GPIO_10 0xD401E104 |
| 63 | #define GPIO_FUNC_GPIO_11 0xD401E108 |
| 64 | #define GPIO_FUNC_GPIO_12 0xD401E10C |
| 65 | #define GPIO_FUNC_GPIO_13 0xD401E110 |
| 66 | #define GPIO_FUNC_GPIO_14 0xD401E114 |
| 67 | #define GPIO_FUNC_GPIO_15 0xD401E118 |
| 68 | #define GPIO_FUNC_GPIO_16 0xD401E11C |
| 69 | #define GPIO_FUNC_GPIO_17 0xD401E120 |
| 70 | #define GPIO_FUNC_GPIO_18 0xD401E124 |
| 71 | #define GPIO_FUNC_GPIO_19 0xD401E128 |
| 72 | #define GPIO_FUNC_GPIO_20 0xD401E12C |
| 73 | #define GPIO_FUNC_GPIO_21 0xD401E130 |
| 74 | #define GPIO_FUNC_GPIO_22 0xD401E134 |
| 75 | #define GPIO_FUNC_GPIO_23 0xD401E138 |
| 76 | #define GPIO_FUNC_GPIO_24 0xD401E13C |
| 77 | #define GPIO_FUNC_GPIO_25 0xD401E140 |
| 78 | #define GPIO_FUNC_GPIO_26 0xD401E144 |
| 79 | #define GPIO_FUNC_GPIO_27 0xD401E148 |
| 80 | #define GPIO_FUNC_GPIO_28 0xD401E14C |
| 81 | #define GPIO_FUNC_GPIO_29 0xD401E150 |
| 82 | #define GPIO_FUNC_GPIO_30 0xD401E154 |
| 83 | #define GPIO_FUNC_GPIO_31 0xD401E158 |
| 84 | #define GPIO_FUNC_GPIO_32 0xD401E15C |
| 85 | #define GPIO_FUNC_GPIO_33 0xD401E160 |
| 86 | #define GPIO_FUNC_GPIO_34 0xD401E164 |
| 87 | #define GPIO_FUNC_GPIO_35 0xD401E168 |
| 88 | #define GPIO_FUNC_GPIO_36 0xD401E16C |
| 89 | #define GPIO_FUNC_GPIO_49 0xD401E1A0 |
| 90 | #define GPIO_FUNC_GPIO_50 0xD401E1A4 |
| 91 | #define GPIO_FUNC_GPIO_51 0xD401E1A8 |
| 92 | #define GPIO_FUNC_GPIO_52 0xD401E1AC |
| 93 | #define GPIO_FUNC_GPIO_53 0xD401E1B0 |
| 94 | #define GPIO_FUNC_GPIO_54 0xD401E1B4 |
| 95 | #define GPIO_FUNC_DVL_0 0xD401E2B4 |
| 96 | #define GPIO_FUNC_DVL_1 0xD401E2B8 |
| 97 | #define GPIO_FUNC_GPIO_69 0xD401E2BC |
| 98 | #define GPIO_FUNC_GPIO_70 0xD401E2C0 |
| 99 | #define GPIO_FUNC_QSPI_DAT3 0xD401E2C4 |
| 100 | #define GPIO_FUNC_QSPI_DAT2 0xD401E2C8 |
| 101 | #define GPIO_FUNC_QSPI_DAT1 0xD401E2CC |
| 102 | #define GPIO_FUNC_QSPI_DAT0 0xD401E2D0 |
| 103 | #define GPIO_FUNC_QSPI_CLK 0xD401E2D4 |
| 104 | #define GPIO_FUNC_QSPI_CS1 0xD401E2D8 |
| 105 | #define GPIO_FUNC_GPIO_77 0xD401E2DC |
| 106 | #define GPIO_FUNC_GPIO_78 0xD401E2E0 |
| 107 | #define GPIO_FUNC_GPIO_79 0xD401E2E4 |
| 108 | #define GPIO_FUNC_GPIO_80 0xD401E2E8 |
| 109 | #define GPIO_FUNC_SDIO_DAT3 0xD401E2EC |
| 110 | #define GPIO_FUNC_SDIO_DAT2 0xD401E2F0 |
| 111 | #define GPIO_FUNC_SDIO_DAT1 0xD401E2F4 |
| 112 | #define GPIO_FUNC_SDIO_DAT0 0xD401E2F8 |
| 113 | #define GPIO_FUNC_SDIO_CMD 0xD401E2FC |
| 114 | #define GPIO_FUNC_SDIO_CLK 0xD401E300 |
| 115 | #define GPIO_FUNC_GPIO_60 0xD401E304 |
| 116 | #define GPIO_FUNC_USIM_UCLK 0xD401E320 |
| 117 | #define GPIO_FUNC_USIM_UIO 0xD401E324 |
| 118 | #define GPIO_FUNC_USIM_URSTn 0xD401E328 |
| 119 | |
| 120 | |
| 121 | #define GPIO0_BASE 0xD4019000 |
| 122 | #define GPIO1_BASE 0xD4019004 |
| 123 | #define GPIO2_BASE 0xD4019008 |
| 124 | #define GPIO3_BASE 0xD4019100 |
| 125 | |
| 126 | struct gpio_register_function |
| 127 | { |
| 128 | int reg; |
| 129 | int func_gpio; // 第 [func_gpio] 功能为 GPIO |
| 130 | }; |
| 131 | |
| 132 | |
| 133 | #endif /*__GPIO_DEFINE_H__*/ |