Message ID | 1414757284-32067-2-git-send-email-human.hwang@samsung.com |
---|---|
State | Changes Requested |
Delegated to: | Minkyu Kang |
Headers | show |
On 10/31/2014 09:08 PM, Hyungwon Hwang wrote: > This patch fixes wrong GPIO information such as GPIO bank, table which is used > to convert GPIO name to index, bank base address, and etc. > > Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com> > --- > arch/arm/include/asm/arch-exynos/cpu.h | 11 +- > arch/arm/include/asm/arch-exynos/gpio.h | 232 +++++++++++++++----------------- > 2 files changed, 117 insertions(+), 126 deletions(-) > > diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h > index 7c5c4ff..da4ac6b 100644 > --- a/arch/arm/include/asm/arch-exynos/cpu.h > +++ b/arch/arm/include/asm/arch-exynos/cpu.h > @@ -139,7 +139,7 @@ > > /* EXYNOS5420 */ > #define EXYNOS5420_AUDIOSS_BASE 0x03810000 > -#define EXYNOS5420_GPIO_PART6_BASE 0x03860000 > +#define EXYNOS5420_GPIO_PART5_BASE 0x03860000 > #define EXYNOS5420_PRO_ID 0x10000000 > #define EXYNOS5420_CLOCK_BASE 0x10010000 > #define EXYNOS5420_POWER_BASE 0x10040000 > @@ -161,11 +161,10 @@ > #define EXYNOS5420_I2S_BASE 0x12D60000 > #define EXYNOS5420_PWMTIMER_BASE 0x12DD0000 > #define EXYNOS5420_SPI_ISP_BASE 0x131A0000 > -#define EXYNOS5420_GPIO_PART2_BASE 0x13400000 > -#define EXYNOS5420_GPIO_PART3_BASE 0x13400C00 > -#define EXYNOS5420_GPIO_PART4_BASE 0x13410000 > -#define EXYNOS5420_GPIO_PART5_BASE 0x14000000 > -#define EXYNOS5420_GPIO_PART1_BASE 0x14010000 > +#define EXYNOS5420_GPIO_PART1_BASE 0x13400000 > +#define EXYNOS5420_GPIO_PART2_BASE 0x13410000 > +#define EXYNOS5420_GPIO_PART3_BASE 0x14000000 > +#define EXYNOS5420_GPIO_PART4_BASE 0x14010000 > #define EXYNOS5420_MIPI_DSIM_BASE 0x14500000 > #define EXYNOS5420_DP_BASE 0x145B0000 What's wrong? It's sorted from A to Z.(GPA ~ GPZ) Best Regards, Jaehoon Chung > > diff --git a/arch/arm/include/asm/arch-exynos/gpio.h b/arch/arm/include/asm/arch-exynos/gpio.h > index 32e045a..431ae3a 100644 > --- a/arch/arm/include/asm/arch-exynos/gpio.h > +++ b/arch/arm/include/asm/arch-exynos/gpio.h > @@ -1028,83 +1028,7 @@ enum exynos5_gpio_pin { > }; > > enum exynos5420_gpio_pin { > - /* GPIO_PART1_STARTS */ > - EXYNOS5420_GPIO_A00, /* 0 */ > - EXYNOS5420_GPIO_A01, > - EXYNOS5420_GPIO_A02, > - EXYNOS5420_GPIO_A03, > - EXYNOS5420_GPIO_A04, > - EXYNOS5420_GPIO_A05, > - EXYNOS5420_GPIO_A06, > - EXYNOS5420_GPIO_A07, > - EXYNOS5420_GPIO_A10, /* 8 */ > - EXYNOS5420_GPIO_A11, > - EXYNOS5420_GPIO_A12, > - EXYNOS5420_GPIO_A13, > - EXYNOS5420_GPIO_A14, > - EXYNOS5420_GPIO_A15, > - EXYNOS5420_GPIO_A16, > - EXYNOS5420_GPIO_A17, > - EXYNOS5420_GPIO_A20, /* 16 0x10 */ > - EXYNOS5420_GPIO_A21, > - EXYNOS5420_GPIO_A22, > - EXYNOS5420_GPIO_A23, > - EXYNOS5420_GPIO_A24, > - EXYNOS5420_GPIO_A25, > - EXYNOS5420_GPIO_A26, > - EXYNOS5420_GPIO_A27, > - EXYNOS5420_GPIO_B00, /* 24 0x18 */ > - EXYNOS5420_GPIO_B01, > - EXYNOS5420_GPIO_B02, > - EXYNOS5420_GPIO_B03, > - EXYNOS5420_GPIO_B04, > - EXYNOS5420_GPIO_B05, > - EXYNOS5420_GPIO_B06, > - EXYNOS5420_GPIO_B07, > - EXYNOS5420_GPIO_B10, /* 32 0x20 */ > - EXYNOS5420_GPIO_B11, > - EXYNOS5420_GPIO_B12, > - EXYNOS5420_GPIO_B13, > - EXYNOS5420_GPIO_B14, > - EXYNOS5420_GPIO_B15, > - EXYNOS5420_GPIO_B16, > - EXYNOS5420_GPIO_B17, > - EXYNOS5420_GPIO_B20, /* 40 0x28 */ > - EXYNOS5420_GPIO_B21, > - EXYNOS5420_GPIO_B22, > - EXYNOS5420_GPIO_B23, > - EXYNOS5420_GPIO_B24, > - EXYNOS5420_GPIO_B25, > - EXYNOS5420_GPIO_B26, > - EXYNOS5420_GPIO_B27, > - EXYNOS5420_GPIO_B30, /* 48 0x30 */ > - EXYNOS5420_GPIO_B31, > - EXYNOS5420_GPIO_B32, > - EXYNOS5420_GPIO_B33, > - EXYNOS5420_GPIO_B34, > - EXYNOS5420_GPIO_B35, > - EXYNOS5420_GPIO_B36, > - EXYNOS5420_GPIO_B37, > - EXYNOS5420_GPIO_B40, /* 56 0x38 */ > - EXYNOS5420_GPIO_B41, > - EXYNOS5420_GPIO_B42, > - EXYNOS5420_GPIO_B43, > - EXYNOS5420_GPIO_B44, > - EXYNOS5420_GPIO_B45, > - EXYNOS5420_GPIO_B46, > - EXYNOS5420_GPIO_B47, > - EXYNOS5420_GPIO_H00, /* 64 0x40 */ > - EXYNOS5420_GPIO_H01, > - EXYNOS5420_GPIO_H02, > - EXYNOS5420_GPIO_H03, > - EXYNOS5420_GPIO_H04, > - EXYNOS5420_GPIO_H05, > - EXYNOS5420_GPIO_H06, > - EXYNOS5420_GPIO_H07, > - > - /* GPIO PART 2 STARTS*/ > - EXYNOS5420_GPIO_MAX_PORT_PART_1,/* 72 0x48 */ > - EXYNOS5420_GPIO_Y70 = EXYNOS5420_GPIO_MAX_PORT_PART_1, > + EXYNOS5420_GPIO_Y70, > EXYNOS5420_GPIO_Y71, > EXYNOS5420_GPIO_Y72, > EXYNOS5420_GPIO_Y73, > @@ -1112,10 +1036,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y75, > EXYNOS5420_GPIO_Y76, > EXYNOS5420_GPIO_Y77, > - > - /* GPIO PART 3 STARTS*/ > - EXYNOS5420_GPIO_MAX_PORT_PART_2,/* 80 0x50 */ > - EXYNOS5420_GPIO_X00 = EXYNOS5420_GPIO_MAX_PORT_PART_2, > + EXYNOS5420_GPIO_X00, > EXYNOS5420_GPIO_X01, > EXYNOS5420_GPIO_X02, > EXYNOS5420_GPIO_X03, > @@ -1123,7 +1044,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_X05, > EXYNOS5420_GPIO_X06, > EXYNOS5420_GPIO_X07, > - EXYNOS5420_GPIO_X10, /* 88 0x58 */ > + EXYNOS5420_GPIO_X10, > EXYNOS5420_GPIO_X11, > EXYNOS5420_GPIO_X12, > EXYNOS5420_GPIO_X13, > @@ -1131,7 +1052,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_X15, > EXYNOS5420_GPIO_X16, > EXYNOS5420_GPIO_X17, > - EXYNOS5420_GPIO_X20, /* 96 0x60 */ > + EXYNOS5420_GPIO_X20, > EXYNOS5420_GPIO_X21, > EXYNOS5420_GPIO_X22, > EXYNOS5420_GPIO_X23, > @@ -1139,7 +1060,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_X25, > EXYNOS5420_GPIO_X26, > EXYNOS5420_GPIO_X27, > - EXYNOS5420_GPIO_X30, /* 104 0x68 */ > + EXYNOS5420_GPIO_X30, > EXYNOS5420_GPIO_X31, > EXYNOS5420_GPIO_X32, > EXYNOS5420_GPIO_X33, > @@ -1148,9 +1069,8 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_X36, > EXYNOS5420_GPIO_X37, > > - /* GPIO PART 4 STARTS*/ > - EXYNOS5420_GPIO_MAX_PORT_PART_3,/* 112 0x70 */ > - EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_3, > + EXYNOS5420_GPIO_MAX_PORT_PART_1, > + EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_1, > EXYNOS5420_GPIO_C01, > EXYNOS5420_GPIO_C02, > EXYNOS5420_GPIO_C03, > @@ -1158,7 +1078,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_C05, > EXYNOS5420_GPIO_C06, > EXYNOS5420_GPIO_C07, > - EXYNOS5420_GPIO_C10, /* 120 0x78 */ > + EXYNOS5420_GPIO_C10, > EXYNOS5420_GPIO_C11, > EXYNOS5420_GPIO_C12, > EXYNOS5420_GPIO_C13, > @@ -1166,7 +1086,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_C15, > EXYNOS5420_GPIO_C16, > EXYNOS5420_GPIO_C17, > - EXYNOS5420_GPIO_C20, /* 128 0x80 */ > + EXYNOS5420_GPIO_C20, > EXYNOS5420_GPIO_C21, > EXYNOS5420_GPIO_C22, > EXYNOS5420_GPIO_C23, > @@ -1174,7 +1094,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_C25, > EXYNOS5420_GPIO_C26, > EXYNOS5420_GPIO_C27, > - EXYNOS5420_GPIO_C30, /* 136 0x88 */ > + EXYNOS5420_GPIO_C30, > EXYNOS5420_GPIO_C31, > EXYNOS5420_GPIO_C32, > EXYNOS5420_GPIO_C33, > @@ -1182,7 +1102,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_C35, > EXYNOS5420_GPIO_C36, > EXYNOS5420_GPIO_C37, > - EXYNOS5420_GPIO_C40, /* 144 0x90 */ > + EXYNOS5420_GPIO_C40, > EXYNOS5420_GPIO_C41, > EXYNOS5420_GPIO_C42, > EXYNOS5420_GPIO_C43, > @@ -1190,7 +1110,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_C45, > EXYNOS5420_GPIO_C46, > EXYNOS5420_GPIO_C47, > - EXYNOS5420_GPIO_D10, /* 152 0x98 */ > + EXYNOS5420_GPIO_D10, > EXYNOS5420_GPIO_D11, > EXYNOS5420_GPIO_D12, > EXYNOS5420_GPIO_D13, > @@ -1198,7 +1118,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_D15, > EXYNOS5420_GPIO_D16, > EXYNOS5420_GPIO_D17, > - EXYNOS5420_GPIO_Y00, /* 160 0xa0 */ > + EXYNOS5420_GPIO_Y00, > EXYNOS5420_GPIO_Y01, > EXYNOS5420_GPIO_Y02, > EXYNOS5420_GPIO_Y03, > @@ -1206,7 +1126,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y05, > EXYNOS5420_GPIO_Y06, > EXYNOS5420_GPIO_Y07, > - EXYNOS5420_GPIO_Y10, /* 168 0xa8 */ > + EXYNOS5420_GPIO_Y10, > EXYNOS5420_GPIO_Y11, > EXYNOS5420_GPIO_Y12, > EXYNOS5420_GPIO_Y13, > @@ -1214,7 +1134,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y15, > EXYNOS5420_GPIO_Y16, > EXYNOS5420_GPIO_Y17, > - EXYNOS5420_GPIO_Y20, /* 176 0xb0 */ > + EXYNOS5420_GPIO_Y20, > EXYNOS5420_GPIO_Y21, > EXYNOS5420_GPIO_Y22, > EXYNOS5420_GPIO_Y23, > @@ -1222,7 +1142,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y25, > EXYNOS5420_GPIO_Y26, > EXYNOS5420_GPIO_Y27, > - EXYNOS5420_GPIO_Y30, /* 184 0xb8 */ > + EXYNOS5420_GPIO_Y30, > EXYNOS5420_GPIO_Y31, > EXYNOS5420_GPIO_Y32, > EXYNOS5420_GPIO_Y33, > @@ -1230,7 +1150,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y35, > EXYNOS5420_GPIO_Y36, > EXYNOS5420_GPIO_Y37, > - EXYNOS5420_GPIO_Y40, /* 192 0xc0 */ > + EXYNOS5420_GPIO_Y40, > EXYNOS5420_GPIO_Y41, > EXYNOS5420_GPIO_Y42, > EXYNOS5420_GPIO_Y43, > @@ -1238,7 +1158,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y45, > EXYNOS5420_GPIO_Y46, > EXYNOS5420_GPIO_Y47, > - EXYNOS5420_GPIO_Y50, /* 200 0xc8 */ > + EXYNOS5420_GPIO_Y50, > EXYNOS5420_GPIO_Y51, > EXYNOS5420_GPIO_Y52, > EXYNOS5420_GPIO_Y53, > @@ -1246,7 +1166,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y55, > EXYNOS5420_GPIO_Y56, > EXYNOS5420_GPIO_Y57, > - EXYNOS5420_GPIO_Y60, /* 208 0xd0 */ > + EXYNOS5420_GPIO_Y60, > EXYNOS5420_GPIO_Y61, > EXYNOS5420_GPIO_Y62, > EXYNOS5420_GPIO_Y63, > @@ -1255,9 +1175,8 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_Y66, > EXYNOS5420_GPIO_Y67, > > - /* GPIO_PART5_STARTS */ > - EXYNOS5420_GPIO_MAX_PORT_PART_4,/* 216 0xd8 */ > - EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_4, > + EXYNOS5420_GPIO_MAX_PORT_PART_2, > + EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_2, > EXYNOS5420_GPIO_E01, > EXYNOS5420_GPIO_E02, > EXYNOS5420_GPIO_E03, > @@ -1265,7 +1184,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_E05, > EXYNOS5420_GPIO_E06, > EXYNOS5420_GPIO_E07, > - EXYNOS5420_GPIO_E10, /* 224 0xe0 */ > + EXYNOS5420_GPIO_E10, > EXYNOS5420_GPIO_E11, > EXYNOS5420_GPIO_E12, > EXYNOS5420_GPIO_E13, > @@ -1273,7 +1192,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_E15, > EXYNOS5420_GPIO_E16, > EXYNOS5420_GPIO_E17, > - EXYNOS5420_GPIO_F00, /* 232 0xe8 */ > + EXYNOS5420_GPIO_F00, > EXYNOS5420_GPIO_F01, > EXYNOS5420_GPIO_F02, > EXYNOS5420_GPIO_F03, > @@ -1281,7 +1200,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_F05, > EXYNOS5420_GPIO_F06, > EXYNOS5420_GPIO_F07, > - EXYNOS5420_GPIO_F10, /* 240 0xf0 */ > + EXYNOS5420_GPIO_F10, > EXYNOS5420_GPIO_F11, > EXYNOS5420_GPIO_F12, > EXYNOS5420_GPIO_F13, > @@ -1289,7 +1208,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_F15, > EXYNOS5420_GPIO_F16, > EXYNOS5420_GPIO_F17, > - EXYNOS5420_GPIO_G00, /* 248 0xf8 */ > + EXYNOS5420_GPIO_G00, > EXYNOS5420_GPIO_G01, > EXYNOS5420_GPIO_G02, > EXYNOS5420_GPIO_G03, > @@ -1297,7 +1216,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_G05, > EXYNOS5420_GPIO_G06, > EXYNOS5420_GPIO_G07, > - EXYNOS5420_GPIO_G10, /* 256 0x100 */ > + EXYNOS5420_GPIO_G10, > EXYNOS5420_GPIO_G11, > EXYNOS5420_GPIO_G12, > EXYNOS5420_GPIO_G13, > @@ -1305,7 +1224,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_G15, > EXYNOS5420_GPIO_G16, > EXYNOS5420_GPIO_G17, > - EXYNOS5420_GPIO_G20, /* 264 0x108 */ > + EXYNOS5420_GPIO_G20, > EXYNOS5420_GPIO_G21, > EXYNOS5420_GPIO_G22, > EXYNOS5420_GPIO_G23, > @@ -1313,7 +1232,7 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_G25, > EXYNOS5420_GPIO_G26, > EXYNOS5420_GPIO_G27, > - EXYNOS5420_GPIO_J40, /* 272 0x110 */ > + EXYNOS5420_GPIO_J40, > EXYNOS5420_GPIO_J41, > EXYNOS5420_GPIO_J42, > EXYNOS5420_GPIO_J43, > @@ -1322,15 +1241,89 @@ enum exynos5420_gpio_pin { > EXYNOS5420_GPIO_J46, > EXYNOS5420_GPIO_J47, > > - /* GPIO_PART6_STARTS */ > - EXYNOS5420_GPIO_MAX_PORT_PART_5,/* 280 0x118 */ > - EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_5, > + EXYNOS5420_GPIO_MAX_PORT_PART_3, > + EXYNOS5420_GPIO_A00 = EXYNOS5420_GPIO_MAX_PORT_PART_3, > + EXYNOS5420_GPIO_A01, > + EXYNOS5420_GPIO_A02, > + EXYNOS5420_GPIO_A03, > + EXYNOS5420_GPIO_A04, > + EXYNOS5420_GPIO_A05, > + EXYNOS5420_GPIO_A06, > + EXYNOS5420_GPIO_A07, > + EXYNOS5420_GPIO_A10, > + EXYNOS5420_GPIO_A11, > + EXYNOS5420_GPIO_A12, > + EXYNOS5420_GPIO_A13, > + EXYNOS5420_GPIO_A14, > + EXYNOS5420_GPIO_A15, > + EXYNOS5420_GPIO_A16, > + EXYNOS5420_GPIO_A17, > + EXYNOS5420_GPIO_A20, > + EXYNOS5420_GPIO_A21, > + EXYNOS5420_GPIO_A22, > + EXYNOS5420_GPIO_A23, > + EXYNOS5420_GPIO_A24, > + EXYNOS5420_GPIO_A25, > + EXYNOS5420_GPIO_A26, > + EXYNOS5420_GPIO_A27, > + EXYNOS5420_GPIO_B00, > + EXYNOS5420_GPIO_B01, > + EXYNOS5420_GPIO_B02, > + EXYNOS5420_GPIO_B03, > + EXYNOS5420_GPIO_B04, > + EXYNOS5420_GPIO_B05, > + EXYNOS5420_GPIO_B06, > + EXYNOS5420_GPIO_B07, > + EXYNOS5420_GPIO_B10, > + EXYNOS5420_GPIO_B11, > + EXYNOS5420_GPIO_B12, > + EXYNOS5420_GPIO_B13, > + EXYNOS5420_GPIO_B14, > + EXYNOS5420_GPIO_B15, > + EXYNOS5420_GPIO_B16, > + EXYNOS5420_GPIO_B17, > + EXYNOS5420_GPIO_B20, > + EXYNOS5420_GPIO_B21, > + EXYNOS5420_GPIO_B22, > + EXYNOS5420_GPIO_B23, > + EXYNOS5420_GPIO_B24, > + EXYNOS5420_GPIO_B25, > + EXYNOS5420_GPIO_B26, > + EXYNOS5420_GPIO_B27, > + EXYNOS5420_GPIO_B30, > + EXYNOS5420_GPIO_B31, > + EXYNOS5420_GPIO_B32, > + EXYNOS5420_GPIO_B33, > + EXYNOS5420_GPIO_B34, > + EXYNOS5420_GPIO_B35, > + EXYNOS5420_GPIO_B36, > + EXYNOS5420_GPIO_B37, > + EXYNOS5420_GPIO_B40, > + EXYNOS5420_GPIO_B41, > + EXYNOS5420_GPIO_B42, > + EXYNOS5420_GPIO_B43, > + EXYNOS5420_GPIO_B44, > + EXYNOS5420_GPIO_B45, > + EXYNOS5420_GPIO_B46, > + EXYNOS5420_GPIO_B47, > + EXYNOS5420_GPIO_H00, > + EXYNOS5420_GPIO_H01, > + EXYNOS5420_GPIO_H02, > + EXYNOS5420_GPIO_H03, > + EXYNOS5420_GPIO_H04, > + EXYNOS5420_GPIO_H05, > + EXYNOS5420_GPIO_H06, > + EXYNOS5420_GPIO_H07, > + > + EXYNOS5420_GPIO_MAX_PORT_PART_4, > + EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_4, > EXYNOS5420_GPIO_Z1, > EXYNOS5420_GPIO_Z2, > EXYNOS5420_GPIO_Z3, > EXYNOS5420_GPIO_Z4, > EXYNOS5420_GPIO_Z5, > EXYNOS5420_GPIO_Z6, > + > EXYNOS5420_GPIO_MAX_PORT > }; > > @@ -1366,14 +1359,13 @@ static struct gpio_info exynos5_gpio_data[EXYNOS5_GPIO_NUM_PARTS] = { > { EXYNOS5_GPIO_PART8_BASE, EXYNOS5_GPIO_MAX_PORT }, > }; > > -#define EXYNOS5420_GPIO_NUM_PARTS 6 > +#define EXYNOS5420_GPIO_NUM_PARTS 5 > static struct gpio_info exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = { > { EXYNOS5420_GPIO_PART1_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_1 }, > { EXYNOS5420_GPIO_PART2_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_2 }, > { EXYNOS5420_GPIO_PART3_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_3 }, > { EXYNOS5420_GPIO_PART4_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_4 }, > - { EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_5 }, > - { EXYNOS5420_GPIO_PART6_BASE, EXYNOS5420_GPIO_MAX_PORT }, > + { EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT }, > }; > > static inline struct gpio_info *get_gpio_data(void) > @@ -1486,17 +1478,17 @@ static const struct gpio_name_num_table exynos5_gpio_table[] = { > }; > > static const struct gpio_name_num_table exynos5420_gpio_table[] = { > - GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0), > - GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0), > - GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Y70, 0), > GPIO_ENTRY('x', EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_C00, 0), > GPIO_ENTRY('c', EXYNOS5420_GPIO_C00, EXYNOS5420_GPIO_D10, 0), > - GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 010), > + GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 0), > GPIO_ENTRY('y', EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_E00, 0), > GPIO_ENTRY('e', EXYNOS5420_GPIO_E00, EXYNOS5420_GPIO_F00, 0), > GPIO_ENTRY('f', EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_G00, 0), > GPIO_ENTRY('g', EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_J40, 0), > - GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_Z0, 040), > + GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_A00, 0), > + GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0), > + GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0), > + GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Z0, 0), > GPIO_ENTRY('z', EXYNOS5420_GPIO_Z0, EXYNOS5420_GPIO_MAX_PORT, 0), > { 0 } > }; >
Dear Jaehoon Chung, On Tue, 04 Nov 2014 13:51:04 +0900 Jaehoon Chung <jh80.chung@samsung.com> wrote: > On 10/31/2014 09:08 PM, Hyungwon Hwang wrote: > > This patch fixes wrong GPIO information such as GPIO bank, table which is > > used to convert GPIO name to index, bank base address, and etc. > > > > Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com> > > --- > > arch/arm/include/asm/arch-exynos/cpu.h | 11 +- > > arch/arm/include/asm/arch-exynos/gpio.h | 232 > > +++++++++++++++----------------- 2 files changed, 117 insertions(+), 126 > > deletions(-) > > > > diff --git a/arch/arm/include/asm/arch-exynos/cpu.h > > b/arch/arm/include/asm/arch-exynos/cpu.h index 7c5c4ff..da4ac6b 100644 > > --- a/arch/arm/include/asm/arch-exynos/cpu.h > > +++ b/arch/arm/include/asm/arch-exynos/cpu.h > > @@ -139,7 +139,7 @@ > > > > /* EXYNOS5420 */ > > #define EXYNOS5420_AUDIOSS_BASE 0x03810000 > > -#define EXYNOS5420_GPIO_PART6_BASE 0x03860000 > > +#define EXYNOS5420_GPIO_PART5_BASE 0x03860000 > > #define EXYNOS5420_PRO_ID 0x10000000 > > #define EXYNOS5420_CLOCK_BASE 0x10010000 > > #define EXYNOS5420_POWER_BASE 0x10040000 > > @@ -161,11 +161,10 @@ > > #define EXYNOS5420_I2S_BASE 0x12D60000 > > #define EXYNOS5420_PWMTIMER_BASE 0x12DD0000 > > #define EXYNOS5420_SPI_ISP_BASE 0x131A0000 > > -#define EXYNOS5420_GPIO_PART2_BASE 0x13400000 > > -#define EXYNOS5420_GPIO_PART3_BASE 0x13400C00 > > -#define EXYNOS5420_GPIO_PART4_BASE 0x13410000 > > -#define EXYNOS5420_GPIO_PART5_BASE 0x14000000 > > -#define EXYNOS5420_GPIO_PART1_BASE 0x14010000 > > +#define EXYNOS5420_GPIO_PART1_BASE 0x13400000 > > +#define EXYNOS5420_GPIO_PART2_BASE 0x13410000 > > +#define EXYNOS5420_GPIO_PART3_BASE 0x14000000 > > +#define EXYNOS5420_GPIO_PART4_BASE 0x14010000 > > #define EXYNOS5420_MIPI_DSIM_BASE 0x14500000 > > #define EXYNOS5420_DP_BASE 0x145B0000 > > What's wrong? It's sorted from A to Z.(GPA ~ GPZ) > As I analyzed the code (gpio_set_value() in drivers/gpio/s5p_gpio.c) the GPIO must not be sorted by alphabetically, but be done by the address of them. Isn't it? > Best Regards, > Jaehoon Chung > > > > diff --git a/arch/arm/include/asm/arch-exynos/gpio.h > > b/arch/arm/include/asm/arch-exynos/gpio.h index 32e045a..431ae3a 100644 > > --- a/arch/arm/include/asm/arch-exynos/gpio.h > > +++ b/arch/arm/include/asm/arch-exynos/gpio.h > > @@ -1028,83 +1028,7 @@ enum exynos5_gpio_pin { > > }; > > > > enum exynos5420_gpio_pin { > > - /* GPIO_PART1_STARTS */ > > - EXYNOS5420_GPIO_A00, /* 0 */ > > - EXYNOS5420_GPIO_A01, > > - EXYNOS5420_GPIO_A02, > > - EXYNOS5420_GPIO_A03, > > - EXYNOS5420_GPIO_A04, > > - EXYNOS5420_GPIO_A05, > > - EXYNOS5420_GPIO_A06, > > - EXYNOS5420_GPIO_A07, > > - EXYNOS5420_GPIO_A10, /* 8 */ > > - EXYNOS5420_GPIO_A11, > > - EXYNOS5420_GPIO_A12, > > - EXYNOS5420_GPIO_A13, > > - EXYNOS5420_GPIO_A14, > > - EXYNOS5420_GPIO_A15, > > - EXYNOS5420_GPIO_A16, > > - EXYNOS5420_GPIO_A17, > > - EXYNOS5420_GPIO_A20, /* 16 0x10 */ > > - EXYNOS5420_GPIO_A21, > > - EXYNOS5420_GPIO_A22, > > - EXYNOS5420_GPIO_A23, > > - EXYNOS5420_GPIO_A24, > > - EXYNOS5420_GPIO_A25, > > - EXYNOS5420_GPIO_A26, > > - EXYNOS5420_GPIO_A27, > > - EXYNOS5420_GPIO_B00, /* 24 0x18 */ > > - EXYNOS5420_GPIO_B01, > > - EXYNOS5420_GPIO_B02, > > - EXYNOS5420_GPIO_B03, > > - EXYNOS5420_GPIO_B04, > > - EXYNOS5420_GPIO_B05, > > - EXYNOS5420_GPIO_B06, > > - EXYNOS5420_GPIO_B07, > > - EXYNOS5420_GPIO_B10, /* 32 0x20 */ > > - EXYNOS5420_GPIO_B11, > > - EXYNOS5420_GPIO_B12, > > - EXYNOS5420_GPIO_B13, > > - EXYNOS5420_GPIO_B14, > > - EXYNOS5420_GPIO_B15, > > - EXYNOS5420_GPIO_B16, > > - EXYNOS5420_GPIO_B17, > > - EXYNOS5420_GPIO_B20, /* 40 0x28 */ > > - EXYNOS5420_GPIO_B21, > > - EXYNOS5420_GPIO_B22, > > - EXYNOS5420_GPIO_B23, > > - EXYNOS5420_GPIO_B24, > > - EXYNOS5420_GPIO_B25, > > - EXYNOS5420_GPIO_B26, > > - EXYNOS5420_GPIO_B27, > > - EXYNOS5420_GPIO_B30, /* 48 0x30 */ > > - EXYNOS5420_GPIO_B31, > > - EXYNOS5420_GPIO_B32, > > - EXYNOS5420_GPIO_B33, > > - EXYNOS5420_GPIO_B34, > > - EXYNOS5420_GPIO_B35, > > - EXYNOS5420_GPIO_B36, > > - EXYNOS5420_GPIO_B37, > > - EXYNOS5420_GPIO_B40, /* 56 0x38 */ > > - EXYNOS5420_GPIO_B41, > > - EXYNOS5420_GPIO_B42, > > - EXYNOS5420_GPIO_B43, > > - EXYNOS5420_GPIO_B44, > > - EXYNOS5420_GPIO_B45, > > - EXYNOS5420_GPIO_B46, > > - EXYNOS5420_GPIO_B47, > > - EXYNOS5420_GPIO_H00, /* 64 0x40 */ > > - EXYNOS5420_GPIO_H01, > > - EXYNOS5420_GPIO_H02, > > - EXYNOS5420_GPIO_H03, > > - EXYNOS5420_GPIO_H04, > > - EXYNOS5420_GPIO_H05, > > - EXYNOS5420_GPIO_H06, > > - EXYNOS5420_GPIO_H07, > > - > > - /* GPIO PART 2 STARTS*/ > > - EXYNOS5420_GPIO_MAX_PORT_PART_1,/* 72 0x48 */ > > - EXYNOS5420_GPIO_Y70 = EXYNOS5420_GPIO_MAX_PORT_PART_1, > > + EXYNOS5420_GPIO_Y70, > > EXYNOS5420_GPIO_Y71, > > EXYNOS5420_GPIO_Y72, > > EXYNOS5420_GPIO_Y73, > > @@ -1112,10 +1036,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y75, > > EXYNOS5420_GPIO_Y76, > > EXYNOS5420_GPIO_Y77, > > - > > - /* GPIO PART 3 STARTS*/ > > - EXYNOS5420_GPIO_MAX_PORT_PART_2,/* 80 0x50 */ > > - EXYNOS5420_GPIO_X00 = EXYNOS5420_GPIO_MAX_PORT_PART_2, > > + EXYNOS5420_GPIO_X00, > > EXYNOS5420_GPIO_X01, > > EXYNOS5420_GPIO_X02, > > EXYNOS5420_GPIO_X03, > > @@ -1123,7 +1044,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_X05, > > EXYNOS5420_GPIO_X06, > > EXYNOS5420_GPIO_X07, > > - EXYNOS5420_GPIO_X10, /* 88 0x58 */ > > + EXYNOS5420_GPIO_X10, > > EXYNOS5420_GPIO_X11, > > EXYNOS5420_GPIO_X12, > > EXYNOS5420_GPIO_X13, > > @@ -1131,7 +1052,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_X15, > > EXYNOS5420_GPIO_X16, > > EXYNOS5420_GPIO_X17, > > - EXYNOS5420_GPIO_X20, /* 96 0x60 */ > > + EXYNOS5420_GPIO_X20, > > EXYNOS5420_GPIO_X21, > > EXYNOS5420_GPIO_X22, > > EXYNOS5420_GPIO_X23, > > @@ -1139,7 +1060,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_X25, > > EXYNOS5420_GPIO_X26, > > EXYNOS5420_GPIO_X27, > > - EXYNOS5420_GPIO_X30, /* 104 0x68 */ > > + EXYNOS5420_GPIO_X30, > > EXYNOS5420_GPIO_X31, > > EXYNOS5420_GPIO_X32, > > EXYNOS5420_GPIO_X33, > > @@ -1148,9 +1069,8 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_X36, > > EXYNOS5420_GPIO_X37, > > > > - /* GPIO PART 4 STARTS*/ > > - EXYNOS5420_GPIO_MAX_PORT_PART_3,/* 112 0x70 */ > > - EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_3, > > + EXYNOS5420_GPIO_MAX_PORT_PART_1, > > + EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_1, > > EXYNOS5420_GPIO_C01, > > EXYNOS5420_GPIO_C02, > > EXYNOS5420_GPIO_C03, > > @@ -1158,7 +1078,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_C05, > > EXYNOS5420_GPIO_C06, > > EXYNOS5420_GPIO_C07, > > - EXYNOS5420_GPIO_C10, /* 120 0x78 */ > > + EXYNOS5420_GPIO_C10, > > EXYNOS5420_GPIO_C11, > > EXYNOS5420_GPIO_C12, > > EXYNOS5420_GPIO_C13, > > @@ -1166,7 +1086,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_C15, > > EXYNOS5420_GPIO_C16, > > EXYNOS5420_GPIO_C17, > > - EXYNOS5420_GPIO_C20, /* 128 0x80 */ > > + EXYNOS5420_GPIO_C20, > > EXYNOS5420_GPIO_C21, > > EXYNOS5420_GPIO_C22, > > EXYNOS5420_GPIO_C23, > > @@ -1174,7 +1094,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_C25, > > EXYNOS5420_GPIO_C26, > > EXYNOS5420_GPIO_C27, > > - EXYNOS5420_GPIO_C30, /* 136 0x88 */ > > + EXYNOS5420_GPIO_C30, > > EXYNOS5420_GPIO_C31, > > EXYNOS5420_GPIO_C32, > > EXYNOS5420_GPIO_C33, > > @@ -1182,7 +1102,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_C35, > > EXYNOS5420_GPIO_C36, > > EXYNOS5420_GPIO_C37, > > - EXYNOS5420_GPIO_C40, /* 144 0x90 */ > > + EXYNOS5420_GPIO_C40, > > EXYNOS5420_GPIO_C41, > > EXYNOS5420_GPIO_C42, > > EXYNOS5420_GPIO_C43, > > @@ -1190,7 +1110,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_C45, > > EXYNOS5420_GPIO_C46, > > EXYNOS5420_GPIO_C47, > > - EXYNOS5420_GPIO_D10, /* 152 0x98 */ > > + EXYNOS5420_GPIO_D10, > > EXYNOS5420_GPIO_D11, > > EXYNOS5420_GPIO_D12, > > EXYNOS5420_GPIO_D13, > > @@ -1198,7 +1118,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_D15, > > EXYNOS5420_GPIO_D16, > > EXYNOS5420_GPIO_D17, > > - EXYNOS5420_GPIO_Y00, /* 160 0xa0 */ > > + EXYNOS5420_GPIO_Y00, > > EXYNOS5420_GPIO_Y01, > > EXYNOS5420_GPIO_Y02, > > EXYNOS5420_GPIO_Y03, > > @@ -1206,7 +1126,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y05, > > EXYNOS5420_GPIO_Y06, > > EXYNOS5420_GPIO_Y07, > > - EXYNOS5420_GPIO_Y10, /* 168 0xa8 */ > > + EXYNOS5420_GPIO_Y10, > > EXYNOS5420_GPIO_Y11, > > EXYNOS5420_GPIO_Y12, > > EXYNOS5420_GPIO_Y13, > > @@ -1214,7 +1134,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y15, > > EXYNOS5420_GPIO_Y16, > > EXYNOS5420_GPIO_Y17, > > - EXYNOS5420_GPIO_Y20, /* 176 0xb0 */ > > + EXYNOS5420_GPIO_Y20, > > EXYNOS5420_GPIO_Y21, > > EXYNOS5420_GPIO_Y22, > > EXYNOS5420_GPIO_Y23, > > @@ -1222,7 +1142,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y25, > > EXYNOS5420_GPIO_Y26, > > EXYNOS5420_GPIO_Y27, > > - EXYNOS5420_GPIO_Y30, /* 184 0xb8 */ > > + EXYNOS5420_GPIO_Y30, > > EXYNOS5420_GPIO_Y31, > > EXYNOS5420_GPIO_Y32, > > EXYNOS5420_GPIO_Y33, > > @@ -1230,7 +1150,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y35, > > EXYNOS5420_GPIO_Y36, > > EXYNOS5420_GPIO_Y37, > > - EXYNOS5420_GPIO_Y40, /* 192 0xc0 */ > > + EXYNOS5420_GPIO_Y40, > > EXYNOS5420_GPIO_Y41, > > EXYNOS5420_GPIO_Y42, > > EXYNOS5420_GPIO_Y43, > > @@ -1238,7 +1158,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y45, > > EXYNOS5420_GPIO_Y46, > > EXYNOS5420_GPIO_Y47, > > - EXYNOS5420_GPIO_Y50, /* 200 0xc8 */ > > + EXYNOS5420_GPIO_Y50, > > EXYNOS5420_GPIO_Y51, > > EXYNOS5420_GPIO_Y52, > > EXYNOS5420_GPIO_Y53, > > @@ -1246,7 +1166,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y55, > > EXYNOS5420_GPIO_Y56, > > EXYNOS5420_GPIO_Y57, > > - EXYNOS5420_GPIO_Y60, /* 208 0xd0 */ > > + EXYNOS5420_GPIO_Y60, > > EXYNOS5420_GPIO_Y61, > > EXYNOS5420_GPIO_Y62, > > EXYNOS5420_GPIO_Y63, > > @@ -1255,9 +1175,8 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_Y66, > > EXYNOS5420_GPIO_Y67, > > > > - /* GPIO_PART5_STARTS */ > > - EXYNOS5420_GPIO_MAX_PORT_PART_4,/* 216 0xd8 */ > > - EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_4, > > + EXYNOS5420_GPIO_MAX_PORT_PART_2, > > + EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_2, > > EXYNOS5420_GPIO_E01, > > EXYNOS5420_GPIO_E02, > > EXYNOS5420_GPIO_E03, > > @@ -1265,7 +1184,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_E05, > > EXYNOS5420_GPIO_E06, > > EXYNOS5420_GPIO_E07, > > - EXYNOS5420_GPIO_E10, /* 224 0xe0 */ > > + EXYNOS5420_GPIO_E10, > > EXYNOS5420_GPIO_E11, > > EXYNOS5420_GPIO_E12, > > EXYNOS5420_GPIO_E13, > > @@ -1273,7 +1192,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_E15, > > EXYNOS5420_GPIO_E16, > > EXYNOS5420_GPIO_E17, > > - EXYNOS5420_GPIO_F00, /* 232 0xe8 */ > > + EXYNOS5420_GPIO_F00, > > EXYNOS5420_GPIO_F01, > > EXYNOS5420_GPIO_F02, > > EXYNOS5420_GPIO_F03, > > @@ -1281,7 +1200,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_F05, > > EXYNOS5420_GPIO_F06, > > EXYNOS5420_GPIO_F07, > > - EXYNOS5420_GPIO_F10, /* 240 0xf0 */ > > + EXYNOS5420_GPIO_F10, > > EXYNOS5420_GPIO_F11, > > EXYNOS5420_GPIO_F12, > > EXYNOS5420_GPIO_F13, > > @@ -1289,7 +1208,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_F15, > > EXYNOS5420_GPIO_F16, > > EXYNOS5420_GPIO_F17, > > - EXYNOS5420_GPIO_G00, /* 248 0xf8 */ > > + EXYNOS5420_GPIO_G00, > > EXYNOS5420_GPIO_G01, > > EXYNOS5420_GPIO_G02, > > EXYNOS5420_GPIO_G03, > > @@ -1297,7 +1216,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_G05, > > EXYNOS5420_GPIO_G06, > > EXYNOS5420_GPIO_G07, > > - EXYNOS5420_GPIO_G10, /* 256 0x100 */ > > + EXYNOS5420_GPIO_G10, > > EXYNOS5420_GPIO_G11, > > EXYNOS5420_GPIO_G12, > > EXYNOS5420_GPIO_G13, > > @@ -1305,7 +1224,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_G15, > > EXYNOS5420_GPIO_G16, > > EXYNOS5420_GPIO_G17, > > - EXYNOS5420_GPIO_G20, /* 264 0x108 */ > > + EXYNOS5420_GPIO_G20, > > EXYNOS5420_GPIO_G21, > > EXYNOS5420_GPIO_G22, > > EXYNOS5420_GPIO_G23, > > @@ -1313,7 +1232,7 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_G25, > > EXYNOS5420_GPIO_G26, > > EXYNOS5420_GPIO_G27, > > - EXYNOS5420_GPIO_J40, /* 272 0x110 */ > > + EXYNOS5420_GPIO_J40, > > EXYNOS5420_GPIO_J41, > > EXYNOS5420_GPIO_J42, > > EXYNOS5420_GPIO_J43, > > @@ -1322,15 +1241,89 @@ enum exynos5420_gpio_pin { > > EXYNOS5420_GPIO_J46, > > EXYNOS5420_GPIO_J47, > > > > - /* GPIO_PART6_STARTS */ > > - EXYNOS5420_GPIO_MAX_PORT_PART_5,/* 280 0x118 */ > > - EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_5, > > + EXYNOS5420_GPIO_MAX_PORT_PART_3, > > + EXYNOS5420_GPIO_A00 = EXYNOS5420_GPIO_MAX_PORT_PART_3, > > + EXYNOS5420_GPIO_A01, > > + EXYNOS5420_GPIO_A02, > > + EXYNOS5420_GPIO_A03, > > + EXYNOS5420_GPIO_A04, > > + EXYNOS5420_GPIO_A05, > > + EXYNOS5420_GPIO_A06, > > + EXYNOS5420_GPIO_A07, > > + EXYNOS5420_GPIO_A10, > > + EXYNOS5420_GPIO_A11, > > + EXYNOS5420_GPIO_A12, > > + EXYNOS5420_GPIO_A13, > > + EXYNOS5420_GPIO_A14, > > + EXYNOS5420_GPIO_A15, > > + EXYNOS5420_GPIO_A16, > > + EXYNOS5420_GPIO_A17, > > + EXYNOS5420_GPIO_A20, > > + EXYNOS5420_GPIO_A21, > > + EXYNOS5420_GPIO_A22, > > + EXYNOS5420_GPIO_A23, > > + EXYNOS5420_GPIO_A24, > > + EXYNOS5420_GPIO_A25, > > + EXYNOS5420_GPIO_A26, > > + EXYNOS5420_GPIO_A27, > > + EXYNOS5420_GPIO_B00, > > + EXYNOS5420_GPIO_B01, > > + EXYNOS5420_GPIO_B02, > > + EXYNOS5420_GPIO_B03, > > + EXYNOS5420_GPIO_B04, > > + EXYNOS5420_GPIO_B05, > > + EXYNOS5420_GPIO_B06, > > + EXYNOS5420_GPIO_B07, > > + EXYNOS5420_GPIO_B10, > > + EXYNOS5420_GPIO_B11, > > + EXYNOS5420_GPIO_B12, > > + EXYNOS5420_GPIO_B13, > > + EXYNOS5420_GPIO_B14, > > + EXYNOS5420_GPIO_B15, > > + EXYNOS5420_GPIO_B16, > > + EXYNOS5420_GPIO_B17, > > + EXYNOS5420_GPIO_B20, > > + EXYNOS5420_GPIO_B21, > > + EXYNOS5420_GPIO_B22, > > + EXYNOS5420_GPIO_B23, > > + EXYNOS5420_GPIO_B24, > > + EXYNOS5420_GPIO_B25, > > + EXYNOS5420_GPIO_B26, > > + EXYNOS5420_GPIO_B27, > > + EXYNOS5420_GPIO_B30, > > + EXYNOS5420_GPIO_B31, > > + EXYNOS5420_GPIO_B32, > > + EXYNOS5420_GPIO_B33, > > + EXYNOS5420_GPIO_B34, > > + EXYNOS5420_GPIO_B35, > > + EXYNOS5420_GPIO_B36, > > + EXYNOS5420_GPIO_B37, > > + EXYNOS5420_GPIO_B40, > > + EXYNOS5420_GPIO_B41, > > + EXYNOS5420_GPIO_B42, > > + EXYNOS5420_GPIO_B43, > > + EXYNOS5420_GPIO_B44, > > + EXYNOS5420_GPIO_B45, > > + EXYNOS5420_GPIO_B46, > > + EXYNOS5420_GPIO_B47, > > + EXYNOS5420_GPIO_H00, > > + EXYNOS5420_GPIO_H01, > > + EXYNOS5420_GPIO_H02, > > + EXYNOS5420_GPIO_H03, > > + EXYNOS5420_GPIO_H04, > > + EXYNOS5420_GPIO_H05, > > + EXYNOS5420_GPIO_H06, > > + EXYNOS5420_GPIO_H07, > > + > > + EXYNOS5420_GPIO_MAX_PORT_PART_4, > > + EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_4, > > EXYNOS5420_GPIO_Z1, > > EXYNOS5420_GPIO_Z2, > > EXYNOS5420_GPIO_Z3, > > EXYNOS5420_GPIO_Z4, > > EXYNOS5420_GPIO_Z5, > > EXYNOS5420_GPIO_Z6, > > + > > EXYNOS5420_GPIO_MAX_PORT > > }; > > > > @@ -1366,14 +1359,13 @@ static struct gpio_info > > exynos5_gpio_data[EXYNOS5_GPIO_NUM_PARTS] = { { EXYNOS5_GPIO_PART8_BASE, > > EXYNOS5_GPIO_MAX_PORT }, }; > > > > -#define EXYNOS5420_GPIO_NUM_PARTS 6 > > +#define EXYNOS5420_GPIO_NUM_PARTS 5 > > static struct gpio_info exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = { > > { EXYNOS5420_GPIO_PART1_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_1 }, > > { EXYNOS5420_GPIO_PART2_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_2 }, > > { EXYNOS5420_GPIO_PART3_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_3 }, > > { EXYNOS5420_GPIO_PART4_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_4 }, > > - { EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_5 }, > > - { EXYNOS5420_GPIO_PART6_BASE, EXYNOS5420_GPIO_MAX_PORT }, > > + { EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT }, > > }; > > > > static inline struct gpio_info *get_gpio_data(void) > > @@ -1486,17 +1478,17 @@ static const struct gpio_name_num_table > > exynos5_gpio_table[] = { }; > > > > static const struct gpio_name_num_table exynos5420_gpio_table[] = { > > - GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0), > > - GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0), > > - GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Y70, 0), > > GPIO_ENTRY('x', EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_C00, 0), > > GPIO_ENTRY('c', EXYNOS5420_GPIO_C00, EXYNOS5420_GPIO_D10, 0), > > - GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 010), > > + GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 0), > > GPIO_ENTRY('y', EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_E00, 0), > > GPIO_ENTRY('e', EXYNOS5420_GPIO_E00, EXYNOS5420_GPIO_F00, 0), > > GPIO_ENTRY('f', EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_G00, 0), > > GPIO_ENTRY('g', EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_J40, 0), > > - GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_Z0, 040), > > + GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_A00, 0), > > + GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0), > > + GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0), > > + GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Z0, 0), > > GPIO_ENTRY('z', EXYNOS5420_GPIO_Z0, EXYNOS5420_GPIO_MAX_PORT, 0), > > { 0 } > > }; > > > Best regards, Hyungwon Hwang
diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h index 7c5c4ff..da4ac6b 100644 --- a/arch/arm/include/asm/arch-exynos/cpu.h +++ b/arch/arm/include/asm/arch-exynos/cpu.h @@ -139,7 +139,7 @@ /* EXYNOS5420 */ #define EXYNOS5420_AUDIOSS_BASE 0x03810000 -#define EXYNOS5420_GPIO_PART6_BASE 0x03860000 +#define EXYNOS5420_GPIO_PART5_BASE 0x03860000 #define EXYNOS5420_PRO_ID 0x10000000 #define EXYNOS5420_CLOCK_BASE 0x10010000 #define EXYNOS5420_POWER_BASE 0x10040000 @@ -161,11 +161,10 @@ #define EXYNOS5420_I2S_BASE 0x12D60000 #define EXYNOS5420_PWMTIMER_BASE 0x12DD0000 #define EXYNOS5420_SPI_ISP_BASE 0x131A0000 -#define EXYNOS5420_GPIO_PART2_BASE 0x13400000 -#define EXYNOS5420_GPIO_PART3_BASE 0x13400C00 -#define EXYNOS5420_GPIO_PART4_BASE 0x13410000 -#define EXYNOS5420_GPIO_PART5_BASE 0x14000000 -#define EXYNOS5420_GPIO_PART1_BASE 0x14010000 +#define EXYNOS5420_GPIO_PART1_BASE 0x13400000 +#define EXYNOS5420_GPIO_PART2_BASE 0x13410000 +#define EXYNOS5420_GPIO_PART3_BASE 0x14000000 +#define EXYNOS5420_GPIO_PART4_BASE 0x14010000 #define EXYNOS5420_MIPI_DSIM_BASE 0x14500000 #define EXYNOS5420_DP_BASE 0x145B0000 diff --git a/arch/arm/include/asm/arch-exynos/gpio.h b/arch/arm/include/asm/arch-exynos/gpio.h index 32e045a..431ae3a 100644 --- a/arch/arm/include/asm/arch-exynos/gpio.h +++ b/arch/arm/include/asm/arch-exynos/gpio.h @@ -1028,83 +1028,7 @@ enum exynos5_gpio_pin { }; enum exynos5420_gpio_pin { - /* GPIO_PART1_STARTS */ - EXYNOS5420_GPIO_A00, /* 0 */ - EXYNOS5420_GPIO_A01, - EXYNOS5420_GPIO_A02, - EXYNOS5420_GPIO_A03, - EXYNOS5420_GPIO_A04, - EXYNOS5420_GPIO_A05, - EXYNOS5420_GPIO_A06, - EXYNOS5420_GPIO_A07, - EXYNOS5420_GPIO_A10, /* 8 */ - EXYNOS5420_GPIO_A11, - EXYNOS5420_GPIO_A12, - EXYNOS5420_GPIO_A13, - EXYNOS5420_GPIO_A14, - EXYNOS5420_GPIO_A15, - EXYNOS5420_GPIO_A16, - EXYNOS5420_GPIO_A17, - EXYNOS5420_GPIO_A20, /* 16 0x10 */ - EXYNOS5420_GPIO_A21, - EXYNOS5420_GPIO_A22, - EXYNOS5420_GPIO_A23, - EXYNOS5420_GPIO_A24, - EXYNOS5420_GPIO_A25, - EXYNOS5420_GPIO_A26, - EXYNOS5420_GPIO_A27, - EXYNOS5420_GPIO_B00, /* 24 0x18 */ - EXYNOS5420_GPIO_B01, - EXYNOS5420_GPIO_B02, - EXYNOS5420_GPIO_B03, - EXYNOS5420_GPIO_B04, - EXYNOS5420_GPIO_B05, - EXYNOS5420_GPIO_B06, - EXYNOS5420_GPIO_B07, - EXYNOS5420_GPIO_B10, /* 32 0x20 */ - EXYNOS5420_GPIO_B11, - EXYNOS5420_GPIO_B12, - EXYNOS5420_GPIO_B13, - EXYNOS5420_GPIO_B14, - EXYNOS5420_GPIO_B15, - EXYNOS5420_GPIO_B16, - EXYNOS5420_GPIO_B17, - EXYNOS5420_GPIO_B20, /* 40 0x28 */ - EXYNOS5420_GPIO_B21, - EXYNOS5420_GPIO_B22, - EXYNOS5420_GPIO_B23, - EXYNOS5420_GPIO_B24, - EXYNOS5420_GPIO_B25, - EXYNOS5420_GPIO_B26, - EXYNOS5420_GPIO_B27, - EXYNOS5420_GPIO_B30, /* 48 0x30 */ - EXYNOS5420_GPIO_B31, - EXYNOS5420_GPIO_B32, - EXYNOS5420_GPIO_B33, - EXYNOS5420_GPIO_B34, - EXYNOS5420_GPIO_B35, - EXYNOS5420_GPIO_B36, - EXYNOS5420_GPIO_B37, - EXYNOS5420_GPIO_B40, /* 56 0x38 */ - EXYNOS5420_GPIO_B41, - EXYNOS5420_GPIO_B42, - EXYNOS5420_GPIO_B43, - EXYNOS5420_GPIO_B44, - EXYNOS5420_GPIO_B45, - EXYNOS5420_GPIO_B46, - EXYNOS5420_GPIO_B47, - EXYNOS5420_GPIO_H00, /* 64 0x40 */ - EXYNOS5420_GPIO_H01, - EXYNOS5420_GPIO_H02, - EXYNOS5420_GPIO_H03, - EXYNOS5420_GPIO_H04, - EXYNOS5420_GPIO_H05, - EXYNOS5420_GPIO_H06, - EXYNOS5420_GPIO_H07, - - /* GPIO PART 2 STARTS*/ - EXYNOS5420_GPIO_MAX_PORT_PART_1,/* 72 0x48 */ - EXYNOS5420_GPIO_Y70 = EXYNOS5420_GPIO_MAX_PORT_PART_1, + EXYNOS5420_GPIO_Y70, EXYNOS5420_GPIO_Y71, EXYNOS5420_GPIO_Y72, EXYNOS5420_GPIO_Y73, @@ -1112,10 +1036,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y75, EXYNOS5420_GPIO_Y76, EXYNOS5420_GPIO_Y77, - - /* GPIO PART 3 STARTS*/ - EXYNOS5420_GPIO_MAX_PORT_PART_2,/* 80 0x50 */ - EXYNOS5420_GPIO_X00 = EXYNOS5420_GPIO_MAX_PORT_PART_2, + EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_X01, EXYNOS5420_GPIO_X02, EXYNOS5420_GPIO_X03, @@ -1123,7 +1044,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_X05, EXYNOS5420_GPIO_X06, EXYNOS5420_GPIO_X07, - EXYNOS5420_GPIO_X10, /* 88 0x58 */ + EXYNOS5420_GPIO_X10, EXYNOS5420_GPIO_X11, EXYNOS5420_GPIO_X12, EXYNOS5420_GPIO_X13, @@ -1131,7 +1052,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_X15, EXYNOS5420_GPIO_X16, EXYNOS5420_GPIO_X17, - EXYNOS5420_GPIO_X20, /* 96 0x60 */ + EXYNOS5420_GPIO_X20, EXYNOS5420_GPIO_X21, EXYNOS5420_GPIO_X22, EXYNOS5420_GPIO_X23, @@ -1139,7 +1060,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_X25, EXYNOS5420_GPIO_X26, EXYNOS5420_GPIO_X27, - EXYNOS5420_GPIO_X30, /* 104 0x68 */ + EXYNOS5420_GPIO_X30, EXYNOS5420_GPIO_X31, EXYNOS5420_GPIO_X32, EXYNOS5420_GPIO_X33, @@ -1148,9 +1069,8 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_X36, EXYNOS5420_GPIO_X37, - /* GPIO PART 4 STARTS*/ - EXYNOS5420_GPIO_MAX_PORT_PART_3,/* 112 0x70 */ - EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_3, + EXYNOS5420_GPIO_MAX_PORT_PART_1, + EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_1, EXYNOS5420_GPIO_C01, EXYNOS5420_GPIO_C02, EXYNOS5420_GPIO_C03, @@ -1158,7 +1078,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_C05, EXYNOS5420_GPIO_C06, EXYNOS5420_GPIO_C07, - EXYNOS5420_GPIO_C10, /* 120 0x78 */ + EXYNOS5420_GPIO_C10, EXYNOS5420_GPIO_C11, EXYNOS5420_GPIO_C12, EXYNOS5420_GPIO_C13, @@ -1166,7 +1086,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_C15, EXYNOS5420_GPIO_C16, EXYNOS5420_GPIO_C17, - EXYNOS5420_GPIO_C20, /* 128 0x80 */ + EXYNOS5420_GPIO_C20, EXYNOS5420_GPIO_C21, EXYNOS5420_GPIO_C22, EXYNOS5420_GPIO_C23, @@ -1174,7 +1094,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_C25, EXYNOS5420_GPIO_C26, EXYNOS5420_GPIO_C27, - EXYNOS5420_GPIO_C30, /* 136 0x88 */ + EXYNOS5420_GPIO_C30, EXYNOS5420_GPIO_C31, EXYNOS5420_GPIO_C32, EXYNOS5420_GPIO_C33, @@ -1182,7 +1102,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_C35, EXYNOS5420_GPIO_C36, EXYNOS5420_GPIO_C37, - EXYNOS5420_GPIO_C40, /* 144 0x90 */ + EXYNOS5420_GPIO_C40, EXYNOS5420_GPIO_C41, EXYNOS5420_GPIO_C42, EXYNOS5420_GPIO_C43, @@ -1190,7 +1110,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_C45, EXYNOS5420_GPIO_C46, EXYNOS5420_GPIO_C47, - EXYNOS5420_GPIO_D10, /* 152 0x98 */ + EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_D11, EXYNOS5420_GPIO_D12, EXYNOS5420_GPIO_D13, @@ -1198,7 +1118,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_D15, EXYNOS5420_GPIO_D16, EXYNOS5420_GPIO_D17, - EXYNOS5420_GPIO_Y00, /* 160 0xa0 */ + EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_Y01, EXYNOS5420_GPIO_Y02, EXYNOS5420_GPIO_Y03, @@ -1206,7 +1126,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y05, EXYNOS5420_GPIO_Y06, EXYNOS5420_GPIO_Y07, - EXYNOS5420_GPIO_Y10, /* 168 0xa8 */ + EXYNOS5420_GPIO_Y10, EXYNOS5420_GPIO_Y11, EXYNOS5420_GPIO_Y12, EXYNOS5420_GPIO_Y13, @@ -1214,7 +1134,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y15, EXYNOS5420_GPIO_Y16, EXYNOS5420_GPIO_Y17, - EXYNOS5420_GPIO_Y20, /* 176 0xb0 */ + EXYNOS5420_GPIO_Y20, EXYNOS5420_GPIO_Y21, EXYNOS5420_GPIO_Y22, EXYNOS5420_GPIO_Y23, @@ -1222,7 +1142,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y25, EXYNOS5420_GPIO_Y26, EXYNOS5420_GPIO_Y27, - EXYNOS5420_GPIO_Y30, /* 184 0xb8 */ + EXYNOS5420_GPIO_Y30, EXYNOS5420_GPIO_Y31, EXYNOS5420_GPIO_Y32, EXYNOS5420_GPIO_Y33, @@ -1230,7 +1150,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y35, EXYNOS5420_GPIO_Y36, EXYNOS5420_GPIO_Y37, - EXYNOS5420_GPIO_Y40, /* 192 0xc0 */ + EXYNOS5420_GPIO_Y40, EXYNOS5420_GPIO_Y41, EXYNOS5420_GPIO_Y42, EXYNOS5420_GPIO_Y43, @@ -1238,7 +1158,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y45, EXYNOS5420_GPIO_Y46, EXYNOS5420_GPIO_Y47, - EXYNOS5420_GPIO_Y50, /* 200 0xc8 */ + EXYNOS5420_GPIO_Y50, EXYNOS5420_GPIO_Y51, EXYNOS5420_GPIO_Y52, EXYNOS5420_GPIO_Y53, @@ -1246,7 +1166,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y55, EXYNOS5420_GPIO_Y56, EXYNOS5420_GPIO_Y57, - EXYNOS5420_GPIO_Y60, /* 208 0xd0 */ + EXYNOS5420_GPIO_Y60, EXYNOS5420_GPIO_Y61, EXYNOS5420_GPIO_Y62, EXYNOS5420_GPIO_Y63, @@ -1255,9 +1175,8 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_Y66, EXYNOS5420_GPIO_Y67, - /* GPIO_PART5_STARTS */ - EXYNOS5420_GPIO_MAX_PORT_PART_4,/* 216 0xd8 */ - EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_4, + EXYNOS5420_GPIO_MAX_PORT_PART_2, + EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_2, EXYNOS5420_GPIO_E01, EXYNOS5420_GPIO_E02, EXYNOS5420_GPIO_E03, @@ -1265,7 +1184,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_E05, EXYNOS5420_GPIO_E06, EXYNOS5420_GPIO_E07, - EXYNOS5420_GPIO_E10, /* 224 0xe0 */ + EXYNOS5420_GPIO_E10, EXYNOS5420_GPIO_E11, EXYNOS5420_GPIO_E12, EXYNOS5420_GPIO_E13, @@ -1273,7 +1192,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_E15, EXYNOS5420_GPIO_E16, EXYNOS5420_GPIO_E17, - EXYNOS5420_GPIO_F00, /* 232 0xe8 */ + EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_F01, EXYNOS5420_GPIO_F02, EXYNOS5420_GPIO_F03, @@ -1281,7 +1200,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_F05, EXYNOS5420_GPIO_F06, EXYNOS5420_GPIO_F07, - EXYNOS5420_GPIO_F10, /* 240 0xf0 */ + EXYNOS5420_GPIO_F10, EXYNOS5420_GPIO_F11, EXYNOS5420_GPIO_F12, EXYNOS5420_GPIO_F13, @@ -1289,7 +1208,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_F15, EXYNOS5420_GPIO_F16, EXYNOS5420_GPIO_F17, - EXYNOS5420_GPIO_G00, /* 248 0xf8 */ + EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_G01, EXYNOS5420_GPIO_G02, EXYNOS5420_GPIO_G03, @@ -1297,7 +1216,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_G05, EXYNOS5420_GPIO_G06, EXYNOS5420_GPIO_G07, - EXYNOS5420_GPIO_G10, /* 256 0x100 */ + EXYNOS5420_GPIO_G10, EXYNOS5420_GPIO_G11, EXYNOS5420_GPIO_G12, EXYNOS5420_GPIO_G13, @@ -1305,7 +1224,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_G15, EXYNOS5420_GPIO_G16, EXYNOS5420_GPIO_G17, - EXYNOS5420_GPIO_G20, /* 264 0x108 */ + EXYNOS5420_GPIO_G20, EXYNOS5420_GPIO_G21, EXYNOS5420_GPIO_G22, EXYNOS5420_GPIO_G23, @@ -1313,7 +1232,7 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_G25, EXYNOS5420_GPIO_G26, EXYNOS5420_GPIO_G27, - EXYNOS5420_GPIO_J40, /* 272 0x110 */ + EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_J41, EXYNOS5420_GPIO_J42, EXYNOS5420_GPIO_J43, @@ -1322,15 +1241,89 @@ enum exynos5420_gpio_pin { EXYNOS5420_GPIO_J46, EXYNOS5420_GPIO_J47, - /* GPIO_PART6_STARTS */ - EXYNOS5420_GPIO_MAX_PORT_PART_5,/* 280 0x118 */ - EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_5, + EXYNOS5420_GPIO_MAX_PORT_PART_3, + EXYNOS5420_GPIO_A00 = EXYNOS5420_GPIO_MAX_PORT_PART_3, + EXYNOS5420_GPIO_A01, + EXYNOS5420_GPIO_A02, + EXYNOS5420_GPIO_A03, + EXYNOS5420_GPIO_A04, + EXYNOS5420_GPIO_A05, + EXYNOS5420_GPIO_A06, + EXYNOS5420_GPIO_A07, + EXYNOS5420_GPIO_A10, + EXYNOS5420_GPIO_A11, + EXYNOS5420_GPIO_A12, + EXYNOS5420_GPIO_A13, + EXYNOS5420_GPIO_A14, + EXYNOS5420_GPIO_A15, + EXYNOS5420_GPIO_A16, + EXYNOS5420_GPIO_A17, + EXYNOS5420_GPIO_A20, + EXYNOS5420_GPIO_A21, + EXYNOS5420_GPIO_A22, + EXYNOS5420_GPIO_A23, + EXYNOS5420_GPIO_A24, + EXYNOS5420_GPIO_A25, + EXYNOS5420_GPIO_A26, + EXYNOS5420_GPIO_A27, + EXYNOS5420_GPIO_B00, + EXYNOS5420_GPIO_B01, + EXYNOS5420_GPIO_B02, + EXYNOS5420_GPIO_B03, + EXYNOS5420_GPIO_B04, + EXYNOS5420_GPIO_B05, + EXYNOS5420_GPIO_B06, + EXYNOS5420_GPIO_B07, + EXYNOS5420_GPIO_B10, + EXYNOS5420_GPIO_B11, + EXYNOS5420_GPIO_B12, + EXYNOS5420_GPIO_B13, + EXYNOS5420_GPIO_B14, + EXYNOS5420_GPIO_B15, + EXYNOS5420_GPIO_B16, + EXYNOS5420_GPIO_B17, + EXYNOS5420_GPIO_B20, + EXYNOS5420_GPIO_B21, + EXYNOS5420_GPIO_B22, + EXYNOS5420_GPIO_B23, + EXYNOS5420_GPIO_B24, + EXYNOS5420_GPIO_B25, + EXYNOS5420_GPIO_B26, + EXYNOS5420_GPIO_B27, + EXYNOS5420_GPIO_B30, + EXYNOS5420_GPIO_B31, + EXYNOS5420_GPIO_B32, + EXYNOS5420_GPIO_B33, + EXYNOS5420_GPIO_B34, + EXYNOS5420_GPIO_B35, + EXYNOS5420_GPIO_B36, + EXYNOS5420_GPIO_B37, + EXYNOS5420_GPIO_B40, + EXYNOS5420_GPIO_B41, + EXYNOS5420_GPIO_B42, + EXYNOS5420_GPIO_B43, + EXYNOS5420_GPIO_B44, + EXYNOS5420_GPIO_B45, + EXYNOS5420_GPIO_B46, + EXYNOS5420_GPIO_B47, + EXYNOS5420_GPIO_H00, + EXYNOS5420_GPIO_H01, + EXYNOS5420_GPIO_H02, + EXYNOS5420_GPIO_H03, + EXYNOS5420_GPIO_H04, + EXYNOS5420_GPIO_H05, + EXYNOS5420_GPIO_H06, + EXYNOS5420_GPIO_H07, + + EXYNOS5420_GPIO_MAX_PORT_PART_4, + EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_4, EXYNOS5420_GPIO_Z1, EXYNOS5420_GPIO_Z2, EXYNOS5420_GPIO_Z3, EXYNOS5420_GPIO_Z4, EXYNOS5420_GPIO_Z5, EXYNOS5420_GPIO_Z6, + EXYNOS5420_GPIO_MAX_PORT }; @@ -1366,14 +1359,13 @@ static struct gpio_info exynos5_gpio_data[EXYNOS5_GPIO_NUM_PARTS] = { { EXYNOS5_GPIO_PART8_BASE, EXYNOS5_GPIO_MAX_PORT }, }; -#define EXYNOS5420_GPIO_NUM_PARTS 6 +#define EXYNOS5420_GPIO_NUM_PARTS 5 static struct gpio_info exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = { { EXYNOS5420_GPIO_PART1_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_1 }, { EXYNOS5420_GPIO_PART2_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_2 }, { EXYNOS5420_GPIO_PART3_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_3 }, { EXYNOS5420_GPIO_PART4_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_4 }, - { EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_5 }, - { EXYNOS5420_GPIO_PART6_BASE, EXYNOS5420_GPIO_MAX_PORT }, + { EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT }, }; static inline struct gpio_info *get_gpio_data(void) @@ -1486,17 +1478,17 @@ static const struct gpio_name_num_table exynos5_gpio_table[] = { }; static const struct gpio_name_num_table exynos5420_gpio_table[] = { - GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0), - GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0), - GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Y70, 0), GPIO_ENTRY('x', EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_C00, 0), GPIO_ENTRY('c', EXYNOS5420_GPIO_C00, EXYNOS5420_GPIO_D10, 0), - GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 010), + GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 0), GPIO_ENTRY('y', EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_E00, 0), GPIO_ENTRY('e', EXYNOS5420_GPIO_E00, EXYNOS5420_GPIO_F00, 0), GPIO_ENTRY('f', EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_G00, 0), GPIO_ENTRY('g', EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_J40, 0), - GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_Z0, 040), + GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_A00, 0), + GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0), + GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0), + GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Z0, 0), GPIO_ENTRY('z', EXYNOS5420_GPIO_Z0, EXYNOS5420_GPIO_MAX_PORT, 0), { 0 } };
This patch fixes wrong GPIO information such as GPIO bank, table which is used to convert GPIO name to index, bank base address, and etc. Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com> --- arch/arm/include/asm/arch-exynos/cpu.h | 11 +- arch/arm/include/asm/arch-exynos/gpio.h | 232 +++++++++++++++----------------- 2 files changed, 117 insertions(+), 126 deletions(-)